我已经使用 sailsjs 为应用构建了一个后端。我的应用程序使用某种基于 token 的身份验证,为此我设置了一个策略:
module.exports.policies = {
// Policies that apply to all controllers.
// '*': true // DEV ONLY
'*': [ 'requestData' ],
'UserController': {
'*': [ 'requestData' ],
'register': true,
'exists': true
},
'AdminController': {
'*': true
}
};
效果很好。但是,现在我想使用 Socket.IO
从我的 AdminController
中的 View 访问 protected Controller 。但是,正如预期的那样,当我尝试从我的 View 访问资源列表时,将抛出 Forbidden
。
是否可以定义一个策略,其中:
- 允许来自同一域的所有请求(http
或 websocket
)
- 不允许来自任何其他域的所有请求
此外,即使可能,这种方法是否安全?我拥有整个服务器和域,因此在正常情况下不会从该服务器提供其他应用程序。
谢谢!
最佳答案
请在提问时分享您的 sails.js 版本!
对于那些对将策略应用于套接字的一般问题感兴趣的人:https://github.com/balderdashy/sails/issues/1229
对于那些对通过套接字进行身份验证感兴趣的人,请参见下文(这是一个相关问题,也与上述问题相关联): https://github.com/balderdashy/sails/issues/1348
关于javascript - Sails.js:特定于 socket.io 的策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22411093/