View a markdown version of this page

Amazon Cognito ユーザープール用の SMS メッセージ設定 - Amazon Cognito

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

Amazon Cognito ユーザープール用の SMS メッセージ設定

ユーザープールの Amazon Cognito イベントには、Amazon Cognito がユーザーに SMS テキストメッセージを送信する結果となるものがあります。例えば、電話番号の検証を必須とするようにユーザープールを設定している場合、ユーザーがアプリケーションの新しいアカウントにサインアップする、またはパスワードをリセットする場合に Amazon Cognito が SMS テキストメッセージを送信します。SMS テキストメッセージを開始するアクションに応じて、メッセージには検証コード、一時的なパスワード、またはウェルカムメッセージが含まれます。

Amazon Cognito は、次のいずれかの設定で SMS メッセージを送信できます。

  • Amazon Simple Notification Service (Amazon SNS) – Amazon Cognito は Amazon SNS を呼び出し、SMS メッセージをルーティングします AWS End User Messaging SMS。

  • AWS End User Messaging SMS direct – Amazon Cognito は、Amazon SNS を仲介者として使用せずに AWS End User Messaging SMS 直接呼び出します。このオプションは、Amazon Cognito が利用可能なほとんどの AWS リージョン で使用できます。例外については、「AWS End User Messaging SMS ダイレクトパスのリージョン設定」を参照してください。

ユーザープールは、一度に 1 つの SMS 設定を使用します。Amazon SNS と AWS End User Messaging SMS 直接設定は相互に排他的です。一方の設定を設定すると、Amazon Cognito はもう一方の設定をクリアします。これは、CreateUserPoolUpdateUserPool、および SetUserPoolMfaConfig オペレーションに適用されます。

Amazon SNS SMS は、 AWS リージョン 「」に記載されている で利用できますAmazon SNS パスリージョンの設定。他の のユーザープールから SMS メッセージを送信するには AWS リージョン、 AWS End User Messaging SMS を直接使用します。

Amazon Cognito 経由で初めてテキストメッセージを送信する場合、 はサンドボックス環境 AWS End User Messaging SMS に配置します。サンドボックス環境では、SMS テキストメッセージのアプリケーションをテストできます。サンドボックスでは、送信元 ID がある場合は限定数の検証済み送信先電話番号にメッセージを送信し、そうでない場合は送信をシミュレートできます。

注記

2024 年 11 月、 は Amazon SNS SMS メッセージングを AWS に置き換えました AWS End User Messaging SMS。Amazon SNS 設定パスを使用すると、ユーザープールは Amazon SNS Publish オペレーションを使用して SMS メッセージを開始します。これはパススルーです AWS End User Messaging SMS。このパスでは、 のアクセス許可を設定する必要がありますsns:Publish。直接 AWS End User Messaging SMS 設定パスを使用する場合、Amazon Cognito は オペレーションを AWS End User Messaging SMS SendTextMessage呼び出し、 のアクセス許可を設定する必要がありますsms-voice:SendTextMessage

AWS End User Messaging SMS は SMS テキストメッセージの料金を請求します。詳細については、AWS End User Messaging SMS 料金表を参照してください。

Amazon Cognito は、ユーザーが入力できるコードを含む SMS メッセージをユーザーに送信します。次の表は、SMS メッセージを生成できるイベントを示しています。

メッセージオプション

アクティビティ API オペレーション: 配信オプション 形式オプション カスタマイズ可能 メッセージテンプレート
Forgot password ForgotPassword, AdminResetUserPassword Email, SMS code Yes 検証メッセージ
Invitation AdminCreateUser Email, SMS code Yes 招待メッセージ
Self-registration SignUp, ResendConfirmationCode Email, SMS code, link Yes 検証メッセージ
Email address or phone number verification UpdateUserAttributes, AdminUpdateUserAttributes, GetUserAttributeVerificationCode Email, SMS code Yes 検証メッセージ
Multi-factor authentication (MFA) AdminInitiateAuth, InitiateAuth Email¹, SMS, authenticator app code Yes² MFA メッセージ
One-time password authentication (OTP) AdminInitiateAuth, InitiateAuth Email¹, SMS code Yes MFA メッセージ³

¹ エッセンシャル以上の機能プランAmazon SES E メール設定が必要です。

