2012-09-27 92 views
4

我正在为GAE python上的应用程序开发RESTful API,现在我正试图找出保护此API的最佳方法。 我有这个应用程序我自己的成员/身份验证机制。RESTful API身份验证/安全

这样做的最好方法是什么?

  • 有公钥/私钥对
  • 成为一个OAuth提供
  • HTTP认证(似乎很微弱我)
  • 其他?

回答

2

首先,丢弃HTTP认证注册为受信任的测试。由于它驻留在cookie上,因此不推荐在真正的REST API中使用。

我会去与OAuth。有一个名为appengine_oauth_provider的库,可以帮助您开始实施自己的提供商。

+0

谢谢,看起来图书馆很古老,我们有其他的吗? –

+0

这似乎是正确的路要走。谢谢 – aschmid00

+0

只是好奇:你有没有参考REST API和Cookie是不可调和的? – Drux

2

您可以使用Google服务帐户进行用户验证。但是,人们仍然可以注册一个帐户并使用您的API,并且您的应用程序引擎帐单肯定会上升。他们刚刚在Google I/O 2012上推出了Google Cloud Endpoints。您将拥有一个仅用于客户端应用程序(Android,iOS)的客户端ID。

Google I/O 2012 - Building Android Applications that Use Web APIs with Yaniv Inbar and Sriram Saroop

Google I/O 2012 - Building Mobile App Engine Backends for Android, iOS and the Web

如果你有兴趣,你应该尝试在

http://endpoints-trusted-tester.appspot.com/

+0

如上所述,我有我自己的身份验证/成员机制,我不使用谷歌帐户进行身份验证。将检查I/O视频。不能真正找到端点在Python中看起来如何的例子。 – aschmid00

+1

不幸的是,我们在I/O上没有准备好任何Python示例,但我们最近与可信测试人员共享了一些示例Python代码。我绝对会鼓励你注册。 –

+0

我现在注册了。 – aschmid00