私は現在、Spring セキュリティとその OAuth 2.0 実装を 2 つのアプリケーションに統合しています。当初、全体的なアーキテクチャは次のとおりでした。
アプリケーション Aはフロントエンド アプリです。それ自体で動作し、独自のドメインに関連するビジネス ロジックを実装します。独自の認証メカニズムがあります (ローカル ユーザー テーブルに基づく)。
また、このユーザーがローカルのadminListテーブルにリストされていて、適切な管理者パスワードを提供している場合に、ローカル ユーザーをアプリケーション A の管理者として昇格させることができる、スーパーパスワードと呼ばれる機能もあります。この機能はsudo に似た機能であり、ユーザーは別のユーザーのコンテキストをエミュレートできます(主にヘルプデスク関連のタスク用)。
アプリケーション Bは、Spring Security に基づく独立したアプリであり、Spring の OAuth 2.0 実装を使用します。これは、他のフロントエンド アプリの中央認証ポイントとして使用します。
その後、すべての認証の問題をアプリケーション A からアプリケーション B に移動することができました。そのため、アプリケーション A のローカル ユーザー テーブルは不要になり、ユーザー認証に関連するすべてがアプリケーション B に移動されました。
残っている唯一のものはスーパーパスワード機能です。この機能を (拡張機能として) アプリケーション B (認証担当) に移動し、アプリケーション B を他のすべてのアプリの汎用認証サーバーとして使用することは可能でしょうか?
はいの場合、Spring セキュリティ/OAuth 2 メカニズムを使用してどのように実現できますか?
それとも、アプリケーション A に関連する機能なので、アプリケーション A のみに実装したままにした方がよいでしょうか?
どんな助けでも大歓迎です。前もって感謝します。