0

所以,我的公司有一个 iPhone 应用程序。我们将 API 发布到我们的服务器,我们需要验证客户端应用程序(不是用户,我们想知道这是否是它声称的 iPhone 应用程序)。

我想做的是让应用程序向我们的服务器发送 Apple 应用程序商店中应用程序的公钥,作为其初始请求的一部分。然后我希望我们的服务器能够询问 Apple 商店“这个公钥是我认为的应用程序的密钥吗?” 如果是,那么我们将为所有其他请求发出一个有效的令牌,如果不是 - 退回请求。

我意识到这种方法可能会被欺骗(因为有人可以从越狱手机中找到公钥并伪装成应用程序),但是对于应用程序的初始版本,我们不在乎,因为我们希望人们使用应用程序。稍后,我们希望对来自合作伙伴的 API 请求(被授权使用上述方法发送请求)进行归属,但目前无需签署或真正授权请求(使用 2 或 3 条腿 oAuth)。

所以,简单地说—— o iPhone 应用程序有没有办法向 iOS 索要用于签署应用程序的公钥?o 服务器或其他程序有没有办法询问 Apple 商店“这个公钥是我认为的应用程序的密钥吗?”

我实际上是在尝试将 Apple 商店用作身份验证机构。我知道:他们已经在必须得到 Apple 的签名和批准,但我需要服务器请求时间验证。

提前谢谢。

4

1 回答 1

1

为什么不创建自己的密钥并将其存储在您的应用程序中?然后将该密钥与所有请求一起传递给 API。

您可以将此方法与传递应用程序版本结合使用。如果不再支持应用程序密钥,此方法将允许您限制对 API 的访问,或者允许您阻止应用程序的过时版本。

于 2013-05-06T20:14:44.507 回答