前編はこちら
【AWS】Cognito ユーザプールをAzure ADをIdPとして構築する(前編)
構築Step
- 前編
- 1. AWS Cognito ユーザプール構築
- 2. AWS AppClient構築、設定
- 後編
- 3. Azure AD構築、Enterprise Application構築
- 4. AWS Cognito ユーザプール IdP設定
3. Azure AD構築、Enterprise Application構築
※ 1~5は新規Azure AD構築のため、Skip可能
- 1. Azure portalへログインし、画面左上ハンバーガーメニューから"Azure Active Directory"を選択、"テナントの切り替え"を押下、以下画面で"作成"ボタンを押下
- 2. そのまま"次:構成>"を押下
- 3. 任意の組織名、初期ドメイン名を入力、"次:確認および作成>"を押下
- 4. 作成内容を確認し、"作成"ボタンを押下
- 5. テナントが作成されたことを確認、リンクから新テナントへ移動
- (必要なら"追加">"ユーザー"から新規ユーザを登録)
- 6.画面左メニューから"エンタープライズアプリケーション"を選択、"新しいアプリケーション"を押下
- 7. "独自のアプリケーションを作成"を押下
- 8. アプリ名を入力、"ギャラリーに見つからないその他のアプリケーションを統合します"を選択
- 9. メニューから"シングルサインオン"を選択、"SAML"を押下
- 10. "基本的なSAML構成"の鉛筆アイコンを押下
- 11. 識別子、応答URLを以下の要領で入力、保存
- 12. SAML署名証明書でフェデレーションメタデータXMLからダウンロード
- 13. 画面左メニューから"ユーザとグループ">"ユーザまたはグループの追加"を選択、ユーザを追加、割り当てを実施
- 14. 追加されたことを確認
4. AWS Cognito ユーザプール IdP設定
- 1. Cognito ユーザプールへアクセス、メニューから"IDプロバイダー"を選択、"SAML"を選択
- 2. ダウンロードしたフェデレーションメタデータXMLをアップロード、任意のプロバイダ名を入力
- 3. メニューで"属性マッピング">"SAML"を選択、SAML属性欄に"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress" を入力、保存
- 4. メニューから"アプリクライアントの設定"を選択、"有効なIDプロバイダ"で作成したプロバイダ名を選択
動作確認
-
以下のURLを入力、プロバイダ名を押下
- https://<ドメイン名>.auth.ap-northeast-1.amazoncognito.com/login?response_type=code&client_id=<アプリクライアントID>&redirect_uri=<リダイレクト先URL>
- ※ 今回、リダイレクトURLはhttp://localhost:8080
-
正常に認証されるとリダイレクトURLへ指定した画面へ遷移、APIのレスポンスにSAML Responseが含まれていることを確認
まとめ
Cognitoユーザプールの設定とAzure ADのテナント構築から設定を実施し、IdPをAzure ADとしたCognitoユーザプールを構築することができました。
前編は以下
【AWS】Cognito ユーザプールをAzure ADをIdPとして構築する(前編)
参考サイト
前後編に渡って以下サイトを参考にさせていただきました。