.net OpenId Connect-客户端证书可以用于身份验证吗?

.net OpenId Connect-客户端证书可以用于身份验证吗?,.net,oauth-2.0,openid-connect,.net,Oauth 2.0,Openid Connect,我看到的所有关于OpenID Connect的例子都是关于使用登录名和密码的。我有一些应用程序使用客户端证书在服务器上进行身份验证。使用openid connect是否可以实现这种身份验证?事实上,openid connect没有指定提供者如何对用户进行身份验证。相反,它指定了一种机制,用于在提供者和依赖方之间传递有关经过身份验证的用户的信息 提供商当然可以选择要求客户端证书来验证其用户。OpenID Connect规范本身中没有禁止这种情况的内容(从这个意义上讲,它与SAML相同)。RFCs提

我看到的所有关于OpenID Connect的例子都是关于使用登录名和密码的。我有一些应用程序使用客户端证书在服务器上进行身份验证。使用openid connect是否可以实现这种身份验证?

事实上,openid connect没有指定提供者如何对用户进行身份验证。相反,它指定了一种机制,用于在提供者和依赖方之间传递有关经过身份验证的用户的信息

提供商当然可以选择要求客户端证书来验证其用户。OpenID Connect规范本身中没有禁止这种情况的内容(从这个意义上讲,它与SAML相同)。

RFCs提供了一种使用断言进行客户端身份验证的方法

还有另外两个RFC允许您使用加密方法对授权服务器进行身份验证。 授权服务器使用证书,或者更准确地说,它们包含的公钥来验证客户端断言:

  • 安全断言标记语言(SAML)2.0配置文件()
  • JSON Web令牌(JWT)配置文件()
还有一种方法尝试为OAuth实现X.509 TLS身份验证