2010-04-11 57 views
1

为了保证安全,最佳做法是确保只有我的应用程序才能访问我的web服务(托管在公共服务器上)?我应该实现我的共享密钥还是什么?确保独家访问webservice

我的webservice托管在Google Googles App Engine上,我的应用程序在iPhones和iPads上运行。

如果您需要更多信息,只需询问。

感谢, 亨里克

+0

我猜“独家访问”我不清楚 - 只有你的iPhone?只有一套有限的iPhone?只有你的应用程序在任何人的iPhone?只有授权用户? “独占”是否意味着“安全”,即您担心保护敏感数据还是仅仅试图确保没有人写出利用您的Web服务的应用程序? – 2010-04-11 15:34:01

回答

2

某种质询/响应身份将是你最好的选择,但是你可以使用作为与每个请求发送键一样简单。对于使用数据包嗅探器的人来说,对于那些安全性来说,这可能是相当容易的 - 尽管如此,我猜你花在它上的时间与你的真正关心程度有关:)

2

如果您需要您的iPhone应用程序用户输入登录名/密码,那么实现您想要的功能很简单。但我认为你不想那样..

没有这个,有没有办法确保你的应用程序具有独家访问你的网络服务。人们总是可以嗅探HTTP流量并对其进行欺骗。人们可以反编译/反向工程您的应用程序找出密钥/密码。

见StackOverflow上其他讨论 - How to restrict access to my web service?How can I create and use a web service in public but still restrict its use to only my app?

+0

+1用于指出相关/重复的帖子 – slugster 2010-04-11 12:46:52

1

嗯,我有类似的问题。我意识到,没有100%的解决方案。我所做的是,我使用了不同的方法。当然,我已经实现了OAuth和SSL,并且为我的Web服务制作算法来了解我的应用的行为。 我尝试将该算法放在某种模式中,因此它可用于更多场景。它仍在开发中,所以这里是简单的控制台应用程序的代码,它将模拟该算法。希望这可以帮助: https://github.com/vjeftovic/LearningRESTSimulation