【发布时间】:2012-08-22 11:32:10
【问题描述】:
我想构建一个使用 HTTP Basic Auth 的 API,但要做到这一点,我需要客户端以纯文本形式存储用户密码,然后将其与每个请求一起发送。我真的不想这样做。
我不能为此 API 使用 OAuth,或者让客户注册他们的应用以使用 API。
关于授权的替代方法有什么建议吗?
【问题讨论】:
标签: security api http authentication basic-authentication
我想构建一个使用 HTTP Basic Auth 的 API,但要做到这一点,我需要客户端以纯文本形式存储用户密码,然后将其与每个请求一起发送。我真的不想这样做。
我不能为此 API 使用 OAuth,或者让客户注册他们的应用以使用 API。
关于授权的替代方法有什么建议吗?
【问题讨论】:
标签: security api http authentication basic-authentication
您的威胁模型是什么?换句话说,您试图解决的风险是什么? 如果您担心以明文形式发送凭证,您可以将 SSL 与 HTTP Basic Auth 结合使用。另外,你可以看看 -
1) 使用摘要认证
2) SSL 客户端证书身份验证(这可能不起作用,因为您说您无法注册应用程序 ID.. 并且要使证书身份验证工作,您至少需要要进行身份验证的证书的公钥
3)如果是内部应用,可以使用kerberos(Windows)认证
【讨论】: