Google App Engine上的域限制身份验证

时间:2013-10-21 12:51:50

标签: python google-app-engine authentication

我最近部署了一个GAE应用程序(即http://www.stashboard.org/),以帮助管理我公司的应用程序池。

为了不发布池的状态,每个人(客户,其他公司......)我希望只允许那些使用公司帐户登录的人(即:user@mycompany.com)。

域名“mycompany.com”不受谷歌管理。

当我将身份验证类型设置为“Google Apps域”时,我无法再登录该应用,而是收到错误500:

  

错误:服务器错误

     

服务器遇到错误,无法完成您的请求。   如果问题仍然存在,请报告您的问题并提及此问题   错误消息和导致它的查询。

记录以下错误:

  

2013-10-21 14:42:57.856 / admin 500 55ms 0kb Mozilla / 5.0(Windows NT   6.1; WOW64)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 30.0.1599.101 Safari / 537.36   194.206.149.66 - - [21 / Oct / 2013:05:42:57 -0700]“GET / admin HTTP / 1.1”500 0 - “Mozilla / 5.0(Windows NT 6.1; WOW64)AppleWebKit / 537.36   (KHTML,像Gecko一样)Chrome / 30.0.1599.101 Safari / 537.36“   “xxxxxx.appspot.com”ms = 56 cpu_ms = 0 app_engine_release = 1.8.6 W   2013-10-21 14:42:57.856

     

Google Apps域的身份验证   mycompany.com只能在从a提供请求时执行   该域名的子域名或已通过Google批准   应用控制面板。看到   https://developers.google.com/appengine/articles/auth

链接文档对我没什么帮助,负责Google Apps的管理员在控制面板中找不到如何“批准”域名(appspot.com)。

仅供参考:这是我第一次与GAE合作,这让我成为公司中经验最丰富的GAE用户......所以,我们在这里一点都不知道。

1 个答案:

答案 0 :(得分:2)

为了实现这一点并使其正常运行,我认为您必须将此Google App Engine应用添加到您的Google Apps域信息中心。为此,您必须先使用Google Apps管理mycompany.com域。之后,如果你转到https://appengine.google.com>找到您的应用>应用程序设置>添加域并按照其中的步骤进行操作。

在Google Apps信息中心中看到您的GAE应用后,您可能还需要在app.yaml中添加一些内容以限制您的用户:

- url: .*
  script: main.py
  login: required

重新部署应用后,访问权限应仅限于您所需的域名。