好吧,在OAuth2
规范中,可以预见的是,您正在完全运行在客户端(浏览器,移动设备等)的应用程序中进行身份验证,因此它们无法保护其代码/数据。
在关于Security Considerations
他们的备忘录中,您说您不应该在我们的代码中存储凭据(出于明显的原因,我认为):
https://tools.ietf.org/html/rfc6819#section-5.3.1
此外,在有关本机客户端的备忘录中,他们强烈建议授权服务器不需要应用程序密码:
https://tools.ietf.org/html/rfc8252#section-8.5
因此,应该有可能获得访问令牌,而无需使用“客户端”授予类型使用客户端机密,如下所示:
https://www.oauth.com/oauth2-servers/mobile-and-native-apps/authorization/
无论如何,在Github文档中,声明了client_secret
必须检索access token
:
https://developer.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#2-users-are-redirected-back-to-your-site-by-github
根据官方规范,您应该可以实现这一目标,但是我找不到使用Github OAuth来实现这一目标的方法,这是我的问题:
有没有一种方法可以使用Github OAuth access token
而不使用client_secret
?