² SMS メッセージおよび E メールメッセージの場合。

³ ユーザープールで MFA が必須またはオプションである場合にのみ、MFA メッセージテンプレートをカスタマイズできます。MFA が非アクティブの場合、Amazon Cognito はデフォルトのテンプレートを使用してワンタイムパスワードを送信します。

AWS End User Messaging SMS は SMS メッセージに対して課金します。詳細については、AWS End User Messaging SMS 料金表を参照してください。

MFA の詳細については、「SMS メッセージ MFA と E メールメッセージ MFA」を参照してください。

Amazon Cognito は、1 つの送信先に対する短期間での E メールや SMS メッセージの追加配信を防止する場合があります。ユーザープールが影響を受けていると思われる場合は、メッセージ配信エラーのログを設定および確認してから、アカウントチームにお問い合わせください。

Amazon SNS と の選択 AWS End User Messaging SMS

Amazon Cognito ユーザープールは、Amazon SNS または の 2 つのパスを介して SMS メッセージを送信できます。 AWS End User Messaging SMS 新しいユーザープールの場合は、 AWS End User Messaging SMS 直接パスを使用します。Amazon SNS SMS は、固定セットでのみ使用できます AWS リージョン。ダイレクト AWS End User Messaging SMS パスは追加のリージョンをサポートし、Amazon SNS パスがサポートしない機能を公開します。どちらのパスもメッセージを配信します AWS End User Messaging SMS。

次の表は、2 つの SMS 設定パスを比較したものです。

機能 Amazon SNS パス AWS End User Messaging SMS ダイレクトパス
リージョンの可用性 Amazon SNS パスリージョンテーブルに AWS リージョン リストされている で使用可能 Amazon Cognito AWS リージョン が利用可能なほとんどの で使用できます。Amazon SNS パスのみが使用可能なリージョンは、「」に記載されていますAWS End User Messaging SMS ダイレクトパスのリージョン設定
統合 Amazon Cognito は Amazon SNS Publish オペレーションを呼び出し、 に渡します。 AWS End User Messaging SMS Amazon Cognito が AWS End User Messaging SMS SendTextMessage オペレーションを直接呼び出す
IAM 許可 sns:Publish sms-voice:SendTextMessage
設定セット Amazon Cognito では設定できません イベントログと送信先の ConfigurationSetNameフィールドを設定する
発信元 ID Amazon Cognito では設定できません OriginationIdentity フィールドを設定する
クロスリージョン送信 SnsRegion フィールドを設定する サポートされていません
India DLT 登録 Amazon Cognito では設定できません InEntityId フィールドと InTemplateIdフィールドを設定する
不正防止 (保護) アカウントデフォルト保護設定が適用されます アカウントデフォルトが適用されます。設定セットを使用して、特定のユースケースに保護設定を適用することもできます。
注記

デフォルトの AWS End User Messaging SMS Protect 設定は、Amazon Cognito からのメッセージを含むすべてのメッセージに適用されます。特定のユースケースに保護設定を適用するには、設定セットにリンクし、直接 AWS End User Messaging SMS パスを使用します。詳細については、「」の「不正保護 AWS End User Messaging SMS」を参照してください。

Amazon Cognito ユーザープール API の SMS 設定

Amazon Cognito ユーザープール API の SmsConfigurationType オブジェクトには、ユーザープールの SMS 設定が含まれています。このオブジェクトには次の設定パスがあります。

Amazon SNS パス

SnsCallerArn を を呼び出すアクセス許可を Amazon Cognito に付与する IAM ロールの ARN に設定しますsns:Publish。オプションで SnsRegionと を設定しますExternalId。 AWS End User Messaging SMS 直接パスを使用する場合、 SnsCallerArnパラメータはオプションです。

AWS End User Messaging SMS ダイレクトパス

