通过 HTTP/HTTPS 进行公钥认证或类似认证?

通过 HTTP/HTTPS 进行公钥认证或类似认证?

是否可以配置 Apache 或其他 Web 服务器以使用某种公钥认证?

理想情况下,我希望能够让用户访问网站而不需要用户名/密码,前提是他们在浏览器中安装了密钥文件(或类似文件),并且该密钥在服务器端得到“授权”。

答案1

您正在寻找的通常称为相互认证。通常存在用于“服务器认证”的服务器证书,这意味着它向客户端验证服务器的身份。

请注意,当实施此方案时,您还面临着为客户端更新证书的额外挑战。

以下是针对某一产品进行此操作的示例:

相互认证入门

配置 Apache 以使用 SSL

答案2

SSL公钥认证。它最常用于验证远程服务器的身份...服务器提供由证书颁发机构的私钥签名的证书,然后您的浏览器根据颁发机构的公钥对其进行验证。

也可以使用 SSL 来验证客户端的身份。在这种情况下,您可以将浏览器配置为在连接到远程服务器时出示客户端证书,然后远程服务器将根据某个机构验证该证书。

这一切都相对容易并且得到大多数 Web 服务器的良好支持。 这个文件讨论如何设置 Apache。SSL要求语句完成了此类配置的大部分繁重工作。

相关内容