gpt4 book ai didi

java - SSL 身份验证/授权是否是握手的一部分?

转载 作者:行者123 更新时间:2023-11-28 22:16:27 28 4
gpt4 key购买 nike

据我了解,在客户端身份验证的情况下,服务器向客户端请求证书,然后在证书验证握手后发生。

我只想知道,Server在证书校验中做了什么:1)它只验证证书是否有效,即用户是证书的真正所有者。2) 验证用户是证书的真正所有者,并检查身份验证和授权。

那么 1 还是 2?

简单来说,我的问题是:SSLAuthentication 是握手的一部分,还是握手后出现的东西?

最佳答案

是否在网络上的握手完成之前完成证书的完整验证取决于对等方。通常服务器证书验证在握手之前完成,如果完成并且客户端证书验证至少部分完成。

但特别是在客户端证书的情况下,可能是在服务器上运行的 Web 应用程序有其他要求,例如,证书不仅由特定 CA 签名,而且主题与在数据库,也许证书的指纹存储在数据库中。在这种情况下,验证通常仅在 TLS 握手完成后才完成,因为只有在那时才执行特定于 Web 应用程序的逻辑。

... what does Server do in the certificate verification: 1) It only verifies that the certificate is valid i.e. the user is the true owner of the certificate. 2) It verifies user is the true owner of the certificate and also check the authentication and authorization.

在 TLS 握手中检查客户端拥有证书中公钥的私钥。通常还会检查证书是否由受信任的 CA 签名,尽管可能存在未进行此检查的情况,而是在握手后检查证书是否具有预期的指纹。通常不会在 TLS 握手中检查授权,因为 TLS 堆栈通常不知道访问的是哪种资源,也不知道通过证书验证的特定用户是否有权访问该资源。

关于java - SSL 身份验证/授权是否是握手的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47261604/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com