使用OAuth2.0作为webapp的授权系统

时间:2015-11-10 05:30:48

标签: go oauth oauth-2.0 authorization

我很擅长为网络应用实施授权系统,并希望将OAuth2.0与Google一起使用,以便为需要在网络应用上登录其帐户的用户提供授权。这意味着Google将为用户提供帐户详细信息,但我不会使用Google API。我需要一种方法来告诉谁登录以及他们是否可以使用OAuth访问某些API。我知道Google provides simple sign-in,但我想详细了解OAuth 2.0,这就是我使用它的原因。

我一直在做一些研究来尝试和理解OAuth2.0(this presentation特别有用)。根据我的理解,OAuth有几种不同的响应类型,但我还没有能够找出最适合我的用例的套件。

由于我使用Golang作为后端(Gocraft/web用于多路复用和中间件,而Golang OAuth2.0用于OAuth2.0,我很感激与Golang相关的示例,如果有人愿意给予我一个。我还没有能够走远,但我已经配置了OAuth2.0:

oauthConfig := &oauth2.Config{
    ClientID: "...",
    ClientSecret: "...",
    Endpoint: oauth2.Endpoint{
        AuthURL: "https://accounts.google.com/o/oauth2/auth",
        TokenURL: "https://accounts.google.com/o/oauth2/token",
    },
    RedirectURL: "...",
    Scopes: []string{ "https://www.googleapis.com/auth/userinfo.profile" },
}

任何见解都将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:0)

我最终使用了Goth this comment @elithrar中的建议。