Go with Google App Engine中的OAuth2

时间:2014-07-31 07:33:05

标签: google-app-engine go oauth-2.0

我正在考虑在Google App Engine中使用OAuth2和Go 这是一个例子的链接:
https://developers.google.com/appengine/docs/go/users/#Go_OAuth_in_Go

但这句话对我来说并不清楚:

Note that using OAuth to identify your users is completely orthogonal to the 
standard user authentication modes. For example, pages marked with 
login: required or login: admin will refuse to load if the user is 
only authenticated via OAuth.

这是否意味着我无法在OAuth中使用标准身份验证模式?

我可以使用其他提供商(如Facebook)和用户包吗?

或者使用此软件包而不是默认用户软件包更好吗? https://code.google.com/p/goauth2/
使用它有缺点吗?

(我只需要它进行身份验证)

1 个答案:

答案 0 :(得分:1)

这只是意味着app.yaml / module.yaml键"登录"不会考虑通过OAuth进行身份验证的用户进行身份验证,并拒绝他们访问该资源。

例如,如果您在/ admin /创建了一个页面,并且您希望GAE强制执行只有经过身份验证的人才能访问该页面,那么您需要确保他们使用Google帐户进行身份验证,而不是OAuth登录。使用OAuth登录后访问该网址的任何人仍然会对GAE显示未经身份验证。

所有这一切意味着,如果您有网页,您只希望经过身份验证的人看到,并且您希望支持OAuth作为有效的身份验证方法,那么您需要没有"登录" .yaml文件中这些资源的密钥集。然后由您决定是否已经登录,然后才允许他们访问该资源。在这种情况下,GAE无法帮助你。