翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
管理者としてのユーザーアカウントの作成
ユーザープールは、インターネット上の誰でもアプリケーション内のユーザープロファイルにサインアップできるという、Customer Identity and Access Management (CIAM) のユーザーディレクトリであるだけでありません。セルフサービスサインアップを無効にすることができます。顧客の本人確認が済んでいる場合に、事前に認可された顧客のみを認めることをお勧めします。プライベート SAML 2.0 または OIDC ID プロバイダーを使用して、アプリケーションの周囲に手動認証ガードレールを配置するには、ユーザーをインポートするか、サインアップ時にユーザーをスクリーニングするか、または、管理 API オペレーションを使用してユーザーを作成します。ユーザーの管理作成ワークフローは、プログラムによることでも、別のシステムに登録した後にユーザーをプロビジョニングすることでも、Amazon Cognito コンソールでケースバイケースやテストベースで作成することでも可能です。
ユーザーを管理者として作成すると、Amazon Cognito は、ユーザーの一時的なパスワードを設定し、ウェルカムメッセージまたは招待メッセージを送信します。招待メッセージのリンクに従って初回のサインインを行い、パスワードを設定し、アカウントを確認できます。次のページでは、新しいユーザーを作成し、ウェルカムメッセージを設定する方法について説明します。ユーザープール API と AWS SDK または CDK を使用したユーザー作成の詳細については、AdminCreateUser」を参照してください。
ユーザープールを作成したら、 AWS Management Console、、 AWS Command Line Interface または Amazon Cognito API を使用してユーザーを作成できます。ユーザープールで新しいユーザーのプロファイルを作成し、サインアップ手順を含めたウェルカムメッセージをそのユーザーに SMS または E メールで送信できます。
以下は、管理者がユーザープール内のユーザーを管理する方法の例です。
-
Amazon Cognito コンソールまたは
AdminCreateUser
API オペレーションを使用して、新しいユーザープロファイルを作成します。 -
ユーザープールとアプリケーションクライアントで、username-and-password、パスワードレス、パスキー、カスタム認証フローを利用できるようにします。
-
ユーザー属性値を設定します。
-
カスタム属性を作成します。
-
AdminCreateUser
API リクエストのイミュータブルなカスタム属性の値を設定します。この機能は Amazon Cognito コンソールでは利用できません。 -
一時パスワードを指定するか、パスワードなしでユーザーを作成するか、Amazon Cognito がパスワードを自動的に生成できるようにします。
-
新しいユーザーを作成し、自動的にアカウントの確認、E メールアドレスの確認、電話番号の確認を行います。
-
カスタムメッセージ、カスタム SMS 送信者、カスタム E メール送信者などの AWS Management Console または Lambda トリガーを使用して、新規ユーザーのカスタム SMS および E メール招待メッセージを指定します。 カスタム SMS 送信者の Lambda トリガー
-
招待メッセージが SMS、E メール、その両方のいずれで送信されるかを指定する。
-
AdminCreateUser
パラメータにRESEND
を指定して、MessageAction
API を呼び出すことで、既存のユーザーにウェルカムメッセージを再送信する。 -
ユーザーの作成時に招待メッセージの送信を抑制します。
-
新しいユーザーアカウントの有効期限を最大 90 日間に指定します。
-
ユーザーに自己サインアップを許可したり、管理者にのみ新しいユーザーの追加を許可したりする。
管理者は、サーバー側のアプリケーションで AWS 認証情報を使用してユーザーにサインインすることもできます。詳細については、「API および SDK 認証の承認モデル」を参照してください。
ユーザー認証フローとユーザーの作成
ユーザーの管理作成には、ユーザープールの設定に応じて異なるオプションがあります。認証フロー、またはユーザーがサインインと MFA に使用できるメソッドは、ユーザーの作成方法とユーザーに送信するメッセージを変更することができます。ユーザープールで使用できる認証フローを次に示します。
-
ユーザー名とパスワード
-
パスキー
-
サードパーティーの IdPs
-
E メールと SMS ワンタイムパスワード (OTPs) を使用したパスワードレス
-
E メール、SMS、認証アプリ OTPs による多要素認証
-
Lambda トリガーによるカスタム認証
これらのサインイン要因を設定する方法の詳細については、「」を参照してくださいAmazon Cognito ユーザープールによる認証。
パスワードなしでユーザーを作成する
ユーザープールでパスワードレスサインインを有効にしている場合は、パスワードなしでユーザーを作成できます。パスワードなしでユーザーを作成するには、使用可能なパスワードレスサインイン係数の属性値を指定する必要があります。例えば、E メール OTP パスワードレスサインインがユーザープールで利用可能な場合は、パスワードと E メールアドレス属性なしでユーザーを作成できます。新しいユーザーが使用できる唯一の認証フローで、パスキーやユーザー名パスワードなどのパスワードが必要な場合は、新しいユーザーごとに一時パスワードを作成または生成する必要があります。
パスワードなしで新しいユーザーを作成するには
-
Amazon Cognito コンソールでパスワードを設定しないを選択する
-
AdminCreateUser
API リクエストのTemporaryPassword
パラメータを省略するか、空白のままにします。
パスワードのないユーザーは自動的に確認されます
通常、新しいユーザーは一時的なパスワードを取得し、作成時に FORCE_CHANGE_PASSWORD
ステータスになります。パスワードなしでユーザーを作成すると、すぐに CONFIRMED
状態になります。CONFIRMED
状態のこれらのユーザーには確認コードを再送信できません。
招待メッセージは、パスワードのないユーザーに対して変更されます。
デフォルトでは、Amazon Cognito Your username is {userName} and your password is {####}.
は、パスワードなしでユーザーを作成すると、ユーザーのパスワードを設定するかどうかを反映するように招待メッセージYour username is {userName}.
をカスタマイズするという招待メッセージを新しいユーザーに送信します。{####}
パスワードレス認証モデルでパスワード変数を省略します。
パスワードレス要素が利用可能な場合、パスワードを自動生成することはできません
E メールまたは電話の OTP パスワードレスサインインをサポートするようにユーザープールを設定している場合、パスワードを自動的に生成することはできません。パスワードを持つユーザーごとに、プロファイルの作成時に一時パスワードを設定する必要があります。
パスワードレスユーザーには、すべての必須属性の値が必要です
パスワードなしでユーザーを作成する場合、リクエストは、ユーザーがユーザープールで必須としてマークしたすべての属性の値を提供する場合にのみ成功します。これは、OTP 配信に必要な電話番号と E メール属性だけでなく、必要な属性にも適用されます。
後で必須属性値を指定するユーザーの作成
ユーザープールに属性を要求しても、アプリケーション内でのユーザー操作中に、管理的にユーザーを作成した後にこれらの属性を収集することもできます。管理者は、一時的なパスワードでユーザーを作成するときに、必要な属性の値を省略できます。パスワードレスユーザーの必須属性値を省略することはできません。
必須属性と一時パスワードの値が欠落しているユーザーは、初回サインイン時に NEW_PASSWORD_REQUIRED チャレンジを受け取ります。その後、 requiredAttributes
パラメータで欠落している必須属性の値を指定できます。すべての必須属性が変更可能な場合にのみ、パスワードと必須属性のないユーザーを作成できます。ユーザーは、必要な属性がサインインするアプリケーションクライアントから書き込み可能な場合にのみ、NEW_PASSWORD_REQUIRED
チャレンジと必須属性値でサインインを完了できます。
管理者が作成したユーザーに永続的なパスワードを設定するCONFIRMED
と、ステータスは に変わり、ユーザープールは最初のサインイン時に新しいパスワードや必須属性の入力を求めません。
AWS Management Consoleでの新しいユーザーの作成
Amazon Cognito コンソールを使用して、ユーザーパスワードの要件を設定し、ユーザーに送信される招待メッセージと確認メッセージを設定し、新しいユーザーを追加できます。
パスワードポリシーを設定し、自己登録を有効にする
パスワードの複雑さを最小限に抑え、ユーザープールでパブリック API を使用してユーザーがサインアップできるかどうかを設定できます。
パスワードポリシーの設定
-
[Amazon Cognito console]
(Amazon Cognito コンソール) に移動し、[User Pools] (ユーザープール) を選択します。 -
リストから既存のユーザープールを選択するか、ユーザープールを作成します。
-
認証方法メニューを選択し、パスワードポリシーを見つけます。[編集] を選択します。
-
[Custom] (カスタム) の [Password policy mode] (パスワードポリシーモード) を選択します。
-
[Password minimum length] (パスワードの最小長) を選択します。パスワード長要件の制限については、「ユーザープールのリソースクォータ」を参照してください。
-
[Password complexity] (パスワードの複雑さ) 要件を選択してください。
-
管理者が設定したパスワードの有効期間を選択します。
-
[Save changes] (変更の保存) をクリックします。
セルフサービスサインアップを許可する
-
[Amazon Cognito console]
(Amazon Cognito コンソール) に移動し、[User Pools] (ユーザープール) を選択します。 -
リストから既存のユーザープールを選択するか、ユーザープールを作成します。
-
サインアップメニューを選択し、セルフサービスサインアップを見つけます。[Edit] (編集) を選択します。
-
[Enable self-registration] (自己登録を有効化) するかどうかを選択します。自己登録は通常、クライアントシークレットまたは AWS Identity and Access Management (IAM) API 認証情報を配布せずに、ユーザープールに新しいユーザーを登録する必要があるパブリックアプリケーションクライアントで使用されます。
自己登録の無効化
自己登録を有効にしない場合は、IAM API 認証情報、またはフェデレーションプロバイダーとのサインインを使用して管理 API アクションで新しいユーザーを作成する必要があります。
-
[Save changes] (変更の保存) をクリックします。
E メールメッセージと SMS メッセージのカスタマイズ
ユーザーメッセージのカスタマイズ
Amazon Cognito がユーザーにサインインするように招待したとき、ユーザーがユーザーアカウントへのサインアップ、またはサインインして多要素認証 (MFA) を要求される際に Amazon Cognito はユーザーに送信するメッセージをカスタマイズできます。
注記
[Invitation message] (招待メッセージ) はユーザープールにユーザーを作成し、サインインに招待すると送信されます。Amazon Cognito はユーザーの E メールアドレスまたは電話番号に初期サインイン情報を送信します。
検証メッセージは、ユーザーがユーザープールのユーザーアカウントに登録したときに送信されます。Amazon Cognito はユーザーにコードを送信します。ユーザーが Amazon Cognito にコードを提供すると、連絡先情報を確認し、サインインのためにアカウントを確認します。検証コードは 24 時間有効です。
[MFA message] (MFA メッセージ) は、ユーザープールで SMS MFA を有効にし、SMS MFA を構成したユーザーがサインインして MFA を要求されたときに送信されます。
-
[Amazon Cognito console]
(Amazon Cognito コンソール) に移動し、[User Pools] (ユーザープール) を選択します。 -
リストから既存のユーザープールを選択するか、ユーザープールを作成します。
-
メッセージテンプレートメニューを選択し、検証メッセージ、招待メッセージ、または MFA メッセージを選択して編集を選択します。
-
選択したメッセージタイプのメッセージをカスタマイズします。
注記
メッセージをカスタマイズするときは、メッセージテンプレート内のすべての変数を含める必要があります。例えば、変数の場合 {####} は含まれません。ユーザーにはメッセージアクションを完了するのに十分な情報がありません。
詳細については、「メッセージテンプレート」を参照してください。
-
-
検証メッセージ
-
[Email] (E メール) メッセージの [Verification type] (検証タイプ) を選択します。[Code] (コード) 検証は、ユーザーが入力する必要がある数値コードを送信します。[Link] (リンク) 検証は、ユーザーがクリックして連絡先情報を検証できるリンクを送信します。変数内のテキスト [Link] (リンク) メッセージはハイパーリンクテキストとして表示されます。例えば、変数 {# #Click here##} を使用したメッセージテンプレートは、E メールメッセージで「Click here (ここをクリックしてください) 」というように表示されます。
-
[Email] (E メール) メッセージの [Email subject] (E メールの件名) を入力します。
-
[Email] (E メール) メッセージのカスタムの [Email message] (E メールメッセージ) のテンプレートを入力します。このテンプレートは HTML でカスタマイズできます。
-
[SMS] メッセージのカスタムの [SMS message] (SMS メッセージ) のテンプレートを入力します。
-
[Save changes] (変更の保存) をクリックします。
-
-
[Invitation messages] (招待メッセージ)
-
[Email] (E メール) メッセージの [Email subject] (E メールの件名) を入力します。
-
[Email] (E メール) メッセージのカスタムの [Email message] (E メールメッセージ) のテンプレートを入力します。このテンプレートは HTML でカスタマイズできます。
-
[SMS] メッセージのカスタムの [SMS message] (SMS メッセージ) のテンプレートを入力します。
-
[Save changes] (変更の保存) をクリックします。
-
-
MFA メッセージ
-
[SMS] メッセージのカスタムの [SMS message] (SMS メッセージ) のテンプレートを入力します。
-
[Save changes] (変更の保存) をクリックします。
-
-
ユーザーの作成
ユーザーの作成
Amazon Cognito コンソールからユーザープールの新しいユーザーを作成できます。通常、ユーザーはパスワードを設定した後にサインインできます。E メールアドレスでサインインするには、ユーザーは email
属性を確認する必要があります。電話番号でサインインするには、ユーザーは phone_number
属性を確認する必要があります。アカウントを管理者として確認するには、 AWS CLI または API を使用するか、フェデレーティッド ID プロバイダーでユーザープロファイルを作成することもできます。詳細については、「Amazon Cognito API Reference」を参照してください。
-
[Amazon Cognito console]
(Amazon Cognito コンソール) に移動し、[User Pools] (ユーザープール) を選択します。 -
リストから既存のユーザープールを選択するか、ユーザープールを作成します。
-
ユーザーメニューを選択し、ユーザーの作成を選択します。
-
パスワード要件、使用可能なアカウント回復方法、およびユーザープールのエイリアス属性に関するガイダンスは、「ユーザープールのサインインとセキュリティ要件」を参照してください。
-
招待メッセージの送信方法を選択します。SMS メッセージ、E メールメッセージ、または両方を選択します。招待メッセージを抑制するには、招待を送信しないを選択します。
注記
招待メッセージを送信する前に、ユーザープール の認証方法メニューで送信者と AWS リージョン Amazon Simple Notification Service と Amazon Simple Email Service を使用して を設定します。受信者メッセージとデータレートが適用されます。Amazon SES は、メールメッセージの請求を別途請求し、Amazon SNS は SMS メッセージについて別途請求します。
-
新規ユーザー用に [Username] (ユーザー名) を選択します。
-
[Create a password] (パスワードを作成する) または、Amazon Cognito にユーザーの [Generate a password] (パスワードを生成する) を許可するかどうかを選択してください。パスワードレスサインインがユーザープールで利用可能な場合、パスワードを生成するオプションは使用できません。一時パスワードは、ユーザープールのパスワードポリシーに準拠する必要があります。
-
[Create] (作成) を選択します。
-
ユーザーメニューを選択し、ユーザーのユーザー名エントリを選択します。[User attributes] (ユーザー属性) および [Group memberships] (グループメンバーシップ) を追加して編集します。ユーザーイベント履歴の確認