「进行中」XDSec SSO开发小记

「进行中」XDSec SSO开发小记

💡 原文中文,约1700字,阅读约需4分钟。
📝

内容提要

本文记录了XDSec SSO开发过程中的经验,重点讨论了防止邮箱枚举和设计TOTP验证流程。通过设计接口避免泄露用户信息,并提出将JWT与TOTP结合的方案,以简化验证流程。

🎯

关键要点

  • 项目旨在重新开发SSO,以解决原有系统用户信息管理复杂的问题。

  • 设计过程中,防止邮箱枚举是一个重要考虑,特别是在用户登录和密码重置接口的设计上。

  • 通过设计接口,避免直接泄露用户邮箱信息,例如在邮箱重置密码时,使用模糊提示来防止信息泄露。

  • 为开启TOTP的用户设计了一个接口,通过随机返回信息来隐藏邮箱是否存在,从而防止攻击者获取用户信息。

  • 在设计TOTP验证流程时,考虑到用户体验,提出将TOTP与JWT结合的方案,以简化验证流程。

  • 建议将JWT作为接口返回值存储在前端,而不是放在cookie中,以便更好地管理登录状态和TOTP验证。

延伸问答

XDSec SSO项目的主要目标是什么?

该项目旨在重新开发SSO,以解决原有系统用户信息管理复杂的问题。

如何防止邮箱枚举?

通过设计接口,避免直接泄露用户邮箱信息,例如在邮箱重置密码时使用模糊提示。

TOTP验证流程是如何设计的?

设计了一个接口,通过随机返回信息来隐藏邮箱是否存在,从而防止攻击者获取用户信息。

JWT与TOTP结合的方案有什么优势?

将JWT与TOTP结合可以简化验证流程,避免维护两套token,提高用户体验。

在设计过程中遇到的主要挑战是什么?

主要挑战是防止邮箱枚举和设计安全的用户验证接口。

如何管理JWT的存储?

建议将JWT作为接口返回值存储在前端,而不是放在cookie中,以便更好地管理登录状态和TOTP验证。

🏷️

标签

➡️

继续阅读