我目前正在将Spring安全性及其OAuth 2.0实现集成到两个应用程序中。最初,整体架构如下:
应用A 是一款前端应用。它独立存在并实现 与其自己的域相关的业务逻辑。它有自己的身份验证机制(基于本地用户表)。
它还有一个名为超级密码的功能,如果此用户列在本地 adminList中,则允许将本地用户升级为应用A的管理员表,如果他/她提供了正确的管理员密码。此功能是类似sudo的功能,允许用户模仿其他用户的上下文(主要用于与帮助台相关的任务)。
应用程序B 是一个基于Spring Security的独立应用程序,它使用Spring的OAuth 2.0实现。我们将其用作其他前端应用程序的中央身份验证点。
然后我们设法将所有身份验证麻烦从应用程序A移动到应用程序B.现在,不再需要应用程序A中的本地用户表,与用户身份验证相关的所有内容都被移动到了应用程序乙
唯一剩下的就是超级密码功能: 是否可以将此功能(作为扩展名)移至应用程序B(负责Auth),并将应用程序B作为通用身份验证服务器用于所有其他应用程序?
如果是,那么如何使用Spring security / OAuth 2机制实现呢?
或者,它是否会更好,因为它是一个与应用程序A相关的功能,如果我们只在应用程序A上实现它?
任何帮助将不胜感激。提前谢谢。