(AWS)Lambda関数からCognitoにアクセス① ユーザー登録

Lambda関数(Python)からCognitoにユーザー登録を行う手段について記載します。
サーバーレスであってもユーザー登録のように高い機密性が要求される処理は、サーバー側で行う必要があります(当然ですが)。そういったケースにおいてLambda関数を利用します。
Lambda関数からCognitoにユーザーに関連する処理は、boto3のCognitoIdentityProvider(ドキュメントはこちら)を使用します。

ユーザー登録は、「admin_create_user」を利用します。簡単な例を記載します。

REGION = 'ap-northeast-1'		# 東京リージョン
USER_POOL_ID = os.environ['USER_POOL_ID']  # ユーザープールを環境変数から取得しています
cognito_client = boto3.client('cognito-idp', REGION) # クライアントをCognitoIdentityProviderで定義

response = cognito_client.admin_create_user(
    UserPoolId=USER_POOL_ID,
    Username='user_name',
    UserAttributes=[
        {
            "Name": "email",
            "Value": 'wani@two-rings.jp'
        },
        {
            "Name": "name",
            "Value": 'Minoru Wani'
        }
    ],
    DesiredDeliveryMediums = ['EMAIL'],
)

(記事のお問合せ・無料相談 → こちら