본문 바로가기
AWS

Cognito

by @김상현 2022. 10. 20.
반응형

**Lambda Function 내에서는 aws-sdk가 기본적으로 내장되어있다.

    해당 문서는 아래 링크에서 확인해 볼 수 있다.

    https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS.html

 

Module: AWS — AWS SDK for JavaScript

The modular AWS SDK for JavaScript (v3), the latest major version of AWS SDK for JavaScript, is now stable and recommended for general use. For more information, see the Migration Guide and API Reference. Module: AWS Defined in: lib/core.js Overview Define

docs.aws.amazon.com

    

- Lambda Function으로 Cognito에 유저 추가하기.

   

https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html#adminCreateUser-property

 

Class: AWS.CognitoIdentityServiceProvider — AWS SDK for JavaScript

The modular AWS SDK for JavaScript (v3), the latest major version of AWS SDK for JavaScript, is now stable and recommended for general use. For more information, see the Migration Guide and API Reference. Class: AWS.CognitoIdentityServiceProvider Inherits:

docs.aws.amazon.com

CongitoIdentityServiceProvider.adminCreateUser 를 사용한다.

const { CognitoIdentityServiceProvider } = require('aws-sdk')

exports.handler = async (event) => {
    let provider = new CognitoIdentityServiceProvider({
        region : "ap-northeast-2"
    })
    await new Promise((resolve,reject)=>{
        provider.adminCreateUser({
            UserPoolId : *UserPoolId*,
            Username : event.email
        },(error,data)=>{
            if(error) reject(console.log(error, error.stack))
            else resolve(console.log(data))
        });
    const response = {
        statusCode: 200,
        body: JSON.stringify(`User ${event.email} Create Done`),
    };
    return response;
};

필자는 로그인 방법으로 이메일을 설정해 놨으므로 Username에 Email을 적었다. 다른 값을 넣으면

InvalidParameterException: Username should be an email.

와 같은 에러가 뜬다.

반응형

'AWS' 카테고리의 다른 글

나를 위한 AWS 기록  (0) 2022.10.14

댓글