

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

# ユーザープールのドメインを設定する
<a name="cognito-user-pools-assign-domain"></a>

ドメインの設定は、ユーザープールを設定するオプションです。ユーザープールドメインは、ユーザー認証、サードパーティープロバイダーとのフェデレーション、および OpenID Connect (OIDC) フローについての機能をホストします。*マネージドログイン*は、サインアップ、サインイン、パスワード復旧など、主要なオペレーション用の事前構築済みのインターフェイスです。また、Machine to Machine (M2M) 認可、その他の OIDC や OAuth 2.0 の認証と認可フローのために、[承認](authorization-endpoint.md)、[ユーザー情報](userinfo-endpoint.md)、[トークン](token-endpoint.md)など、OpenID Connect (OIDC) の標準エンドポイントもホストします。

ユーザーは、ユーザープールに関連付けられたドメインでマネージドログインページを使用して認証します。このドメインを設定するには、次の 2 つのオプションがあります。デフォルトの Amazon Cognito ホストドメインを使用することも、所有するカスタムドメインを設定することもできます。

カスタムドメインオプションには、柔軟性、セキュリティ、制御のためのオプションが多数用意されています。例えば、使い慣れた組織所有のドメインは、ユーザーの信頼を高めて、サインインプロセスが直感的にできます。ただし、カスタムドメインアプローチには、SSL 証明書の管理や DNS 設定など、追加のオーバーヘッドが必要です。

OIDC 検出エンドポイント (エンドポイント URL 用の `/.well-known/openid-configuration`、およびトークン署名キー用の `/.well-known/jwks.json`) はドメインでホストされません。詳細については、「[ID プロバイダーと依拠しているパーティーエンドポイント](federation-endpoints.md)」を参照してください。

ユーザープールのドメインを設定および管理する方法を理解することは、認証をアプリケーションに統合するための重要なステップです。ユーザープール API と AWS SDK を使用してサインインすることは、ドメインを設定する代わりに使用できます。API ベースのモデルは API レスポンスに直接トークンを配信しますが、ユーザープールの拡張機能を OIDC IdP として使用する実装の場合は、ドメインを設定する必要があります。ユーザープールで使用できる認証モデルの詳細については、「[API、OIDC、マネージドログインページの認証についての理解](authentication-flows-public-server-side.md#user-pools-API-operations)」を参照してください。

**Topics**
+ [ユーザープールドメインについて知っておくべきこと](#cognito-user-pools-assign-domain-things-to-know)
+ [マネージドログインに Amazon Cognito プレフィックスドメインを使用する](cognito-user-pools-assign-domain-prefix.md)
+ [マネージドログインに独自のドメインを使用する](cognito-user-pools-add-custom-domain.md)

## ユーザープールドメインについて知っておくべきこと
<a name="cognito-user-pools-assign-domain-things-to-know"></a>

ユーザープールドメインは、アプリケーション内の OIDC の依拠しているパーティー向け、および UI 向けのサービスポイントです。ユーザープールのドメインの実装を計画する場合は、次の詳細を考慮してください。

**予約済みの用語**  
Amazon Cognito プレフィックスドメイン名で `aws`、`amazon`、または `cognito` というテキストを使用することはできません。

**検出エンドポイントが別のドメインにある**  
ユーザープール[検出エンドポイント](federation-endpoints.md)の `.well-known/openid-configuration` および `.well-known/jwks.json` は、ユーザープールのカスタムドメインまたはプレフィックスドメインにはありません。これらのエンドポイントへのパスは次のとおりです。
+ `https://cognito-idp.{{Region}}.amazonaws.com/{{your user pool ID}}/.well-known/openid-configuration`
+ `https://cognito-idp.{{Region}}.amazonaws.com/{{your user pool ID}}/.well-known/jwks.json`

**ドメイン変更の所要時間**  
Amazon Cognito がプレフィックスドメインのブランディングバージョンを起動または更新するまでに最大 1 分かかる場合があります。カスタムドメインへの変更は、反映されるまでに最大 5 分かかる場合があります。新しいカスタムドメインは、反映されるまで最大 1 時間かかる場合があります。

**カスタムドメインとプレフィックスドメインを同時に**  
カスタムドメインと が所有するプレフィックスドメインの両方を使用してユーザープールを設定できます AWS。ユーザープール[検出エンドポイント](federation-endpoints.md)は別のドメインでホストされるため、*カスタムドメイン*にのみ対応します。例えば、`openid-configuration` は `"https://auth.example.com/oauth2/authorize"` の `"authorization_endpoint"` に 1 つの値を提供します。

ユーザープールにカスタムドメインとプレフィックスドメインの両方がある場合、OIDC プロバイダーのすべての機能でカスタムドメインを使用できます。この設定を持つユーザープールのプレフィックスドメインには検出エンドポイントやトークン署名キーエンドポイントがないため、それに応じて使用する必要があります。

**パスキーの依拠しているパーティの ID として優先されるカスタムドメイン**  
[パスキー](amazon-cognito-user-pools-authentication-flow-methods.md#amazon-cognito-user-pools-authentication-flow-methods-passkey)でユーザープール認証を設定するときは、依拠しているパーティ (RP) の ID を設定する必要があります。カスタムドメインとプレフィックスドメインがある場合、RP ID はカスタムドメインとしてのみ設定できます。Amazon Cognito コンソールでプレフィックスドメインを RP ID として設定するには、カスタムドメインを削除するか、プレフィックスドメインの完全修飾ドメイン名 (FQDN) を**サードパーティのドメイン**として入力します。

**ドメイン階層の異なるレベルでカスタムドメインを使用しない**  
*auth.example.com* や *auth2.example.com* など、同じ最上位ドメイン (TLD) にカスタムドメインを持つように個別のユーザープールを設定できます。マネージドログインのセッション Cookie は、カスタムドメインと、*\*.auth.example.com* などのすべてのサブドメインに対して有効です。このため、アプリケーションのユーザーは、親ドメイン*および*サブドメインでマネージドログインにアクセスできません。カスタムドメインが同じ TLD を使用している場合は、同じサブドメインレベルで保持します。

カスタムドメイン *auth.example.com* を持つユーザープールがあるとします。次に、別のユーザープールを作成し、カスタムドメイン *uk.auth.example.com* を割り当てるとします。ユーザーは *auth.example.com* でサインインし、ワイルドカードパス *\*.auth.example.com* でブラウザが任意のウェブサイトに提示する Cookie を取得します。その後、*uk.auth.example.com* へのサインインを試みます。ユーザープールドメインに無効な Cookie が渡され、サインインプロンプトの代わりにエラーが返されます。対照的に、*\*.auth.example.com* 用の Cookie を持つユーザーは、*auth2.example.com* でサインインセッションを開始しても問題ありません。

**ブランディングバージョン**  
ドメインを作成するときは、**ブランディングバージョン**を設定します。オプションは、新しいマネージドログインエクスペリエンスとクラシックのホストされた UI エクスペリエンスです。この選択は、ドメインでサービスをホストするすべてのアプリケーションクライアントに適用されます。