对于我目前的侧项目,这是一个模块化的网络管理系统(其中可能包含了数据库管理,内容管理系统,项目管理,资源管理,实时跟踪,等等模块),我要揭露整个系统作为RESTful API,因为我认为这会使系统更加可用。本身是要系统在ASP.MET MVC3进行编码但是如果我让所有的数据/可通过一个RESTful API的行为,应该使系统很容易与PHP和Ruby,Python和等使用......(他们甚至可以如果他们想要,可以有自己的界面来管理某些数据)。保护一个RESTful API
然而,有一两件事似乎很难做到容易(从用户的使用的角度的RESTful API点)与一个RESTful API与Ajax功能的安全性。如果我想要设置和使用很复杂的东西,我只需创建SOAP服务,但使用RESTful API的整个驱动器非常简单。使用与用户关联的密钥保护RESTful API的最常见方式。当所有的调用都在服务器端完成时,这可以正常工作,但是一旦开始执行ajax功能,即发生更改。我希望RESTful API能够直接从JavaScript调用,但是任何萤火虫的人都可以轻易地访问用户正在使用的密钥,允许该人访问系统。有没有一种更好的方式来保证RESTful API的安全,它不会让RESTful API的用户执行复杂的事情来设置它?
请参阅[REST身份验证和公开API密钥](http://stackoverflow.com/questions/5472668/rest-authentication-and-exposing-the-api-key)。 – Arjan 2012-12-15 09:46:37