【问题标题】:Authorize Web Service Requests授权 Web 服务请求
【发布时间】:2012-09-25 17:43:30
【问题描述】:

我们已经建立了大量的网络服务并将它们托管在我们的内部服务器上,这些将被我们的 iPhone 应用程序使用。 iPhone 应用程序的最终用户无需登录应用程序,他们无需任何凭据即可使用该应用程序。

每当网络服务收到请求时;我想授权这些请求来自 iPhone 应用程序。我该怎么做?

谢谢!

【问题讨论】:

    标签: c# iphone web-services security


    【解决方案1】:

    您希望它有多安全?

    最简单且广泛使用的技术是要求所有 Web 服务请求都包含 ApiKey 标头。然后,服务器必须根据已知的允许 ApiKey 列表验证 ApiKey。如果通过 SSL 进行通信,这是相当安全的(需要反汇编客户端代码才能找到密钥),另一方面,如果通信是纯 http,则 ApiKey 很容易被嗅探。

    【讨论】:

    • 我一直想问这个问题 :) -- 像这样嗅探怎么可能?
    • @Mike,取决于你在哪里以及你有多邪恶 :-) 1) 如果你使用的是未加密的 WiFi,数据包嗅探器将允许你读取所有未加密的 TCP 流量。 2)如果你在同一个子网的同一个本地网络(有线)上,你也可以使用数据包嗅探器 3)如果你可以访问沿着流量路径的路由器,流量很容易被嗅探。不同类型的 WiFi 加密提供不同程度的安全性,但通常可以被破解。
    • @driis,谢谢!我想我可以尝试使用 ApiKey 和 SSL。 oAuth 怎么样?在这些情况下有用吗?您还可以向我指出解释实施 APiKey 存储的最佳实践的资源吗?
    猜你喜欢
    • 1970-01-01
    • 2013-08-14
    • 1970-01-01
    • 2012-05-03
    • 2019-06-18
    • 1970-01-01
    • 2016-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多