android socketio权限,简要分析socketio-auth

为什么写这篇

看到不少noder在问socket.io如何控制权限这类问题,想到去年在echojs还是HackerNews上看到的socketio-auth模块,还是一定程度上解决这类问题的,尽管它的实现相当简单,但至少提供了一个思路。

socketio-auth是啥

大致验证过程

1.为socket.io挂上模块

var io = require('socket.io').listen(app);

require('socketio-auth')(io, {

authenticate: authenticate,

postAuthenticate: postAuthenticate,

timeout: 1000

});

参数

authenticate 验证用户身份,比如在这里查询数据库,对比用户信息,成功后标记,然后调用下面的postAuthenticate函数

postAuthenticate 在验证成功后的处理,你可以做一些你爱做的事,比如买衣服什么的:)

timeout 超时时间,等待用户验证的时间毫秒数,超过这个时间就会强制断开了

在这个过程干了这么几件事:

给socket.io绑定connection事件处理

在connection事件内部监听authentication事件,这个事件是需要客户端来触发的。

从connection事件触发时开始,使用计时经过timeout时间后如果还没有标记为已验证,就主动断开连接。

这里主要是注册事件做准备工作。

2.客户

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
文件有什么区别?它们分别用于什么目的? 回答: password-auth和system-auth是Linux操作系统中用于密码设置和登录控制的文件。它们的区别在于它们的位置和用途。\[1\] password-auth文件位于/etc/pam.d/目录下,用于密码策略和复杂性的设置。它包含了密码复杂度的规则和策略,例如定期更换密码和避免使用弱口令。\[2\] system-auth文件也位于/etc/pam.d/目录下,用于认证、账户、密码和会话管理。它包含了用于登录检查的auth组件、用于访问控制的account组件、用于密码设置和验证的password组件以及用于配置和管理用户会话的session组件。\[3\]这两个文件在密码设置和登录控制方面起到了不同的作用。 #### 引用[.reference_title] - *1* *3* [linux中/etc/pam.d/system-auth文件详解](https://blog.csdn.net/ghjzzhg/article/details/94388439)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [安全等保测评:RHEL8/Centos8操作系统如何设置密码策略及复杂度](https://blog.csdn.net/fushengbao/article/details/121703129)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值