Meta と Amazon Cognito を ID プロバイダーとして使用して、Application Load Balancer のユーザーを認証する方法を教えてください。

所要時間2分
0

Application Load Balancer 認証の ID プロバイダー (IDP) として Meta と Amazon Cognito を使用したいと考えています。

簡単な説明

アプリケーションにアクセスするユーザーを安全に認証するには、Application Load Balancer を設定します。アプリケーションがビジネスロジックに集中できるようにするには、ロードバランサーにユーザーを認証させます。バックエンドターゲットは、ユーザープロファイルや支払いなど、他のビジネスロジックまたはサービスのみを実行します。Application Load Balancer は認証ステップのみを担当し、ユーザー情報は保存しません。ユーザーを管理および認証するように Amazon Cognito と Meta を設定します。

解決策

Meta アプリケーションをセットアップする

  1. Meta のウェブサイトで開発者向け Meta にアクセスします。
  2. ナビゲーションペインで [マイアプリ] を選択します。
  3. [アプリの作成] を選択します。
  4. [Facebook アカウントでのログインをユーザーに許可する] を選択し、[次へ] を選択します。
  5. [詳細] ページで、次の情報を入力します。
    [アプリ名を追加] に、アプリケーションの名前を入力します。
    [アプリの連絡先メールアドレス] に、アプリケーションのメールアドレスを入力します。
    (オプション) ビジネスアカウントの場合は、ビジネスアカウントをアプリケーションに接続します。
  6. [アプリの作成] を選択します。
  7. ナビゲーションペインで、[製品] を選択します。
  8. [製品] ページの [Facebook ログイン] で、[設定] を選択し、[Quickstart] を選択します。
  9. 次の手順を実行します。
    アプリケーションプラットフォームには [ウェブ] を選択します。
    [サイト URL] に ウェブサイトのドメインを入力し、[保存] を選択してから [続行] を選択します。
    [JavaScript 用 Facebook SDK をセットアップ][次へ] を選択します。
    [ログインステータスの確認][次へ] を選択します。
    [Facebook ログインボタンを追加][次へ] を選択します。

設定を続けるには、Amazon Cognito IdP をセットアップする必要があります。

Application Load Balancer と Amazon Cognito を設定する

  1. Amazon Elastic Compute Cloud (Amazon EC2) コンソールを開きます。
  2. Application Load Balancer を作成します
  3. ナビゲーションペインの [ロードバランシング] で、[ロードバランサー] を選択します。
  4. 作成した Application Load Balancer を選択します。
  5. [リスナー] を選択し、[リスナーを追加] を選択します。
  6. HTTPS: 443 または HTTPS プロトコルを使用する任意のポートを選択します。
  7. [アクション] で、 [認証] を選択します。
  8. [Amazon Cognito] を選択します。
  9. [Cognito ユーザープール] で、[新規作成] を選択します。
  10. [ソーシャル IDP] では、[Facebook] を選択します。
  11. Meta のウェブサイトで開発者向け Meta にアクセスします。
  12. 作成したアプリケーションを選択します。
  13. [設定] を選択してから、[基本] を選択します。
  14. アプリ ID をメモしておきます。
  15. [表示] を選択します。
  16. Facebook のパスワードを入力し、[アプリシークレット] を選択します。
  17. Amazon EC2 コンソールの Amazon Cognito セットアップページに戻ります。次に、[アプリ ID][アプリシークレット] を入力します。
  18. [スコープの承認] には、[public_profile] と入力します。
  19. [ドメインプレフィックス] で、Amazon Cognito AWS リージョナル DNS サービスに追加する一意の名前を選択します。たとえば、ドメインプレフィックスとして「abc」を指定した場合、完全修飾ドメイン名 (FQDN) は https://abc.auth.us-east-2.amazoncognito.com/ になります。
  20. [Cognito ユーザープールの作成] を選択します。
  21. 前のステップで指定した一意の名前を入力します。
  22. HTTPS リスナーにルールを追加します。[転送先] を選択し、Application Load Balancer のターゲットグループ名を指定します。
  23. [保存] を選択します。

Meta アプリケーションのセットアップを完了する

  1. 作成した Meta アプリケーションを開きます。
  2. ナビゲーションペインで、[製品] を選択します。
  3. [製品] ページの [Facebook ログイン] で、[構成] を選択し、[設定] を選択します。
  4. [クライアント OAuth 設定][有効な OAuth リダイレクト URI] に Amazon Cognito FQDN を入力します。/oauth2/idresponse をサフィックスとして FQDN に追加します。例えば、https://abc.auth.eu-west-1.amazoncognito.com/oauth2/idpresponse となります。
  5. [変更を保存] を選択します。
  6. ナビゲーションペインの [設定] で、[基本] を選択します。
  7. [アプリのドメイン] には、Application Load Balancer を指すドメイン名を入力します。
  8. [変更を保存] を選択します。

Amazon Cognito のセットアップを完了する

  1. Amazon Cognito コンソール を開きます。
  2. ナビゲーションペインで、**[ユーザープール] **を選択します。
  3. 設定したユーザープールを選択します。
  4. [アプリクライアント設定] を選択します。
  5. [コールバック URL] には、Application Load Balancer を指すドメイン名を入力します。次に、/oauth2/idpresponse をサフィックスとして追加します。例えば、https://www.example.com/oauth2/idpresponse となります。

**重要:**Facebook はサードパーティのアプリケーションです。設定手順は時間の経過ともに変更される可能性があります。最新のアップデートについては、Meta のウェブサイトにある Meta のドキュメントを参照してください。

関連情報

Application Load Balancer を使用してユーザーを認証する

Application Load Balancer の組み込み認証でログインを簡素化

Facebook (ID プール)

ソーシャル IdP に登録する

AWS公式
AWS公式更新しました 8ヶ月前
コメントはありません

関連するコンテンツ