Pur*_*ome 6 .net authentication web-services
我们有一个.NET Web服务API.目前,人们使用SOAP定义来使用API,因为我们需要通过SOAP标头中的自定义Authentication元素进行身份验证.完美的工作.精细.
SOAP要求请求为POST.我们希望允许用户使用GET动词(因此它可以缓存).
那么,提供简单GET API(不一定是web服务!)的最佳方法是什么,它还提供身份验证?
示例API路由:
http://www.blah.com/api/Search?query=Foo
这是一种可接受的常见做法吗?
http://www.blah.com/api/Search?query=Foo&Key=<some guid>
注意:我也不想实现SSL,也不想在IIS等中安装额外的软件或插件等.
如果 Web 服务需要保护,并且我假设它需要保护,因为您当前有一个 Authentication 标头,那么您应该重新考虑使用 GET 而不是使用 SSL,至少对于身份验证部分而言。至少我会通过 SSL 将授权请求发布到 Web 服务/应用程序。如果您不想为每个请求提供身份验证,那么您将需要接受返回(并在服务中生成)消费者可以用于后续请求的授权 cookie。
我会避免在 URL 中使用身份验证,这正是您想要支持 GET 的原因——如果可以缓存 URL,那么凭据也会被缓存。这会破坏 Web 服务的安全性,因为任何人都可以重复使用缓存的凭据。
| 归档时间: |
|
| 查看次数: |
852 次 |
| 最近记录: |