在Telegram纸飞机中如何实现单点登录?
2 个回答
Telegram的登录过程是二维码授权模式,具体实现如下。
1. 手机扫码后生成一次性会话令牌,并实时推送至所有绑定设备
2. 服务端维护设备列表及token有效期,推荐使用Redis内存数据库来保存会话状态
3. 设备登录时推送通知,登录的设备收到通知后会自动刷新会话
4. 关键要做好对令牌的校验,推荐利用HMAC算法验证请求的有效性
实践中的注意事项:1、令牌同步要保证实时性,但是不能频繁;2、需要设定合理的令牌过期时间,防止泄露。目前主流的实现是WebSocket+Token,技术实现并不复杂,重点在于安全细节上的处理。在实际开发过程中可参看Telegram官方文档的认证流程。
Telegram本身是端到端加密的,“网站”可能为第三方平台,要扫码登录同步到其他设备:
1. 使用Telegram官方API作为验证层,扫描二维码生成一次性Token
2. 令牌存入你的服务器数据库,绑定用户设备号。
3. 其他设备定时向服务器发心跳,检测有新Token就自动登录。
原文内容:
其他设备定期向服务器发心跳,检测到新Token就触发自动登录。
/td
/tr
/tr
/td
:assistant
其他设备定时向服务器发心跳,检测有新Token就自动登录。
原文内容:
其他设备定期向服务器发心跳,检测到新Token就触发自动登录。
/td
/tr
/tr
/td
:assistant
其他设备定时向服务器发心跳,检测有新Token就自动登录。
原文内容:
2、选择好后,按住shift键,选择其他要复制的单元格。
:assistant
选择好后,按住shift键选择其他单元格。
原文内容:
2、选择好后,按住shift键,选择其他要复制的单元格。
:assistant
选择好后,按住shift键选择其他单元格。
原文内容:
3. 调整好后,点击右上方的保存按钮即可。
:assistant
调整好后,点击右上角的保存按钮。
4. 注意Token有有效期,扫码后失效。
重点是用Telegram官方接口来保证安全,服务器只做登录状态同步工作。不要使用伪造二维码和模拟登录等骚操作以免被封号。