

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

# アダプティブ認証の使用
<a name="cognito-user-pool-settings-adaptive-authentication"></a>

アダプティブ認証では、リスクレベルの上昇に対応して、疑わしいサインインをブロックする、または 2 番目の要素認証を追加するようにユーザープールを設定できます。Amazon Cognito はサインインの試行ごとに、サインインリクエストが侵害されたソースからのものである可能性についてリスクスコアを生成します。このリスクスコアは、アプリケーションが提供するデバイスとユーザーの要因、および Amazon Cognito がリクエストから派生するその他の要因に基づいています。Amazon Cognito によるリスク評価に影響する要素には、IP アドレスとユーザーエージェント、ユーザーエージェント、および他のサインイン試行からの地理的な距離があります。アダプティブ認証は、Amazon Cognito がユーザーのセッションでリスクを検出し、ユーザーがまだ MFA メソッドを選択していない場合に、ユーザープール内のユーザーに対して多要素認証 (MFA) を有効にする、または多要素認証 (MFA) を要求することができます。ユーザーに MFA を有効にすると、アダプティブ認証の設定方法にかかわらず、認証中に必ず 2 つ目の要素を提供または設定するように求めるチャレンジが常に表示されます。ユーザーの観点から見ると、アプリは MFA の設定を支援し、また、オプションとして、Amazon Cognito では、ユーザーが追加の要素を設定するまで、ユーザーが再度サインインできないようにすることもできます。

