个人网站中, HTTPS 客户端证书是否可以代替认证校验?

2021-06-22 23:59:10 +08:00
 mrchi

个人网站在仅自己访问的情况下,由于不涉及到商业网站为大量客户签发 Client Certificate 造成的费用、管理和用户易用性的问题,是否能用 HTTPS 客户端证书代替认证校验?

理论上服务端配置得当的话,没有正确的客户端证书是无法请求到内容的吧?

1207 次点击
所在节点    问与答
10 条回复
dingwen07
2021-06-23 00:01:46 +08:00
可以
3dwelcome
2021-06-23 01:21:52 +08:00
感觉客户端证书认证体系配置起来挺麻烦的。
个人网站认证传 cookie 就好,反正别人又没办法截取。
cnnblike
2021-06-23 01:31:19 +08:00
可以,在亚马逊内部就是这么做验证的(当然亚马逊有自己的 ca ),client certificate 只有一个不好,就是你在用 caddy 之类的时候(我只试过 1.x )反向代理很难配置正确
cnnblike
2021-06-23 01:33:13 +08:00
如果只是为了方便实现的话,可以在 openldap/saml 之类的 sso 上加 client certificate 验证,然后其他的网站调用 sso 在 cookie 里的结果
Tink
2021-06-23 01:41:33 +08:00
可以,有点麻烦
jim9606
2021-06-23 02:29:29 +08:00
只要你自己不觉得烦,完全可以,而且安全性很高。

TLS 客户端认证的坏处是,常见的 WebServer 实现在进行 Client Auth 失败后会直接关闭连接。浏览器除了显示 Bad Client Auth 之外没法显示任何东西,包括 trouble shooting 指引。Server 日志除了一条 Client Auth Failed 之外也不能提供更多信息。

当然个人使用这些都是小问题。
jim9606
2021-06-23 02:31:50 +08:00
@3dwelcome 网上一大堆直接用 openssl 或者 easyrsa 命令行搞确实比较劝退。
推荐下自用方案——XCA,图形化操作。
passerbytiny
2021-06-23 09:18:39 +08:00
客户端证书(数字签名)是最高级别认证手段,同时也是易用性最低的。是否用主要看安全性和易用性怎么权衡。
Kahnn
2021-06-23 11:34:02 +08:00
可以,网银都用这玩意,安全性有保证
julyclyde
2021-06-23 14:15:44 +08:00
安全方面没啥问题,银行都这么用的
问题就是签发很麻烦

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/785195

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX