代码之家  ›  专栏  ›  技术社区  ›  rioki

googleappengine中的身份验证:App.yaml与python代码

  •  4
  • rioki  · 技术社区  · 16 年前

    我正在编写一个使用GAE的小应用程序。我的部分应用程序仅供管理使用。我有两个选择 login: admin google.appengine.api.users.is_current_user_admin()

    哪种解决方案更好?

    我不确定我的断言是否正确。

    2 回复  |  直到 16 年前
        1
  •  13
  •   Drew Sears    16 年前

    我想说你的断言是正确的。假设您的app.yaml中有以下内容:

    - url: /admin/.*
      script: admin.py
      login: admin
    

    如果你想要所有的东西 admin.py 要限制为管理员,上面的配置应该更有效:您可以使未经授权的请求失败,而不会出现问题 管理员.py .

    检查 users.is_current_user_admin() 当您想要定义更细粒度的逻辑和行为时,它非常有用。也许您有一个处理程序,无论用户是管理员、非管理员还是未登录,都应该可用,您只需检查他们的当前状态,就可以返回相应的HTML。

        2
  •  2
  •   David Underhill    16 年前

    如果处理程序只能由管理员访问,那么app.yaml无疑是保护这些处理程序公开的页面的最简单方法。

    google.appengine.api.users.is_current_user_admin() ).