使用Plone从移动设备验证用户身份

gfo*_*ada 2 iphone android plone

我开始创建一个需要使用Plone用户的iPhone/Android应用程序(即在网站上注册然后在手机上欣赏应用程序).

这样做的最佳方法是什么?我见过一些使用OAuth或其他技术的应用程序,这些技术目前支持Plone4(完全是4.0.3).

我有LDAP服务器(OpenLDAP)上的用户,但即使我仍然需要在Plone上记录它们,以便能够从那里向移动电话发送和检索数据.

Mar*_*ers 5

您有3个选择,您选择的取决于您的技能以及您愿意投入的时间:

基本认证

让您的用户在应用程序中输入用户名和密码,并使用HTTP BasicAuth标头访问该站点.Plone支持开箱即用的基本身份验证.

这不是最安全的方法; 密码基本上是发送base64编码的,因此您可能希望使用HTTPS与服务器进行通信.无论如何,无论如何都是一个好主意.

Cookie身份验证

在Plone站点上发送带有__ac_name__ac_password/ items的项目的POST请求,并捕获Set-Cookie包含__accookie 的响应标题.这是一个tk-auth身份验证令牌,您可以在任何后续请求中使用它.这是一个安全的cookie,但任何嗅探HTTP通信流的攻击者都可以重用它,因此HTTPS再次成为安全的通信方式.

OAuth的

Plone(尚未)开箱即用支持OAuth,但与python-oauth集成应该是微不足道的.这很可能需要编写PluggableAuthSystem(PAS)插件.