Cognito Hosted UIオプションを使用して、Webサイトのユーザーを登録およびサインインしています。現在、登録したユーザーは、ユーザー名/パスワードを使用してすぐにサインインできます。これにより、誰でも登録してサイトの制限された部分にアクセスできるため、これは問題です。私がしたいのは、管理者がログインする前に、すべての登録ユーザーを手動で確認することを要求することです。
これを達成することは可能ですか?
Cognitoユーザープールを使用して登録したすべてのユーザーを手動で確認する場合は、次の手順を実行できます。
ステップ1:AmazonCognitoユーザープールコンソールの[MFAandVerifications]サイドバーでEメール/ SMS検証要件がオフになっていることを確認します。
ステップ2:ユーザーエクスペリエンスを向上させるには、Web /モバイルアプリケーションのカスタムUIを利用します。ユーザーがサインアップした後、管理者の確認が必要であると記載されている別のWebページにユーザーをリダイレクトします。CognitoのデフォルトUIを使用している場合、「ユーザープールが確認コード配信用に適切に構成されていません」というメッセージが表示されますが、これは必ずしもシームレスなユーザーエクスペリエンスを提供するとは限りません。
ステップ3:これで、サインアップしたユーザーは、AmazonCognitoユーザープールで「UNCONFIRMED」状態になっているはずです。
ステップ4:ユーザーを手動で確認するには、アプリケーションコードまたはCLIからAdminConfirmSignUpAPI呼び出し[1]を使用できます。これには、user-pool-idとusernameが必要であり、正常に実行するには管理者の資格情報も必要です。
私はこれを自分の側でテストし、AmazonCognitoユーザープールに登録したすべてのユーザーを手動で確認することができました。私が試したAPI呼び出しは次のとおりです(CLIを介してテスト済み)。
aws cognito-idp admin-confirm-sign-up --user-pool-id us-east-1_XXXX --username XXXX
AdminConfirmSignUp API呼び出しの後、「UNCONFIRMED」ユーザーは「CONFIRMED」ステータスになります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加