タイプ の EumsSms オブジェクトを設定しますEumsSmsConfigurationType。このオブジェクトには次のメンバーがあります。

  • CallerArn (必須) – Amazon Cognito に を呼び出すアクセス許可を付与する IAM ロールの ARNsms-voice:SendTextMessage

  • ExternalId (オプション) – IAM ロールの信頼ポリシーの外部 ID。この値は、混乱した代理の防止を提供します。

  • OriginationIdentity (オプション) – 送信に使用する電話番号、プール、または送信者 ID。

  • ConfigurationSetName (オプション) – 使用する AWS End User Messaging SMS 設定セット。

  • InEntityId (オプション) – India DLT 登録のエンティティ登録 ID。インドの受信者に送信するために必要です。

  • InTemplateId (オプション) – India DLT 登録のテンプレート登録 ID。インドの受信者に送信するために必要です。

  • Region (オプション) – AWS End User Messaging SMS リソース AWS リージョン の 。詳細については、「SMS メッセージの AWS リージョン を選択する」を参照してください。

詳細については、Amazon Cognito ユーザープール API リファレンスのSmsConfigurationType」を参照してください。 Amazon Cognito

ベストプラクティス

世界中で一方的な SMS トラフィックの量が多いため、一部の政府は SMS メッセージの送信者と受信者の間に障壁を課しています。SMS メッセージを MFA やユーザーアップデートに使用する場合は、メッセージが確実に送られるように追加の手順を踏む必要があります。また、ユーザーが住んでいる可能性のある国の SMS メッセージ関連の規制を監視し、SMS メッセージの設定を最新の状態に保つ必要があります。詳細については、「AWS End User Messaging SMS ユーザーガイド」の「SMS および MMS の国別の機能と制限」を参照してください。

SMS メッセージを使用してユーザーを認証および検証することは、セキュリティ上のベストプラクティスではありません。電話番号は所有者が変わる場合があり、ユーザーの MFA の所有している要素を確実に表さないかもしれません。代わりに、アプリまたはサードパーティーの IdP で TOTP MFA を実装してください。また、カスタム認証チャレンジの Lambda トリガー を使って、追加のカスタム認証要素を作成することもできます。

SMS メッセージ配信アーキテクチャの保護については、以下のリンクを参照してください。

Amazon Cognito ユーザープールでの SMS メッセージングの初回セットアップ

Amazon Cognito はAmazon SNS (および間接的 AWS End User Messaging SMS) または AWS End User Messaging SMS 直接を使用して、ユーザープールから SMS メッセージを送信します。カスタム SMS 送信者の Lambda トリガー を使用して、独自のリソースを使用し、SMS メッセージを送信することもできます。特定の で SMS テキストメッセージを初めてセットアップすると AWS リージョン、 はそのリージョン AWS アカウント の SMS サンドボックスに AWS End User Messaging SMS を配置します。 AWS End User Messaging SMS はサンドボックスを使用して不正使用を防止し、コンプライアンス要件を満たします。 AWS アカウント がサンドボックスにある場合、 はいくつかの制限 AWS End User Messaging SMS を適用します。例えば、発信元 ID がある場合、最大 10 個の検証済み送信先番号にテキストメッセージを送信したり、発信元 ID なしでメッセージの送信をシミュレートしたりできます。がサンドボックスに AWS アカウント 残っている間は、本番環境で SMS メッセージを送信しないでください。サンドボックスに置かれている間、Amazon Cognito はユーザーの電話番号にメッセージを送信できません。

Amazon Cognito が SMS メッセージを送信するために使用できる IAM ロールを準備する AWS End User Messaging SMS

ユーザープールから SMS メッセージを送信すると、Amazon Cognito はアカウントの IAM ロールを引き受けます。ロールに必要なアクセス許可は、選択した SMS 設定パスによって異なります。

  • Amazon SNS パス – ロールは アクセスsns:Publish許可を付与する必要があります。Amazon Cognito は、このアクセス許可を使用して Amazon SNS 経由で SMS メッセージを送信します。

  • AWS End User Messaging SMS direct path – ロールは アクセスsms-voice:SendTextMessage許可を付与する必要があります。Amazon Cognito は、このアクセス許可を使用して AWS End User Messaging SMS 直接 を呼び出します。

Amazon Cognito コンソールでは、ユーザープールの [認証方法] メニューの [SMS] の下で [IAM ロールの選択] を設定するか、この選択をユーザープール作成ウィザードで行うことができます。

次の IAM ロール信頼ポリシーの例では、Amazon Cognito ユーザープールに、ロールを引き受ける制限付きの機能を付与しています。Amazon Cognito は、次の条件を満たす場合にのみロールを引き受けることができます。

  • assume-role オペレーションは、aws:SourceArn 条件のユーザープールに代わって行われます。

  • assume-role オペレーションは、aws:SourceAccount 条件によって設定された AWS アカウント のユーザープールに代わって行われます。

  • assume-role オペレーションには、sts:externalId 条件の外部 ID が含まれます。

これらの信頼ポリシー条件は、Amazon SNS パスと AWS End User Messaging SMS 直接パスの両方に適用されます。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "cognito-idp.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:cognito-idp:us-west-2:111122223333:userpool/us-west-2_EXAMPLE" } } } ] }

条件 aws:SourceArn の値には、正確なユーザープール ARN またはワイルドカード ARN を指定できます。 AWS マネジメントコンソール または DescribeUserPool API リクエストを使用して、ユーザープールの ARNs を検索します。 DescribeUserPool

多要素認証用の SMS メッセージを送信するには、IAM ロールの信頼ポリシーに sts:ExternalId 条件が含まれている必要があります。この条件の値は、ユーザープールの SmsConfigurationExternalId プロパティと一致する必要があります。Amazon Cognito コンソールでユーザープールの作成プロセス中に IAM ロールを作成すると、Amazon Cognito は、ロールとユーザープール設定で外部 ID をセットアップします。これは、既存の IAM ロールを使用する場合には適用されません。

UpdateUserPool API リクエストのユーザープール ExternalId パラメータを更新したうえで、IAM ロールの信頼ポリシーを同じ値の sts:externalId 条件で更新する必要があります。API を使用して元の設定を保持するようにユーザープールを更新する方法については、「ユーザープールとアプリケーションクライアントの設定更新」を参照してください。

IAM ロールおよび信頼ポリシーの詳細については、「AWS Identity and Access Management ユーザーガイド」の「ロールに関する用語と概念」を参照してください。

ユーザープールの AWS End User Messaging SMS 直接 SMS を設定するには

次の手順を使用して、SMS メッセージを直接送信するようにユーザープールを設定します AWS End User Messaging SMS。この設定では、SmsConfigurationTypeEumsSms オブジェクトを使用します。

