使用OAuth协议时,您需要从要委派给该服务的秘密字符串。如果您是在Web应用程序中执行此操作,则可以仅将秘密存储在数据库或文件系统中,但是在移动应用程序(或与此相关的桌面应用程序)中处理秘密的最佳方法是什么?
将字符串存储在应用程序中显然不好,因为有人很容易找到并滥用它。
另一种方法是将其存储在您的服务器上,并让应用在每次运行时都将其获取,而不是将其存储在手机上。这几乎一样糟糕,因为您必须在应用程序中包含URL。
我能想到的唯一可行的解决方案是,首先正常获取访问令牌(最好使用应用程序内部的Web视图),然后将所有进一步的通信路由到我们的服务器,这会将秘密添加到请求数据中并进行通信。与提供者。再说一次,我是安全菜鸟,所以我真的很想听听一些知识渊博的人们对此的看法。在我看来,大多数应用程序都不会采用这些长度来保证安全性(例如,Facebook Connect似乎假定您将秘密信息直接放入应用程序中的字符串中)。
另一件事:我不认为最初请求访问令牌涉及秘密,因此可以在不涉及我们自己的服务器的情况下完成。我对么?