Fab*_*ira 5 client oauth github github-api oauth-2.0
好吧,在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:
根据官方规范,您应该可以实现这一目标,但是我找不到使用Github OAuth来实现这一目标的方法,这是我的问题:
有没有一种方法可以使用Github OAuth access token而不使用client_secret?
那么,有没有一种方法可以使用 Github OAuth,在不使用 client_secret 的情况下获取访问令牌?
在考虑授权授予步骤时,我看不到
应用程序将该代码交换为访问令牌。
当应用程序发出访问令牌请求时,该请求将使用客户端密钥进行身份验证,这降低了攻击者拦截授权代码并自行使用的风险。
这意味着,如果应用程序需要代表客户端自动执行该步骤,则需要从第三方引用(例如保管库)获取该秘密。
例如puppetlabs/vault-plugin-secrets-oauthapp,这是一个围绕 OAuth 2 授权代码授权流程提供安全包装器的插件,允许 Vault 客户端代表用户请求授权并使用协商的 OAuth 2 访问令牌执行操作。
(这里,Valut 是hashicorp/vault)
| 归档时间: |
|
| 查看次数: |
74 次 |
| 最近记录: |