AWS End User Messaging SMS ダイレクト SMS メッセージングを設定するには
  1. 送信元の で AWS リージョン 送信 AWS End User Messaging SMS 元 ID を作成または識別します。発信元 ID は、電話番号、送信者 ID、またはプールです。送信ルールを適用する AWS End User Messaging SMS 設定セットを作成することもできます。電話番号をリクエストする手順については、AWS End User Messaging SMS 「 ユーザーガイド」の「電話番号をリクエストする」を参照してください。

  2. Amazon Cognito が呼び出すために引き受けることができる IAM ロールを作成します AWS End User Messaging SMS。このロールの信頼ポリシーは Amazon SNS パスと同じです。aws:SourceArnaws:SourceAccount、および sts:ExternalId条件を含める必要があります。信頼ポリシーの詳細については、「」を参照してくださいAmazon Cognito が SMS メッセージを送信するために使用できる IAM ロールを準備する AWS End User Messaging SMS

  3. 次の ID (アクセス許可) ポリシーをロールにアタッチします。このポリシーは、ユーザープールが送信元の発信元 ID sms-voice:SendTextMessageに対して を呼び出すアクセス許可を Amazon Cognito に付与します。最小特権のプラクティスとして、電話番号、電話プール、または送信者 ID の ARN に Resource要素をスコープします。サンプル ARN を発信元 ID の ARN に置き換えます。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sms-voice:SendTextMessage" ], "Resource": "arn:aws:sms-voice:us-east-1:123456789012:phone-number/phone-a1b2c3d4e5f6EXAMPLE" } ] }

    発信元 ID ARN は、ID タイプに応じて、次のいずれかの形式を使用します。

    • 電話番号 – arn:partition:sms-voice:region:account:phone-number/phoneNumberId

    • 電話プール – arn:partition:sms-voice:region:account:pool/poolId

    • 送信者 ID – arn:partition:sms-voice:region:account:sender-id/senderId/isoCountryCode

    重要

    ポリシーが Resource要素を発信元 ID ARN にスコープする場合は、 OriginationIdentityフィールドを同じ ARN に設定しますarn:aws:sms-voice:us-east-1:123456789012:phone-number/phone-a1b2c3d4e5f6EXAMPLE。たとえば、。E.164 形式の電話番号 ( など+12065550100) がスコープポリシーと一致しないため、リクエストは承認されず、Amazon Cognito は SMS メッセージを送信できません。

  4. インドの受信者に SMS メッセージを送信する場合は、分散台帳技術 (DLT) ポータルに DLT エンティティ ID とテンプレート ID を登録します。エンティティ ID を として指定InEntityIdし、テンプレート ID を EumsSms設定InTemplateIdで指定します。India DLT 登録の詳細については、AWS End User Messaging SMS 「 ユーザーガイド」の「インドの受信者に SMS メッセージを送信するための特別な要件」を参照してください。

  5. 設定した送信元 ID と IAM ロールを使用して、 AWS End User Messaging SMS SendTextMessage API オペレーションを直接呼び出して設定をテストします。設定をユーザープールに割り当てる前に、テストメッセージが配信されていることを確認します。

  6. ユーザープールに EumsSms オブジェクトを設定します。この設定は、CreateUserPoolUpdateUserPool、または SetUserPoolMfaConfig リクエストで設定できます。CallerArn パラメータは必須です。次の例は、最小EumsSms設定を示しています。

    "EumsSms": { "CallerArn": "arn:aws:iam::123456789012:role/service-role/CognitoEumsSmsRole", "ExternalId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

    特定の送信元 ID から送信するか、設定セットを使用するには、 OriginationIdentity および ConfigurationSetNameパラメータを含めます。

AWS End User Messaging SMS 直接 SMS の IAM アクセス許可

の IAM ロールには、cognito-idp.amazonaws.comサービスプリンシパルが引き受けることを許可する信頼ポリシーCallerArnが必要です。Amazon SNS パスと同じ信頼ポリシー構造を使用します (「」を参照Amazon Cognito が SMS メッセージを送信するために使用できる IAM ロールを準備する AWS End User Messaging SMS)。このロールには、送信元 ID ARN の範囲を sms-voice:SendTextMessage に付与するアクセス許可ポリシーも必要です (「」のセットアップ手順を参照ユーザープールの AWS End User Messaging SMS 直接 SMS を設定するには)。

SMS メッセージの AWS リージョン を選択する

注記

の SMS メッセージが で管理 AWS されるようになりましたAWS End User Messaging SMS

Amazon SNS パスリージョンの設定

一部の では AWS リージョン、Amazon Cognito SMS メッセージに使用する Amazon SNS リソースを含むリージョンを選択できます。 Amazon Cognito アジアパシフィック (ソウル) を除く AWS リージョン Amazon Cognito が利用可能なすべての で、ユーザープールを作成した AWS リージョン で Amazon SNS リソースを使用できます。リージョンを選択したときに SMS メッセージングを高速かつ信頼性の高いものにするには、ユーザープールと同じリージョンの Amazon SNS リソースを使用します。

新規ユーザープールウィザードのメッセージ配信の設定ステップで、SMS リソースのリージョンを選択します。既存のユーザープールの [認証方法] メニューで [SMS] の下にある [編集] を選択することもできます。

起動時に、一部の AWS リージョン Amazon Cognito は代替リージョンに Amazon SNS リソースを含む SMS メッセージを送信しました。希望するリージョンを設定するには、ユーザープールの SmsConfigurationType オブジェクトの SnsRegion パラメータを使用します。次の表から Amazon Cognito リージョン に Amazon Cognito ユーザープールリソースをプログラムによって作成し、SnsRegion パラメータを提供しない場合、ユーザープールはレガシー Amazon SNS 代替リージョンで Amazon SNS リソースを使用して SMS メッセージを送信します。

アジアパシフィック (ソウル) の Amazon Cognito ユーザープール AWS リージョン は、アジアパシフィック (東京) リージョンの Amazon SNS 設定を使用する必要があります。

Amazon SNS (経由 AWS End User Messaging SMS) は、すべての新しいアカウントの使用量クォータを 1 か月あたり 1.00 USD (USD) に設定します。AmazonCognito で使用する AWS リージョン での支出制限を引き上げた可能性があります。 AWS リージョン Amazon SNS SMS メッセージの を変更する前に、 AWS サポートセンターでクォータ引き上げケースを開き、新しいリージョンの制限を増やします。詳細については、「 AWS End User Messaging SMS ユーザーガイド」の AWS End User Messaging SMS 「MMS および音声サンドボックスから本番環境への移行」を参照してください。

次の表の任意の Amazon Cognito リージョンの SMS メッセージを、対応する SMS メッセージリージョンの AWS End User Messaging SMS リソースで送信できます。

Amazon Cognito リージョン SMS メッセージリージョン

米国東部 (オハイオ)

米国東部 (オハイオ)、米国東部 (バージニア北部)

米国東部 (バージニア北部)

米国東部 (バージニア北部)

米国西部 (北カリフォルニア)

米国西部 (北カリフォルニア)

米国西部 (オレゴン)

米国西部 (オレゴン)

カナダ (中部)

カナダ (中部)、米国東部 (バージニア北部)

カナダ西部 (カルガリー)

カナダ西部 (カルガリー)

メキシコ (中部)

メキシコ (中部)

欧州 (フランクフルト)

欧州 (フランクフルト)、欧州 (アイルランド)

欧州 (ロンドン)

欧州 (ロンドン)、欧州 (アイルランド)

欧州 (アイルランド)

欧州 (アイルランド)

欧州 (パリ)

欧州 (パリ)

欧州 (ストックホルム)

欧州 (ストックホルム)

欧州 (ミラノ)

欧州 (ミラノ)

欧州 (スペイン)

欧州 (スペイン)

欧州 (チューリッヒ)

欧州 (チューリッヒ)

アジアパシフィック (マレーシア)

アジアパシフィック (シンガポール)

アジアパシフィック (タイ)

アジアパシフィック (ムンバイ)

アジアパシフィック (ムンバイ)

アジアパシフィック (ムンバイ)、アジアパシフィック (シンガポール)

アジアパシフィック (ハイデラバード)

アジアパシフィック (ハイデラバード)

アジアパシフィック (香港)

アジアパシフィック (シンガポール)

アジアパシフィック (ソウル)

アジアパシフィック (東京)

アジアパシフィック (シンガポール)

アジアパシフィック (シンガポール)

アジアパシフィック (シドニー)

アジアパシフィック (シドニー)

アジアパシフィック (東京)

アジアパシフィック (東京)

アジアパシフィック (ジャカルタ)

アジアパシフィック (ジャカルタ)

アジアパシフィック (大阪)

アジアパシフィック (大阪)

アジアパシフィック (メルボルン)

アジアパシフィック (メルボルン)

中東 (バーレーン)

中東 (バーレーン)

中東 (アラブ首長国連邦)

中東 (アラブ首長国連邦)

南米 (サンパウロ)

南米 (サンパウロ)

イスラエル (テルアビブ)

イスラエル (テルアビブ)

アフリカ (ケープタウン)

アフリカ (ケープタウン)

AWS End User Messaging SMS ダイレクトパスのリージョン設定

AWS End User Messaging SMS は独自の のセットで使用できます。これは AWS リージョン、Amazon SNS または Amazon Cognito ユーザープールが利用可能なリージョンとは異なる場合があります。現在のリストについては、「 ユーザーガイド」の「サポートされているリージョンと国」を参照してください。 AWS End User Messaging SMS

SmsConfigurationTypeEumsSms オブジェクトの Regionフィールドは、Amazon Cognito AWS リージョン が を呼び出す を設定します AWS End User Messaging SMS。ユーザープールのリージョンで AWS End User Messaging SMS を使用できる必要があります。ユーザープールの リージョン AWS End User Messaging SMS で を使用する Regionと Amazon Cognito を省略するか、ユーザープールの リージョンRegionに明示的に を設定します。Amazon Cognito は他の値を拒否します。

注記

サポートされていない値を Regionに設定すると、CreateUserPoolUpdateUserPool、および SetUserPoolMfaConfigリクエストは で失敗しますInvalidParameterException

注記

AWS End User Messaging SMS ダイレクトパスは、アジアパシフィック (タイ)、アジアパシフィック (香港)、アジアパシフィック (マレーシア) では利用できません AWS リージョン。これらのリージョンのいずれかのユーザープールから SMS メッセージを送信するには、代わりに Amazon SNS パスを使用します。詳細については、「Amazon SNS パスリージョンの設定」を参照してください。

米国の電話番号に SMS メッセージを送信するための発信元 ID を取得する

米国の電話番号に SMS テキストメッセージを送信する場合は、SMS サンドボックステスト環境または本番環境を構築するかどうかにかかわらず、発信元 ID を取得する必要があります。

米国の通信事業者は、米国の電話番号にメッセージを送信する場合に発信元 ID を義務付けています。発信元 ID をまだ取得していない場合は、取得する必要があります。発信元 ID を取得する方法については、「AWS End User Messaging SMS ユーザーガイド」の「電話番号をリクエストする」を参照してください。

同じ に複数の発信元 ID がある場合 AWS リージョン、 は、ショートコード、10DLC、通話料無料番号の優先順位で発信元 ID タイプ AWS End User Messaging SMS を選択します。この優先順位を変更することはできません。詳細については、「AWS End User Messaging SMS に関するよくある質問」を参照してください。

SMS サンドボックスに置かれていることを確認する

次の手順を使用して SMS サンドボックスに移動していることを確認します。本番稼働 AWS リージョン 用 Amazon Cognito ユーザープールがある ごとに繰り返します。

SMS サンドボックスに置かれていることを確認する
  1. Amazon Cognito コンソールに移動します。プロンプトが表示されたら、 AWS 認証情報を入力します。

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

  3. リストから存在するユーザープールを 1 つ選択します。

  4. [認証方法] メニューを選択します。

  5. [SMS configuration] (SMS 設定) セクションで、[Move to Amazon SNS production environment] (Amazon SNS 本番環境に移行する) を展開します。アカウントが SMS サンドボックスに置かれている場合は、以下のメッセージが表示されます。

    SMS メッセージの設定を完了するための AWS のサービス 依存関係を設定する

    このメッセージが表示されない場合は、誰かがアカウントに SMS メッセージを設定しています。「Amazon Cognito でユーザープールのセットアップを完了する」へ進んでください。

  6. [Amazon SNS 本番環境に移行][Amazon SNS] リンクを選択します。これにより、新しいタブで Amazon SNS コンソールが開きます。

  7. サンドボックス環境に置かれていることを確認します。コンソールメッセージには、サンドボックスのステータスと AWS リージョン、次のように表示されます。

    This account is in the SMS sandbox in US East (N. Virginia).

アカウントをサンドボックスから移動する

本番稼働でアプリを使用するには、アカウントを SMS サンドボックスから本番環境に移動します。Amazon Cognito で使用する AWS End User Messaging SMS リソースを含む発信元 ID を に設定 AWS リージョン したら、 が SMS サンドボックスに AWS アカウント 残っている間、米国の電話番号を確認できます。環境が本番環境にある場合、SMS メッセージを送信する前にユーザーの電話番号を確認する必要はありません。

コンソールまたは Amazon SNS AWS End User Messaging SMS コンソールからサンドボックスを終了するリクエストを作成できます。詳細な手順については、「AWS End User Messaging SMS ユーザーガイド」の「SMS サンドボックスからの移動」を参照してください。

でシミュレーター番号または検証済み電話番号を使用する AWS End User Messaging SMS

SMS サンドボックスからアカウントを移動した場合は、このステップをスキップします。

サンドボックス内に残っていて、発信元番号を設定している場合は、検証済みの送信先番号にメッセージを送信できます。検証済みの送信先を設定するには、「AWS End User Messaging SMS ユーザーガイド」の「検証済みの送信先電話番号を追加する」を参照してください。

シミュレートした送信元と送信先を使用してメッセージを送信することもできます。シミュレーターメッセージはログを生成しますが、通信事業者ネットワーク経由で送信されることはありません。[ショートカット] メニューから、[SMS シミュレーターで SMS 送信をテストする] を選択します。詳細については、「AWS End User Messaging SMS ユーザーガイド」の「シミュレーター電話番号」を参照してください。

Amazon Cognito でユーザープールのセットアップを完了する

ユーザープールを作成または編集していたブラウザタブに戻ります。手順を完了します。ユーザープールに SMS 設定が正常に追加されると、Amazon Cognito は内部電話番号にテストメッセージを送信して、設定が機能することを確認します。 はテスト SMS メッセージごとに AWS End User Messaging SMS 課金します。