Cognito에 서명한 사용자의 정보를 DynamoDB에 저장하시겠습니까?

여러분을 제일 좋아해요.
https://aws.amazon.com/jp/cognito/
최근의 무서버 구조도 많이 사용되고 있다고 생각하지만 궁금한 것이 하나 있습니다.
서명한 사용자의 정보는 응용 프로그램 방면에서 어떻게 사용합니까?그러니까
조사해도 안 나왔으니까 이번엔 이 일을 쓰자🙌

결론

  • Cognito에 저장된 사용자 정보를'인증/인정'이외의 곳에서 사용하는 것은 바람직하지 않다
  • 서명 시 DB에 별도로 저장
  • Cognito의 Lambda 트리거를 통해 가능
  • 해설


    코그니토 사용자 수영장에 사용자에 대한 정보를 많이 등록했는데 이런 것들은 도대체'인증, 인정'을 위해 사용하는 정보일 뿐이다.
    응용 프로그램에서 직접 참조하는 것이 아니다.
    예를 들어 사용자의 상세한 화면을 설치할 때cognito에 방문하면 얻은 정보가 좋지 않다.
    DB가 아니기 때문에 처리도 까다롭다😥
    따라서 다소 위화감이 있을 수 있지만 코그니토에 사용자가 서명할 때 그 정보를 DB에 복제하고 응용 소프트웨어에 있어서 그 데이터를 사용하는 것이 좋다😊
    나는 어떻게 가는지 조사할 때 코그니토의 편리한 기능을 발견했다.
    람다가 촉발하다.
    https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html
    자세한 내용은 공식을 보십시오. 저는'다양한 인증 활동 사이에서 준비된 람바다 함수를 연계하는 기능을 시작할 수 있다'는 것을 이해합니다.
    트리거는 인증 전, 인증 후 등 예정된 이벤트 중에서 선택할 수 있다.
    그중 이번에는'확인 후 람바다 트리거'를 사용했다.
    https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/user-pool-lambda-post-confirmation.html
    이걸 사용하면 사용자가 서명하고 확인이 완료된 시점에 트리거 설정으로 람바다가 시작됩니다!!
    물론 서명 후 사용자의 정보는 event로 람다에 전송되며 처리 후 OK됩니다.
    필요한 매개 변수가 도착해서 람다로 논리를 쓸 수 있다면 나머지는 얼마든지 할 수 있다😁
    일반적으로 DynamoDB에서 INSERT가 진행될 것 같습니다. 실행 시간의 SDK 문서를 확인하십시오.
    트리거는 이외에도 사용할 수 있다.
    역시 AWS...


    AWS SAM을 사용하면 트리거를 간단하게 설정할 수 있습니다.
    ~~~
      SignUpHookFunction:
        Type: AWS::Serverless::Function
        Properties:
          FunctionName: signup-hook-function
          CodeUri: cognito/
          Handler: handler
          Runtime: go1.x
          Role: !GetAtt LambdaRole.Arn
          Events:
            SignUpHook:
              Type: Cognito
              Properties:
                UserPool: !Ref UserPool
                Trigger:
                  - PostConfirmation
    ~~~
    
    일부분을 발췌했습니다. 죄송합니다. 포인트가 제한되어 있다고 생각합니다.AWS::Serverless::Function 속성은 코그니토로 관련된 사용자 수영장 ID와 촉발의 종류(이번에는 Events일 뿐 배열이기 때문에 여러 개를 지정할 수 있다).
    https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/sam-resource-function.html#sam-function-events
    이게 정답인지 모르겠어요 더 좋은 생각이 있으면 말해주세요🙏
    이제 그만~

    참고 자료

  • https://stackoverflow.com/questions/53293203/writing-cognito-user-info-to-dynamodb-through-a-post-confirmation-lambda-functio
  • https://medium.com/@lopezlucas/from-aws-cognito-to-dynamodb-using-triggers-bdf54f1904a9
  • 좋은 웹페이지 즐겨찾기