Amazon Cognito は、サインイン試行、試行のリスクレベル、および失敗したチャレンジに関するメトリクスを Amazon CloudWatch にパブリッシュします。詳細については、「[脅威保護メトリクスの表示](metrics-for-cognito-user-pools.md#user-pool-settings-viewing-threat-protection-metrics)」を参照してください。

アダプティブ認証をユーザープールに追加するには、「[脅威保護を備えた高度なセキュリティ](cognito-user-pool-settings-threat-protection.md)」を参照してください。

**Topics**
+ [アダプティブ認証の概要](#security-cognito-user-pool-settings-adaptive-authentication-overview)
+ [API リクエストへのユーザーデバイスおよびセッションデータの追加](#user-pool-settings-adaptive-authentication-device-fingerprint)
+ [ユーザーイベント履歴の表示とエクスポート](#user-pool-settings-adaptive-authentication-event-user-history)
+ [イベントフィードバックを提供します](#user-pool-settings-adaptive-authentication-feedback)
+ [通知メッセージの送信](#user-pool-settings-adaptive-authentication-messages)

## アダプティブ認証の概要
<a name="security-cognito-user-pool-settings-adaptive-authentication-overview"></a>

Amazon Cognito コンソールの **[脅威保護]** メニューで、アダプティブ認証の設定を選択できます。これには、リスクレベル別に実行するアクション、ユーザーへの通知メッセージのカスタマイズなどが含まれます。すべてのアプリケーションクライアントにグローバルな脅威保護設定を割り当てる一方、個々のアプリケーションクライアントにはクライアントレベルの設定を適用できます。

Amazon Cognito アダプティブ認証は、各ユーザーセッションに**「高」**、**「中」**、**「低」**、**「リスクなし」**のいずれかのリスクレベルを割り当てます。

**[Enforcement method]** (強制実行メソッド) を **[Audit-only]** (監査専用) から **[Full-function]** (完全な機能) に変更する場合は、選択肢を慎重に検討してください。リスクレベルに適用する自動応答は、Amazon Cognito が同じ特性を持つ後続のユーザーセッションに割り当てるリスクレベルに影響します。例えば、Amazon Cognito が最初にリスクが高いと評価したユーザーセッションに何もしないか、**[Allow]** (許可) を選択すると、Amazon Cognito では同様のセッションのリスクが低いと見なします。


**リスクレベルごとに、以下のオプションから選択できます。**  

|  オプション  |  アクション  | 
| --- | --- | 
| 許可 | ユーザーは、追加要素なしでサインインできます。 | 
| オプションの MFA | 第 2 要素を設定しているユーザーは、サインインするために第 2 要素のチャレンジを完了する必要があります。SMS の電話番号と TOTP ソフトウェアトークンが利用可能な第 2 要素です。2 番目の要素が設定されていないユーザーは、1 つの認証情報のみでサインインできます。 | 
| MFA が必要 | 第 2 要素を設定しているユーザーは、サインインするために第 2 要素のチャレンジを完了する必要があります。Amazon Cognito は、第 2 要素が設定されていないユーザーのサインインをブロックします。 | 
| ブロック | Amazon Cognito は、指定されたリスクレベルですべてのサインイン試行をブロックします。 | 

**注記**  
SMS を 2 番目の認証要素として使用するために電話番号を検証する必要はありません。

## API リクエストへのユーザーデバイスおよびセッションデータの追加
<a name="user-pool-settings-adaptive-authentication-device-fingerprint"></a>

API を使用してユーザーのサインアップ、サインイン、パスワードのリセットを行う際に、ユーザーのセッションに関する情報を収集し、Amazon Cognito の脅威保護に渡すことができます。この情報には、ユーザーの IP アドレスと一意のデバイス識別子が含まれます。

ユーザーと Amazon Cognito の間に、プロキシサービスやアプリケーションサーバーなど、中間ネットワークデバイスがある場合があります。ユーザーのコンテキストデータを収集して Amazon Cognito に渡すことで、アダプティブ認証がサーバーやプロキシではなく、ユーザーエンドポイントの特性に基づいてリスクを計算できます。クライアント側アプリが Amazon Cognito API オペレーションを直接呼び出す場合、アダプティブ認証は送信元 IP アドレスを自動的に記録します。ただし、デバイスのフィンガープリントも収集しない限り、`user-agent` などの他のデバイス情報は記録されません。

このデータを Amazon Cognito コンテキストデータ収集ライブラリで生成して、Amazon Cognito の脅威保護に送信するには、[ContextData](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ContextDataType.html) パラメータと [UserContextData](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UserContextDataType.html) パラメータを使用します。コンテキストデータ収集ライブラリは AWS SDKs に含まれています。詳細については、「[Amazon Cognito の認証と認可を、ウェブアプリケーションとモバイルアプリケーションに統合する](cognito-integrate-apps.md)」を参照してください。プラス機能プランを使用している場合は、`ContextData` を送信できます。詳細については、「[脅威保護の設定](cognito-user-pool-settings-threat-protection.md#cognito-user-pool-settings-configure-threat-protection)」を参照してください。

アプリケーションサーバーから以下の Amazon Cognito 認証 API オペレーションを呼び出す場合、`ContextData` パラメータにユーザーのデバイスの IP を渡します。また、サーバー名、サーバーパス、およびエンコードされたデバイスフィンガープリントデータを渡します。
+ [AdminInitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminInitiateAuth.html)
+ [AdminRespondToAuthChallenge](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminRespondToAuthChallenge.html)

Amazon Cognito の認証されていない API オペレーションを呼び出すと、Amazon Cognito の脅威保護に `UserContextData` を送信できます。このデータには、`EncodedData` パラメータのデバイスフィンガープリントが含まれます。また、次の条件を満たす場合、`UserContextData` に `IpAddress` パラメータを送信できます。
+ ユーザープールをプラス機能プランで使用しています。詳細については、「[ユーザープールの機能プラン](cognito-sign-in-feature-plans.md)」を参照してください。
+ アプリクライアントにはクライアントシークレットがあります。詳細については、「[アプリケーションクライアントによるアプリケーション固有の設定](user-pool-settings-client-apps.md)」を参照してください。
+ アプリクライアントで **[Accept additional user context data]** (追加のユーザーコンテキストデータを受け入れる) をアクティブ化しました。詳細については、「[追加のユーザーコンテキストデータの受け入れ (AWS マネジメントコンソール)](#user-pool-settings-adaptive-authentication-accept-user-context-data)」を参照してください。

アプリは、以下の Amazon Cognito の認証されていない API オペレーションで、`UserContextData` パラメータにエンコードされたデバイスフィンガープリントデータとユーザーのデバイスの IP アドレスを入力できます。
+ [InitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_InitiateAuth.html)
+ [RespondToAuthChallenge](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RespondToAuthChallenge.html)
+ [SignUp](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_SignUp.html)
+ [ConfirmSignUp](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ConfirmSignUp.html)
+ [ForgotPassword](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ForgotPassword.html)
+ [ConfirmForgotPassword](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ConfirmForgotPassword.html)
+ [ResendConfirmationCode](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ResendConfirmationCode.html)

### 追加のユーザーコンテキストデータの受け入れ (AWS マネジメントコンソール)
<a name="user-pool-settings-adaptive-authentication-accept-user-context-data"></a>

ユーザープールは **[Accept additional user context data]** (追加のユーザーコンテキストデータを受け入れる) 機能をアクティブ化すると、`UserContextData` パラメータで IP アドレスを受け入れます。次の場合は、この機能をアクティブ化する必要はありません。
+ ユーザーは、[AdminInitiateAuth](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminInitiateAuth.html) のような認証された API オペレーションでのみサインインし、`ContextData` パラメータを使用します。
+ 認証されていない API オペレーションから、IP アドレスではなく、デバイスのフィンガープリントのみを Amazon Cognito の脅威保護に送信します。

Amazon Cognito コンソールでアプリクライアントを次のように更新し、追加のユーザーコンテキストデータのサポートを追加します。

1. [Amazon Cognito コンソール](https://console.aws.amazon.com/cognito/home)にサインインします。

1. ナビゲーションペインで [**ユーザープールの管理**] を選択してから、編集するユーザープールを選択します。

1. **[アプリケーションクライアント]** メニューを選択します。

1. アプリケーションクライアントを選択または作成します。詳細については、「[ユーザープールのアプリクライアントの設定](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-app-idp-settings.html)」を参照してください。

1. **[App client information]** (アプリのクライアント情報) コンテナから **[Edit]** (編集) を選択します。

1. アプリクライアントの **[Advanced authentication settings]** (詳細な認証設定) で、**[Accept additional user context data]** (追加のユーザーコンテキストデータを受け入れる) を選択します。

1. **[Save changes]** (変更の保存) をクリックします。

Amazon Cognito API でユーザーコンテキストデータを受け入れるようにアプリクライアントを設定するには、[CreateUserPoolClient](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_CreateUserPoolClient.html) または [UpdateUserPoolClient](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserPoolClient.html) リクエストで `EnablePropagateAdditionalUserContextData` を `true` に設定します。ウェブまたはモバイルアプリで脅威保護を使用する方法については、「[アプリケーションにおける脅威保護のためのデータ収集](user-pool-settings-viewing-threat-protection-app.md)」を参照してください。アプリがサーバーから Amazon Cognito を呼び出すときに、クライアント側からユーザーコンテキストデータを収集します。以下は、JavaScript SDK メソッド `getData` 使用する例です。

```
var EncodedData = AmazonCognitoAdvancedSecurityData.getData(username, userPoolId, clientId);
```

アダプティブ認証を使用するようにアプリを設計する場合は、最新の Amazon Cognito SDK をアプリに組み込むことをお勧めします。SDK の最新バージョンでは、デバイス ID、モデル、およびタイムゾーンなどのデバイスフィンガープリント情報を収集します。Amazon Cognito SDK の詳細については、「[ユーザープール SDK のインストール](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-sdk-links.html)」を参照してください。Amazon Cognito の脅威保護では、アプリケーションが正しい形式で送信したイベントのみを保存し、リスクスコアを割り当てます。Amazon Cognito がエラーレスポンスを返す場合は、リクエストに有効なシークレットハッシュが含まれていることと、`IPaddress` パラメータが、有効な IPv4 または IPv6 アドレスであることを確認します。

**`ContextData` および `UserContextData` リソース**
+ AWS Amplify Android 用 SDK: [GetUserContextData](https://github.com/aws-amplify/aws-sdk-android/blob/main/aws-android-sdk-cognitoidentityprovider/src/main/java/com/amazonaws/mobileconnectors/cognitoidentityprovider/CognitoUserPool.java#L626)
+ AWS Amplify SDK for iOS: [userContextData](https://github.com/aws-amplify/aws-sdk-ios/blob/d3cd4fa0086b526f2f5c9c6c58880c9da7004c66/AWSCognitoIdentityProviderASF/AWSCognitoIdentityProviderASF.m#L21)
+ JavaScript: [amazon-cognito-advanced-security-data.min.js](https://amazon-cognito-assets.us-east-1.amazoncognito.com/amazon-cognito-advanced-security-data.min.js)

## ユーザーイベント履歴の表示とエクスポート
<a name="user-pool-settings-adaptive-authentication-event-user-history"></a>

脅威保護を有効にすると、Amazon Cognito は、ユーザーによる認証イベントごとにログを生成します。デフォルトでは、Amazon Cognito コンソールの **[ユーザー]** メニューまたは [AdminListUserAuthEvents](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminListUserAuthEvents.html) API オペレーションを使用して、ユーザーログを表示できます。また、これらのイベントを、CloudWatch Logs、Amazon S3、Amazon Data Firehose などの外部システムにエクスポートすることもできます。エクスポート機能を使用すると、アプリケーション内のユーザーアクティビティに関するセキュリティ情報について、独自のセキュリティ分析システムにアクセスさせることが容易になります。

**Topics**
+ [ユーザーイベント履歴の表示 (AWS マネジメントコンソール)](#user-pool-settings-adaptive-authentication-event-user-history-console)
+ [ユーザーイベント履歴の表示 (API/CLI)](#user-pool-settings-adaptive-authentication-event-user-history-api-cli)
+ [ユーザー認証イベントのエクスポート](#user-pool-settings-adaptive-authentication-event-user-history-exporting)

### ユーザーイベント履歴の表示 (AWS マネジメントコンソール)
<a name="user-pool-settings-adaptive-authentication-event-user-history-console"></a>

ユーザーのサインイン履歴を表示するには、Amazon Cognito コンソールの **[ユーザー]** メニューでユーザーを選択できます。Amazon Cognito は、ユーザーイベント履歴を 2 年間保持します。

![\[ユーザーイベント履歴\]](http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/images/cup-advanced-security-event-history.png)


各サインインイベントにはイベント ID があります。イベントには、場所、デバイスの詳細、およびリスク検出結果など、対応するコンテキストデータもあります。

また、イベント ID を Amazon Cognito がイベントを記録した時点で発行したトークンと関連付けることができます。ID とアクセストークンには、ペイロードにこのイベント ID が含まれます。Amazon Cognito はまた、更新トークンの使用を元のイベント ID に関連付けます。元のイベント ID は、Amazon Cognito トークンの発行につながったサインインイベントのイベント ID まで追跡できます。システム内のトークンの使用は、特定の認証イベントまで追跡できます。詳細については、「[ユーザープール JSON ウェブトークン (JWT) の理解](amazon-cognito-user-pools-using-tokens-with-identity-providers.md)」を参照してください。

### ユーザーイベント履歴の表示 (API/CLI)
<a name="user-pool-settings-adaptive-authentication-event-user-history-api-cli"></a>

Amazon Cognito API オペレーション [AdminListUserAuthEvents](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminListUserAuthEvents.html) を使用して、または [admin-list-user-auth-events](https://docs.aws.amazon.com/cli/latest/reference/cognito-idp/admin-list-user-auth-events.html) を使用して AWS Command Line Interface (AWS CLI) を使用して、ユーザーイベント履歴をクエリできます。

------
#### [ AdminListUserAuthEvents request ]

次の `AdminListUserAuthEvents` 用のリクエスト本文は、1 人のユーザーの最新のアクティビティログを返します。

```
{
  "UserPoolId": "us-west-2_EXAMPLE", 
  "Username": "myexampleuser", 
  "MaxResults": 1
}
```

------
#### [ admin-list-user-auth-events request ]

次の `admin-list-user-auth-events` 用のリクエストは、1 人のユーザーの最新のアクティビティログを返します。

```
aws cognito-idp admin-list-user-auth-events --max-results 1 --username myexampleuser --user-pool-id us-west-2_EXAMPLE
```

------
#### [ Response ]

Amazon Cognito は、両方のリクエストに同じ JSON レスポンス本文を返します。以下は、リスク要因が含まれていないことが検出されたマネージドログインのサインインイベントのレスポンス例です。

```
{
    "AuthEvents": [
        {
            "EventId": "[event ID]",
            "EventType": "SignIn",
            "CreationDate": "[Timestamp]",
            "EventResponse": "Pass",
            "EventRisk": {
                "RiskDecision": "NoRisk",
                "CompromisedCredentialsDetected": false
            },
            "ChallengeResponses": [
                {
                    "ChallengeName": "Password",
                    "ChallengeResponse": "Success"
                }
            ],
            "EventContextData": {
                "IpAddress": "192.168.2.1",
                "DeviceName": "Chrome 125, Windows 10",
                "Timezone": "-07:00",
                "City": "Bellevue",
                "Country": "United States"
            }
        }
    ],
    "NextToken": "[event ID]#[Timestamp]"
}
```

------

### ユーザー認証イベントのエクスポート
<a name="user-pool-settings-adaptive-authentication-event-user-history-exporting"></a>

脅威保護から外部システムにユーザーイベントをエクスポートするようにユーザープールを設定します。サポートされている外部システムである Amazon S3、CloudWatch Logs、Amazon Data Firehose は、送信または取得するデータの AWS 請求にコストを追加する可能性があります。詳細については、「[脅威保護ユーザーアクティビティログのエクスポート](exporting-quotas-and-usage.md#exporting-quotas-and-usage-user-activity)」を参照してください。

------
#### [ AWS マネジメントコンソール ]

1. [Amazon Cognito コンソール](https://console.aws.amazon.com/cognito/home)にサインインします。

1. **[User Pools]** (ユーザープール) を選択します。

1. リストから既存のユーザープールを選択するか、[ユーザープールを作成](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-as-user-directory.html)します。

1. **[ログストリーミング]** メニューを選択します。**[Edit]** (編集) を選択します。

1. **[ログ記録ステータス]** で、**[ユーザーアクティビティログのエクスポートをアクティブ化]** の横にあるチェックボックスをオンにします。

1. **[ログ記録先]** で、ログを処理する AWS のサービス を **[CloudWatch ロググループ]**、**[Amazon Data Firehose ストリーム]**、または **[S3 バケット]** の中から選択します。

1. 選択すると、対応するリソースタイプがリソースセレクターに入力されます。リストからロググループ、ストリーム、またはバケットを選択します。**[作成]** ボタンを選択して、選択したサービスの AWS マネジメントコンソール に移動し、新しいリソースを作成することもできます。

1. **[変更を保存]** を選択します。

------
#### [ API ]

ユーザーアクティビティログの送信先のタイプを 1 つ選択します。

以下は、Firehose ストリームをログの送信先として設定する `SetLogDeliveryConfiguration` リクエスト本文の例です。

```
{
   "LogConfigurations": [
      {
         "EventSource": "userAuthEvents",
         "FirehoseConfiguration": {
            "StreamArn": "arn:aws:firehose:us-west-2:123456789012:deliverystream/example-user-pool-activity-exported"
         },
         "LogLevel": "INFO"
      }
   ],
   "UserPoolId": "us-west-2_EXAMPLE"
}
```

以下は、Amazon S3 バケットをログの送信先として設定する `SetLogDeliveryConfiguration` リクエスト本文の例です。

```
{
   "LogConfigurations": [
      {
         "EventSource": "userAuthEvents",
         "S3Configuration": { 
            "BucketArn": "arn:aws:s3:::amzn-s3-demo-logging-bucket"
         },
         "LogLevel": "INFO"
      }
   ],
   "UserPoolId": "us-west-2_EXAMPLE"
}
```

以下は、CloudWatch ロググループをログの送信先として設定する `SetLogDeliveryConfiguration` リクエスト本文の例です。

```
{
   "LogConfigurations": [
      {
         "EventSource": "userAuthEvents",
         "CloudWatchLogsConfiguration": { 
            "LogGroupArn": "arn:aws:logs:us-west-2:123456789012:log-group:DOC-EXAMPLE-LOG-GROUP"
         },
         "LogLevel": "INFO"
      }
   ],
   "UserPoolId": "us-west-2_EXAMPLE"
}
```

------

## イベントフィードバックを提供します
<a name="user-pool-settings-adaptive-authentication-feedback"></a>

イベントフィードバックは、リアルタイムでリスクの評価に反映され、リスク評価アルゴリズムを経時的に向上させます。ユーザーは、Amazon Cognito コンソールおよび API を使用して、サインイン試行の妥当性に関するフィードバックを提供できます。

**注記**  
イベントフィードバックは、Amazon Cognito が同じ特性を持つ後続のユーザーセッションに割り当てるリスクレベルに影響します。

Amazon Cognito コンソールで、**[ユーザー]** メニューからユーザーを選択し、**[イベントフィードバックを提供]** を選択します。イベントの詳細を確認して、**[Set as valid]** (有効として設定) または **[Set as invalid]** (無効として設定) できます。

コンソールでは、**[ユーザー]** メニューのユーザー詳細にサインイン履歴が一覧表示されます。エントリを選択すると、イベントを有効または無効としてマークできます。また、ユーザープール API オペレーション [AdminUpdateAuthEventFeedback](https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminUpdateAuthEventFeedback.html) および AWS CLI コマンド [admin-update-auth-event-feedback](https://docs.aws.amazon.com/cli/latest/reference/cognito-idp/admin-update-auth-event-feedback.html) を通じてフィードバックを提供することもできます。

Amazon Cognito コンソールで **[Set as valid]** (有効として設定) を選択するか、API で `valid` の `FeedbackValue` 値を指定するとき、Amazon Cognito がある程度のリスクを評価したユーザーセッションを信頼することを Amazon Cognito に伝えます。Amazon Cognito コンソールで **[Set as invalid]** (無効として設定) を選択するか、API で `invalid` の `FeedbackValue` 値を指定するとき、ユーザーセッションを信頼しないこと、または Amazon Cognito が十分に高いリスクレベルを評価したとは考えないことを Amazon Cognito に伝えます。

## 通知メッセージの送信
<a name="user-pool-settings-adaptive-authentication-messages"></a>

脅威保護により、Amazon Cognito はユーザーにリスクの高いサインイン試行を通知できます。Amazon Cognito では、サインインが有効か無効かを示すリンクを選択するようユーザーに促すこともできます。Amazon Cognito はこのフィードバックを使用して、ユーザープールのリスク検出精度を向上させます。

**注記**  
Amazon Cognito は、ユーザーのアクションによって自動リスク対応 (サインインのブロック、サインインの許可、MFA をオプションに設定、または MFA を必須に設定) が生成された場合にのみ、ユーザーに通知メッセージを送信します。リクエストによっては、リスクレベルが割り当てられていても、アダプティブ認証の自動リスク対応が生成されない場合があります。このようなリクエストの場合、ユーザープールは通知を送信しません。例えば、誤ったパスワードがリスク評価とともにログに記録される場合がありますが、Amazon Cognito による対応では、アダプティブ認証ルールを適用せずに、サインインを失敗させます。

**[Automatic risk response]** (自動リスク対応) セクションで、低、中、高のリスクケースに応じて **[Notify Users]** (ユーザーに通知) を選択します。

![\[ユーザーに通知する\]](http://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/images/cup-adaptive-auth.png)


Amazon Cognito は、ユーザーが E メールアドレスを検証したかどうかに関係なく、E メール通知をユーザーに送信します。

通知 E メールメッセージをカスタマイズして、これらのメッセージのプレーンテキストと HTML の両バージョンを提供できます。E メール通知をカスタマイズするには、脅威保護設定の **[アダプティブ認証メッセージ]** から **[E メールテンプレート]** を開きます。E メールテンプレートの詳細については、「[メッセージテンプレート](cognito-user-pool-settings-message-customizations.md#cognito-user-pool-settings-message-templates)」を参照してください。