目前我正在我的Web应用程序中开发控制台,显示用户正在运行的*nix应用程序日志(游戏服务器),我只想通过猜测主题名称来确保一个用户无法访问另一个用户控制台。
我使用随机生成的16个字符的字符串0-9,A-Z,A-Z,每次刷新页面时都会更改,每个主题名称的有效期为30分钟。
crossbar配置中的每个webapp用户都有权订阅任何主题。我想让每个用户只订阅他/她的控制台主题,但我认为crossbar的动态配置还没有实现。
这个实现是否足以保护用户的隐私,或者订阅者是否可以列出其他子订阅源,而我使用唯一主题名称的工作毫无意义?
订阅者确实可以通过订阅元过程列出其他订阅者。
关于你的主题结构-你正在做类似的事情
com.myapp.userlog.user34KUIK567878
com.myapp.userlog.userAHH78738J899
并想阻止用户订阅除自己频道之外的任何频道?
为此,您可以使用动态授权器-请参阅http://crossbar.io/docs/Authorization/
动态授权器在每次订阅(发布、调用、注册)请求时都会被调用,然后可以接受或拒绝此请求。它可以访问会话数据,以便您可以识别用户。