Web およびクラウド アプリケーションのデプロイに使用される、サービスとしての Azure プラットフォーム。
こんにちは 中川 晃二
確かに、これは優れた SaaS 設計パターンであり、完全に実現可能です。
各クライアントが Microsoft Entra 外部 ID または従来の SAML/OIDC フェデレーションを介して独自の IdP (Azure AD、Okta など) を使用して認証できるようにするマルチテナント SaaS アプリケーションを使用し、社内 (運用) ユーザーには 1 つの Entra テナントを使用します。
推奨される方法:
- ベンダーテナント:社内ユーザー、管理機能、SaaS アプリの登録を管理します。
- 顧客テナント:アプリでは、データとアクセスはテナントIDによって概念的に分離されており、各顧客は独自のIdPを使用してログインします。
ベストプラクティス:
- バックエンドでテナントベースの認証を適用し、トークン(iss、aud、tid)を厳密に検証します。
- テナント固有の顧客データ(テナントID列、テナントごとのスキーマ、またはテナントごとのDB)。
- 新規テナントのオンボーディングとオフボーディングのプロセスを自動化します。
- 顧客テナントに対しては、サービス原則として最小限の権限を持つロールを使用します。
したがって、コンプライアンス上完全な分離が求められる場合にのみ専用の Entra テナントを提供し、外部 ID またはフェデレーションを介して各顧客の IdP を統合し、マルチテナント アプリ登録を含む SaaS プラットフォームには単一の Entra テナントを使用します。
英語から翻訳しているので文法的な間違いがあったらごめんなさい。
さらにご質問がございましたら、お気軽にお問い合わせください。
解決策が役に立った場合は、回答を受け入れ、感謝の印として 👍 で投票してください。