我正在实施OAuth提供程序以保护不同的基于Web的API。最头痛的是让我通过OAuth保护WebSockets。是否可以使用OAuth 2.0来保护WebSocket API?
可以在浏览器中设置的客户端中完全安全吗?
如果它在浏览器中与使用服务器的Web应用程序相比有什么风险?
我想使用双腿OAuth来限制到websocket的连接,所以只有注册的客户端可以获得到API的WebSocket连接而不会被拒绝。由于WebSocket连接始终()在客户端(从浏览器)建立,是否有可能保护accessToken不被盗用和滥用?
此时,唯一从Web应用程序客户端应用程序设置基于浏览器的客户端的是URL。
如果基于浏览器的应用程序不安全,我可以忍受这一点,但我想确保至少基于Web的应用程序具有访问websocket的安全方式。
但是在那一点上我问自己是否需要accessToken,因为我只能使用origin-URI作为唯一的安全机制。
这是否需要用户验证一个很好的解决方案,但我不能肯定它是否工作,如果只有客户端需要在oauth-2草案http://tools.ietf.org/html/draft-ietf-oauth-v2-25#section-4.4中的客户端凭据授权中进行验证。它还表示它只能用于机密客户。但即使你有一个机密的客户端,然后你发送了accesstoken到浏览器(建立ws连接),它也被暴露了。所以为了保护它免受重复使用,你必须允许这个accessToken只用于很短的时间或限制访问权限。 – JustGoscha 2012-04-27 10:01:10