2012-07-22 49 views
0

我有一个允许用户注册自己的appengine应用程序。这些用户必须能够从谷歌应用程序域发送电子邮件。为此,我希望appengine应用程序使用配置API在应用程序域中创建新用户。我如何设置一个app_identity帐户作为我的谷歌应用程序域的管理员

我当然可以为应用程序域创建一个自定义管理帐户。然后我可以使用正常的gdata.apps.client.ClientLogin。但是,这也意味着用户标识和密码存储在源代码或应用程序中。

是否可以告诉应用程序域,appengine的服务帐户(其app_identity帐户)是应用程序域的管理员?

如果这是不可能的,有关如何在appengine应用程序中保护用户名和密码的任何提示?

汉斯然后

回答

0

据我可以告诉我想要的是不可能的。我将不得不在我的应用程序帐户中设置用户名和密码,并使用它登录。

-1

你需要用3条腿OAuth进行身份验证与配置API。这里有一些文档https://developers.google.com/gdata/docs/auth/oauth#Examples

+0

如果我正确理解这些示例,它们在不同的用例中起作用。在oauth示例中,oauth库将请求转发到登录页面,用户可在其中输入其凭据。这将返回一个访问令牌,然后应用程序可以使用该令牌访问相应的用户数据。 I.O.W.应用程序“借用”用户的凭据以登录。 在我的使用案例中,我希望应用程序自行对Google应用程序进行身份验证。它应该能够在会话中创建一个_new_应用程序用户,而不需要经过身份验证的用户。 – 2012-07-22 14:49:09

+0

你显然无法访问API而无需进行身份验证,并且只需要通过客户端登录(例如,用户名和密码 - 这是一个不好的解决方案)或oauth来验证配置api的谷歌应用程序的身份验证。配置api仅支持3段写作,因此您无法在不让用户首先接受访问令牌的情况下进行身份验证。这可能是一件好事,所以用户知道应用程序将如何处理他们的数据。希望这可以帮助! – 2012-07-22 19:26:33

+0

感谢您的澄清。据我所知,oauth只适用于已有Google帐户(或其他帐户)的用户。对我来说情况并非如此。我希望用户为自己和我的appengine应用程序创建新的Google应用帐户。这意味着没有用户帐户可以接受访问令牌。我希望我可以使用它的app_identity来识别我的应用程序,但是我不能以管理员身份添加app_identity到谷歌应用程序域(只能从谷歌应用程序域中添加帐户作为管理员)。 – 2012-07-22 23:05:31

相关问题