Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Github OAuth2不支持客户端身份验证?_Github_Oauth_Oauth 2.0_Client_Github Api - Fatal编程技术网

Github OAuth2不支持客户端身份验证?

Github OAuth2不支持客户端身份验证?,github,oauth,oauth-2.0,client,github-api,Github,Oauth,Oauth 2.0,Client,Github Api,嗯,在OAuth2规范中,可以预见到这样的情况:您在完全在客户端(浏览器、手机等)上运行的应用程序中进行身份验证,因此它们无法保护其代码/数据 在关于安全注意事项的备忘录中,他们说您不应该在我们的代码中存储凭据(我认为原因很明显): 此外,在关于本机客户端的备忘录中,他们强烈建议授权服务器不需要应用程序机密: 因此,应该可以使用“客户机”授权类型在不使用客户机机密的情况下获得访问令牌,如下所示: 无论如何,在Github文档中,声明必须使用客户机密钥才能检索访问令牌: 根据官方规范,您

嗯,在
OAuth2
规范中,可以预见到这样的情况:您在完全在客户端(浏览器、手机等)上运行的应用程序中进行身份验证,因此它们无法保护其代码/数据

在关于
安全注意事项的备忘录中,他们说您不应该在我们的代码中存储凭据(我认为原因很明显):

此外,在关于本机客户端的备忘录中,他们强烈建议授权服务器不需要应用程序机密:

因此,应该可以使用“客户机”授权类型在不使用客户机机密的情况下获得访问令牌,如下所示:


无论如何,在Github文档中,声明必须使用
客户机密钥
才能检索
访问令牌

根据官方规范,您应该能够实现这一点,但我无法找到使用Github OAuth实现这一点的方法,下面是我的问题:

是否有一种方法可以使用Github OAuth获取
访问令牌
,而不使用
客户端密钥

那么,有没有一种方法可以使用githuboauth,在不使用client_secret的情况下获取访问令牌

当考虑到

应用程序将该代码交换为访问令牌

当应用程序请求访问令牌时,该请求将使用客户端密码进行身份验证,从而降低攻击者截获授权码并自己使用授权码的风险

这意味着,如果应用程序需要代表客户端自动化该步骤,它需要从第三方引用(如vault)获取该机密

例如,请参阅,这是一个插件,提供了OAuth 2授权代码授权流的安全包装,允许Vault客户端代表用户请求授权,并使用协商的OAuth 2访问令牌执行操作。

(这里,Valut是)

是的,关于规范,您发送的是
授权码
授权类型,因此在这一个中,我知道没有办法。但通常您有其他类型的补助金,如:。我知道一些规范,但我是专门谈论Github OAuth身份验证服务器,因此,它没有回答我的问题。