我有一个静态文件,我不想公开。有没有办法限制app.yaml的访问权限,以便它只能由自己的域加载?
基于web2py的解决方案也受到欢迎,因为我在GAE之上使用它。
谢谢!
答案 0 :(得分:5)
您可以使用“login:required”限制对其进行访问,以便使用Google帐户登录,或者“login:admin”将其限制为仅限管理员使用。如果您只关心滥用行为,则可能需要查看DOS API。
答案 1 :(得分:1)
我假设您要为此使用web2py身份验证。你必须遵循一些简单的规则。 1)app / static中的文件是公共文件。 2)您要进行身份验证的文件在app / private中。然后创建自己的web2py动作来服务私有/
的内容@auth.requires()
def private():
import os
file = os.path.join(request.folder, 'private', request.args(0))
return response.stream(open(file,'rb'))
如果要使用基于角色的访问控制,则需要将文件名存储在数据库表中,并将auth.add_permission存储到记录组中。
如果您向web2py邮件列表提问,您会得到更快的回复和更有能力的回复。