gpt4 book ai didi

wcf - 保护 REST API/Web 服务的最佳实践

转载 作者:行者123 更新时间:2023-12-03 03:52:05 24 4
gpt4 key购买 nike

在设计 REST API 或服务时,是否有处理安全性(身份验证、授权、身份管理)的既定最佳实践?

构建 SOAP API 时,您可以使用 WS-Security 作为指南,并且存在许多关于该主题的文献。我发现有关保护 REST 端点的信息较少。

虽然我知道 REST 故意没有类似于 WS-* 的规范,但我希望已经出现最佳实践或推荐模式。

任何讨论或相关文档的链接将不胜感激。如果重要的话,我们将使用带有 POX/JSON 序列化消息的 WCF,用于使用 .NET Framework v3.5 构建的 REST API/服务。

最佳答案

正如tweakt 所说,Amazon S3 是一个很好使用的模型。他们的请求签名确实具有一些功能(例如合并时间戳),有助于防止意外和恶意请求重放。

HTTP Basic 的好处是几乎所有 HTTP 库都支持它。当然,在这种情况下您需要使用 SSL,因为通过网络发送明文密码几乎普遍都是一件坏事。使用 SSL 时,Basic 优于 Digest,因为即使调用者已经知道需要凭据,Digest 也需要额外的往返来交换随机数值。使用 Basic,调用者只需在第一次发送凭据即可。

一旦建立了客户端的身份,授权实际上只是一个实现问题。但是,您可以将授权委托(delegate)给具有现有授权模型的其他组件。同样,Basic 的好处是您的服务器最终会得到客户端密码的明文副本,您可以根据需要将其简单地传递到基础设施中的另一个组件。

关于wcf - 保护 REST API/Web 服务的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7551/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com