1回答
- 新しい順
- 投票が多い順
- コメントが多い順
0
Cognito Hosted UIで「Login pages unavailable」と表示される問題について回答します。
- 「Login pages unavailable」エラーの考えられる原因:
- ドメイン設定の問題: Cognito User Poolにドメインが正しく設定されていない可能性があります。Hosted UIを使用するには、有効なドメイン設定が必須です。
- アプリクライアント設定の不備: アプリクライアントの設定で、選択したIDプロバイダー(Cognitoユーザープールディレクトリ、Google)が正しく関連付けられていない可能性があります。
- リダイレクトURLの設定ミス: 許可されたコールバックURLやサインアウトURLが正しく設定されていない場合、Hosted UIが機能しないことがあります。
- 追加で有効化が必要な項目:
- アプリクライアント設定の確認: アプリクライアントの「Edit managed login pages configuration」から、IDプロバイダーのドロップダウンリストで「Cognito ユーザープールディレクトリ」と「Google」が選択されていることを確認してください。
- ドメイン設定の完了: Cognitoユーザープールにドメインが設定されていることを確認してください。これはHosted UIの前提条件です。
- OAuth設定の確認: リダイレクトURLが正しく設定されていることを確認してください。
- フェデレーションターゲットの設定: 必要に応じて、設定に「federationTarget: 'COGNITO_USER_POOLS'」を追加することを検討してください。
これらの設定を確認・修正することで、Hosted UIの問題が解決する可能性があります。
Sources
Federated login button not showing with Cognito Hosted UI | AWS re:Post
Cognito Managed Login - No button on login page for external IDP | AWS re:Post
回答済み 1年前
関連するコンテンツ
質問済み 2年前

ご回答ありがとうございます。
確認済み・問題なしの項目は以下になります。
ドメイン設定 → Cognito User Pool に正しくドメインが設定されています。
アプリクライアントとIDプロバイダーの関連付け → 対象のアプリクライアントにて「Cognito ユーザープールディレクトリ」と「Google」が選択されています。
リダイレクトURL / サインアウトURL → 現在はローカル環境 (http://localhost:3000/...) で正しく設定済み。
OAuth スコープ → email, openid, profile が設定されており問題なし。
クライアントシークレットの設定 → クライアントシークレットは未設定(SPA用として正しい構成)。
IDプロバイダー(Google)の連携 → Google 側の設定も完了し、Cognito との連携も確認済み。
環境の混在 → 現時点では 1 つの環境のみで、設定の混在はありません。
不明点(ご教授いただきたい点)は以下になります。
Hosted UI URL の構造 → Hosted UI にアクセスするための URL 構造について、正しい形を確認したいです。 たとえば、response_type や client_id、redirect_uri など、必要なパラメータの正しい構成をご教示いただけますか?
federationTarget の設定 → federationTarget: 'COGNITO_USER_POOLS' の設定が必要かどうか、また、どのように設定すればよいか詳しく知りたいです。現在は Amplify を利用予定ですが、具体的な設定方法についてアドバイスいただけると助かります。
以上、よろしくお願いいたします。