传递给 ssl verify_fun 函数的 UserState 变量是什么
What is the UserState variable passed to the ssl verify_fun function
我一直在尝试使证书固定正常工作,我注意到最初传递给 verify_fun
中定义的函数的 UserState
变量。当证书有效时返回此变量,但我在文档中找不到任何其他提及它的地方。
我想存储证书中的一些信息,以便稍后对客户端进行身份验证。我可以只在 UserState
中传递这些信息,然后在我的网络服务器 (cowboy) 中检索它们吗?或者我最好只是验证 verify_fun
中的证书并从 cowboy 中访问证书信息?
您无法在路径验证后检索 UserState
的最终值。此参数仅用于将信息传递到路径验证循环的下一阶段:verify_fun
将针对证书链中发现的每个扩展和问题调用一次。首先,它会得到初始的 UserState
作为参数,并且在每一步中它可以 return 一个新的 UserState
用于下一步。
所以您应该只使用 verify_fun
进行路径验证。您将不得不在稍后阶段再次检索客户端的证书,以从中收集和存储任何数据。
我一直在尝试使证书固定正常工作,我注意到最初传递给 verify_fun
中定义的函数的 UserState
变量。当证书有效时返回此变量,但我在文档中找不到任何其他提及它的地方。
我想存储证书中的一些信息,以便稍后对客户端进行身份验证。我可以只在 UserState
中传递这些信息,然后在我的网络服务器 (cowboy) 中检索它们吗?或者我最好只是验证 verify_fun
中的证书并从 cowboy 中访问证书信息?
您无法在路径验证后检索 UserState
的最终值。此参数仅用于将信息传递到路径验证循环的下一阶段:verify_fun
将针对证书链中发现的每个扩展和问题调用一次。首先,它会得到初始的 UserState
作为参数,并且在每一步中它可以 return 一个新的 UserState
用于下一步。
所以您应该只使用 verify_fun
进行路径验证。您将不得不在稍后阶段再次检索客户端的证书,以从中收集和存储任何数据。