ユーザープールマルチテナンシーのベストプラクティス - Amazon Cognito

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ユーザープールマルチテナンシーのベストプラクティス

アプリ内のテナントごとにユーザープールを作成します。このアプローチは各テナントを最大限に分離します。テナントごとに異なる設定を実装することができます。ユーザープールによるテナントの分離により、マッピングに user-to-tenant柔軟性がもたらされます。同じユーザーに複数のプロファイルを作成することができます。ただし、ユーザーはそれぞれ、アクセスできるテナントごとに個別にサインアップする必要があります。

このアプローチを使用すると、テナントごとにホストされた UI を個別に設定し、アプリケーションのテナント固有のインスタンスにユーザーをリダイレクトできます。このアプローチを使用して、Amazon API Gateway などのバックエンドサービスと統合することもできます。

次の図は、専用ユーザープールを持つ各テナントを示しています。

各テナントに one-to-one独自のユーザープールがあるマルチテナントモデルの図。
ユーザープールマルチテナンシーを実装するタイミング

分離とカスタマイズが主な懸念事項である場合。ユーザーとテナントの関係は、複数のユーザープールを持つアーキテクチャでは複雑な場合があります。教育テナントが 2 つある例を考えてみましょう。同じユーザーは、あるアプリでアクセスが制限された学生であり、別のアプリで高レベルのアクセス許可を持つ教師である可能性があります。1 つのアプリMFAで を要求するが、別のアプリでは要求しない、または別のパスワードポリシーを持つ場合があります。ローカルユーザーはホストされた UI を使用してユーザープール内の複数のアプリケーションクライアントにサインインできるため、複数のテナントにホストされた UI でサインインさせたい場合にも、ユーザープールのマルチテナンシーが最適です。

労力レベル

このアプローチを使用するには、高い開発労力と運用労力がかかります。アプリケーションファミリーの一貫した予測可能な結果を確保するためには、Amazon Cognito リソースをオートメーションツールと統合し、認証アーキテクチャの複雑さが増すにつれてベースラインを維持する必要があります。アプリケーション用に 1 つの開始場所を作成する場合は、ユーザーインターフェイス (UI) 要素を構築して、ユーザーを正しいリソースにルーティングする最初の決定をキャプチャする必要があります。