【问题标题】:Domain restricted authentication on Google App EngineGoogle App Engine 上的域限制身份验证
【发布时间】:2013-10-21 12:51:49
【问题描述】:

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

为了不向所有人(客户、其他公司......)发布池的状态,我希望只允许使用其公司帐户(即:user@mycompany.com)登录的人访问。

“mycompany.com”域不受 google 管理。

当我将身份验证类型设置为“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 只能在从 该域的子域或已通过 Google 批准 应用程序控制面板。看 https://developers.google.com/appengine/articles/auth

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

仅供参考:这是我第一次与 GAE 合作,这使我成为公司中最有经验的 GAE 用户......所以是的,我们在这里很无知。

【问题讨论】:

  • 您是说该域不是由 Google 管理的,然后您的 Google Apps 管理员找不到东西。所以我的问题是,mycompany.com 是否由 Google Apps 管理?跨度>
  • 你可以试试这个。 support.google.com/a/answer/45690?hl=en
  • @Lipis:域名不是google管理的,但我公司还在用Gapps。
  • @girardid 那么恐怕您必须以某种方式将两者连接起来。您是否设法在自定义域上运行 gae 应用程序?
  • 我没有,我认为管理员试图创建一个 CNAME,但我今天看到也有一个他可能没有意识到的精确程序来执行此操作。我也会调查一下。

标签: python google-app-engine authentication


【解决方案1】:

为了启用它并使其工作,我认为您必须将此 Google App Engine 应用添加到您的 Google Apps 域仪表板。为此,您必须首先使用 Google Apps 管理 mycompany.com 域。之后,如果您转到 https://appengine.google.com > 找到您的应用 > 应用程序设置 > 添加域并按照那里的步骤操作。

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

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

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

【讨论】:

  • 感谢您的回答。我会和管理员谈谈。但是,我不太明白“使用 Google Apps 管理域”的含义。只是允许他们创建子域......还是必须由谷歌“注册”域名(不是我正在寻找的词,对不起,我的英语越来越生疏了)?
  • @girardid 这个东西你一定要仔细阅读:developers.google.com/appengine/docs/domain我希望它会为你清除一些东西
  • 谢谢,我会和管理员一起解决这个问题,并随时通知您。
  • 而且它有效 :) 所以这就是我们所做的:只需将我的应用标识符添加到 Google Apps 控制面板中的授权应用列表中 + 当然是 @Lipis 所说的(添加 login: required 行在app.yaml)。我们现在正在等待我们的域提供商创建 de CNAME,一切都会好起来的。谢谢。
  • 如何在 appengine-web.xml 中提供登录:必需,如果是 java,则在
猜你喜欢
  • 1970-01-01
  • 2014-04-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多