我想构建一个使用 HTTP 基本身份验证的 API,但要做到这一点,我需要客户端以纯文本形式存储用户的密码,然后将其与每个请求一起发送。我真的不想这样做。
我无法为此 API 使用 OAuth,也无法让客户端注册其应用程序来使用该 API。
关于授权的替代方法有什么建议吗?
最佳答案
您的威胁模型是什么?换句话说,您试图解决的风险是什么? 如果您担心以明文形式发送凭据,可以将 SSL 与 HTTP 基本身份验证结合使用。另外,您可以查看 -
1) 使用摘要式身份验证
2) SSL 客户端证书身份验证(这可能不起作用,因为您说您无法注册应用程序 ID..并且要使证书身份验证起作用,您至少需要要验证的证书的公钥
3)如果是内部应用程序,可以使用kerberos(Windows)身份验证
关于security - 基本身份验证 API 无需客户端以纯文本形式存储密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12151122/