没有密码而是证书的用户身份验证?

时间:2018-07-19 10:32:20

标签: java security authentication

在我的应用程序中,现有的身份验证机制可以接受用户名和密码。我需要的是一种无需密码即可以给定用户身份登录的安全方法。假设我有一个REST API和使用它的受信任的源Java应用程序。一种方法是允许从受信任的IP地址进行此​​类访问,但这还不够。最好的方法是什么?例如。客户端必须使用的一些受信任的证书。基本上,目标是从内部应用程序中验证出给定用户的身份,而无需输入密码。我们假定应该允许它是受信任的应用程序,但是仍然需要以某种方式授予该信任并能够对其进行验证。任何帮助表示赞赏。谢谢

1 个答案:

答案 0 :(得分:1)

您当然可以使用TLS客户端证书来验证对服务器的HTTPS访问。在服务器端,您已经实现了一些方案,以将客户端证书的主题名称(DN)映射到用于授权的某些名称或ID。

此外,就像服务器证书一样,您需要适当的证书更新过程。您应该自动执行此操作,并设置证书过期监控。

一种替代方法可能是研究OAuth 2.0。