

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

# エッセンシャルプランの機能
<a name="feature-plans-features-essentials"></a>

エッセンシャル機能プランには、Amazon Cognito ユーザープールの最良かつ最新の機能のほとんどが含まれています。ライトプランからエッセンシャルプランに切り替えると、マネージドログインページの新機能、E メールメッセージのワンタイムパスワードを使用した多要素認証、拡張パスワードポリシー、カスタムアクセストークンを利用できます。ユーザープールの新機能を常に利用するには、ユーザープールのエッセンシャルプランを選択してください。

以下のセクションでは、エッセンシャルプランを使用してアプリケーションに追加できる機能を簡単に紹介します。詳細については、以降のページを参照してください。

**その他のリソース**
+ アクセストークンのカスタマイズ: [トークン生成前の Lambda トリガー](user-pool-lambda-pre-token-generation.md)
+ E メール MFA: [SMS メッセージ MFA と E メールメッセージ MFA](user-pool-settings-mfa-sms-email-message.md)
+ パスワード履歴: [パスワード、アカウント復旧、パスワードポリシー](managing-users-passwords.md)
+ 拡張 UI: [マネージドログインページにブランディングを適用する](managed-login-branding.md)

**Topics**
+ [アクセストークンのカスタマイズ](#features-access-token-customization)
+ [E メール MFA](#features-email-mfa)
+ [パスワードの再利用防止](#features-password-reuse)
+ [マネージドログインのホストされたサインインおよび認可サーバー](#features-enhanced-ui)
+ [選択ベースの認証](#features-user-auth)

## アクセストークンのカスタマイズ
<a name="features-access-token-customization"></a>

ユーザープール[アクセストークン](https://datatracker.ietf.org/doc/html/rfc6749#section-1.4)は、[API へのアクセス](cognito-user-pools-define-resource-servers.md)、[userInfo エンドポイント](userinfo-endpoint.md)からのユーザー属性の取得、または外部システムの[グループメンバーシップ](cognito-user-pools-user-groups.md)の確立に必要なアクセス許可をアプリケーションに付与します。高度なシナリオでは、実行時にアプリケーションが決定する追加の仮パラメータを、ユーザープールディレクトリのデフォルトのアクセストークンデータに追加することが考えられます。例えば、[Amazon Verified Permissions](amazon-cognito-authorization-with-avp.md) を使用してユーザーの API アクセス許可を検証し、それに応じてアクセストークンのスコープを調整する場合です。

エッセンシャルプランは、[トークン生成前トリガー](user-pool-lambda-pre-token-generation.md)の既存の機能に機能を追加します。下位の階層プランでは、追加のクレーム、ロール、グループメンバーシップを使用して ID トークンをカスタマイズできます。エッセンシャルでは、アクセストークンのクレーム、ロール、グループメンバーシップ、スコープをカスタマイズする、新しいバージョンのトリガー入力イベントを追加します。アクセストークンのカスタマイズは、イベントバージョン 3 で Machine to Machine (M2M) の[クライアント認証情報の付与](federation-endpoints-oauth-grants.md)に利用できます。

**アクセストークンをカスタマイズするには**

1. エッセンシャル機能プランまたはプラス機能プランを選択します。

1. トリガーのための Lambda 関数を作成します。サンプル関数を使用するには、[Node.js に設定](https://docs.aws.amazon.com/lambda/latest/dg/lambda-nodejs.html)します。

1. Lambda 関数に[サンプルコード](user-pool-lambda-pre-token-generation.md#aws-lambda-triggers-pre-token-generation-example-version-2-overview)を入力するか、独自のコードを作成します。関数は、Amazon Cognito からのリクエストオブジェクトを処理し、含める変更を返す必要があります。

1. 新しい機能を[バージョン 2 または 3](user-pool-lambda-pre-token-generation.md#user-pool-lambda-pre-token-generation-event-versions) のトークン生成前トリガーとして割り当てます。バージョン 2 のイベントは、ユーザー ID のアクセストークンをカスタマイズします。バージョン 3 は、ユーザー ID とマシン ID のアクセストークンをカスタマイズします。

**詳細情報**
+ [アクセストークンのカスタマイズ](user-pool-lambda-pre-token-generation.md#user-pool-lambda-pre-token-generation-accesstoken)
+ [Amazon Cognito ユーザープールでアクセストークンをカスタマイズする方法](https://aws.amazon.com/blogs/security/how-to-customize-access-tokens-in-amazon-cognito-user-pools/)

## E メール MFA
<a name="features-email-mfa"></a>

Amazon Cognito ユーザープールは、多要素認証 (MFA) の 2 番目の要素として E メールを使用するように設定できます。E メール MFA を使用すると、Amazon Cognito は、認証プロセスを完了するために入力する必要がある検証コードを含む E メールをユーザーに送信できます。これにより、ユーザーログインフローに重要なセキュリティレイヤーが追加されます。E メールベースの MFA を有効にするには、デフォルトの E メール設定ではなく、[Amazon SES E メール送信設定](user-pool-email.md#user-pool-email-developer)を使用するようにユーザープールを設定する必要があります。

ユーザーが E メールメッセージによる MFA を選択すると、Amazon Cognito は、サインインの試行の都度、ユーザーの登録済み E メールアドレスに 1 回限りの検証コードを送信します。その後、認証フローを完了してアクセスするには、このコードをユーザープールに返す必要があります。これにより、ユーザーのユーザー名とパスワードが漏えいした場合でも、アプリケーションリソースにアクセスする前に、E メールで送信されたコードという追加の要素を提供する必要があるように設定されます。

詳細については、「[SMS メッセージ MFA と E メールメッセージ MFA](user-pool-settings-mfa-sms-email-message.md)」を参照してください。以下は、E メール MFA でのユーザープールとユーザーを設定する方法の概要です。

**Amazon Cognito コンソールで E メール MFA を設定するには**

1. エッセンシャル機能プランまたはプラス機能プランを選択します。

1. ユーザープールの **[サインイン]** メニューで、**[多要素認証]** を編集します。

1. 設定する **[MFA 強制適用]** のレベルを選択します。**[MFA を要求する] **にすると、API のユーザーは MFA を使用して設定、確認、サインインのためのチャレンジを自動的に受け取ります。MFA を必要とするユーザープールでは、マネージドログインが MFA 要素を選択して設定するようユーザーに求めます。**[オプションの MFA]** にすると、アプリケーションは、MFA の設定と、E メール MFA のユーザー希望を設定するオプションをユーザーに提供する必要があります。

1. **[MFA の方法]** で、**[E メールメッセージ]** をオプションの 1 つとして選択します。

**詳細情報**
+ [SMS メッセージ MFA と E メールメッセージ MFA](user-pool-settings-mfa-sms-email-message.md)

## パスワードの再利用防止
<a name="features-password-reuse"></a>

デフォルトでは、Amazon Cognito ユーザープールのパスワードポリシーは、パスワードの長さと文字タイプの要件、および仮パスワードの有効期限を設定します。エッセンシャルプランでは、パスワード履歴を強制する機能が追加されます。ユーザーがパスワードのリセットを試みると、ユーザープールは、ユーザーが以前のパスワードに設定できなくなるようにできます。パスワードポリシーの設定の詳細については、「[ユーザープールのパスワードの追加要件](managing-users-passwords.md#user-pool-settings-policies)」を参照してください。以下は、パスワード履歴ポリシーを使用してユーザープールを設定する方法の概要です。

**Amazon Cognito コンソールでパスワード履歴を設定するには**

1. エッセンシャル機能プランまたはプラス機能プランを選択します。

1. ユーザープールの **[認証方法]** メニューで、**[パスワードポリシー]** を見つけて **[編集]** を選択します。

1. 使用可能な他のオプションを設定し、**[以前のパスワードの使用の防止]** の値を設定します。

**詳細情報**
+ [パスワード、アカウント復旧、パスワードポリシー](managing-users-passwords.md)

## マネージドログインのホストされたサインインおよび認可サーバー
<a name="features-enhanced-ui"></a>

Amazon Cognito ユーザープールには、OpenID Connect (OIDC) IdP、サードパーティ IdP のサービスプロバイダーまたは依拠しているパーティ、サインアップとサインインのための公開ユーザーインタラクティブページといった機能をサポートするオプションのウェブページがあります。これらのページは、まとめて*マネージドログイン*と呼ばれます。ユーザープールのドメインを選択すると、Amazon Cognito は、これらのページを自動的にアクティブ化します。ライトプランでは、ホストされた UI が表示されます。エッセンシャルプランでは、この高度なバージョンのサインアップページとサインインページが表示されます。

マネージドログインページには、ブランディングとスタイルをカスタマイズするための、より多くの機能とオプションを備えたクリーンな最新のインターフェイスがあります。エッセンシャルプランは、マネージドログインへのアクセスを可能にする最下位のプランです。

**Amazon Cognito コンソールでマネージドログインを設定するには**

1. **[設定]** メニューで、エッセンシャル機能プランまたはプラス機能プランを選択します。

1. **[ドメイン]** メニューで、ユーザープールに[ドメインを割り当て](cognito-user-pools-assign-domain.md)、**[マネージドログイン]** の **[ブランディングバージョン]** を選択します。

1. **[マネージドログイン]**メニューの **[スタイル]** タブで、**[スタイルを作成]** を選択して、スタイルをアプリケーションクライアントに割り当てるか、新しいアプリケーションクライアントを作成します。

**詳細情報**
+ [ユーザープールのマネージドログイン](cognito-user-pools-managed-login.md)

## 選択ベースの認証
<a name="features-user-auth"></a>

エッセンシャル階層は、拡張 UI および SDK ベースの API オペレーションに、認証オペレーション用の新しい*認証フロー*を導入します。このフローは*選択ベースの認証*です。選択ベースの認証とは、ユーザーの認証の開始方法として、アプリケーション側でサインイン方法を宣言するのではなく、可能なサインイン方法をクエリして選択することから始める方法です。選択ベースの認証をサポートし、ユーザー名パスワード、パスワードなし、パスキーによる認証を有効にするようにユーザープールを設定できます。API の場合、これは `USER_AUTH` フローです。

**Amazon Cognito コンソールで選択ベースの認証を設定するには**

1. エッセンシャル機能プランまたはプラス機能プランを選択します。

1. ユーザープールの **[サインイン]** メニューで、**[選択ベースのサインインのオプション]** を編集します。選択ベースの認証で有効にする認証方法を選択して設定します。

1. ユーザープールの **[認証方法]** メニューで、サインインオペレーションの設定を編集します。

**詳細情報**
+ [Amazon Cognito ユーザープールによる認証](authentication.md)