Serverless: рдбреБрдкреНрд▓рд┐рдХреЗрдЯ Cognito рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рддрдм рдмрдирд╛рддреЗ рд╣реИрдВ рдЬрдм рд╕рдВрд╕рд╛рдзрди рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдПрдХ рд╣реА рдирд╛рдо рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 11 рд╕рд┐рддре░ 2018  ┬╖  10рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: serverless/serverless

рдпрд╣ рдПрдХ (рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ) рд╣реИ

рд╡рд┐рд╡рд░рдг

рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд▓рд┐рдП:
cognito-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ pool.yml

Resources:
  CognitoUserPool:
    Type: AWS::Cognito::UserPool
    Properties:
      # Generate a name based on the stage
      UserPoolName: ${self:provider.stage}MyUserPool

serverless.yml

functions:
  preSignUp:
    handler: presignup.handler
    events:
      - cognitoUserPool:
          pool: ${self:provider.stage}MyUserPool
          trigger: PreSignUp

resources:
  - ${file(resources/cognito-user-pool.yml)}

рдпрд╣ рдПрдХ рд╣реА рдирд╛рдо рдХреЗ рд╕рд╛рде рдмрдирд╛рдП рдЧрдП рджреЛ UserPools рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕рдВрд▓рдЧреНрди рдЯреНрд░рд┐рдЧрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде, рдЕрдиреНрдп рд╕рдВрд▓рдЧреНрди рдиреАрддрд┐рдпреЛрдВ рдФрд░ рдЕрдиреНрдп рдЪреАрдЬрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдЬреЛ рдореИрдВ рдХреЙрдЧреНрдирд┐рдЯреЛ-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдкреВрд▓ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ

рдЗрд╕реА рддрд░рд╣ рдпрд╛ рдирд┐рд░реНрднрд░ рдореБрджреНрджреЛрдВ:

  • # 4207

рдЕрддрд┐рд░рд┐рдХреНрдд рдбреЗрдЯрд╛

"рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд": "1.30.3"

bug caaws-event-cognito

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЖрдкрдХрд╛ рд╕рдорд╛рдзрд╛рди рдПрдХ рдЖрдХрд░реНрд╖рдг @robotlemons рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд┐рдпрд╛ !! Much рдЗрд╕реЗ рд╢реЗрдпрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

рдореЗрд░реЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣рд┐рд╕реНрд╕рд╛ рдпрд╣ рдерд╛ рдХрд┐ рдбреЙрдХреНрд╕ CognitoUserPool рдХреЛ MyUserPool рд╣рд░ рд╕рдордп рдХрд╣рддреЗ рд╣реИрдВ, рдФрд░ рдореИрдВ UserPoolName: ${self:provider.stage}-user-pool рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдЬрдм рд▓рд┐рдВрдЧрд╛ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП , рд╣рдореЗрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

- cognitoUserPool:
  pool: ${self:provider.stage}-user-pool
  trigger: PostConfirmation

рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдореИрдВ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдХреБрдВрдЬреА pool рджреЗрдирд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ CognitoUserPool рдХреЗ рд╕рдорд╛рди рдореВрд▓реНрдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдбреЙрдХреНрд╕ рдиреЗ рдЗрд╕реЗ MyUserPool рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЕрдВрдд рдореЗрдВ рд╕рд┐рд░реНрдл cognito-user-pool.yml рдореЗрдВ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рдХреА рдШреЛрд╖рдгрд╛ рдХреА:

Resources:
  CognitoUserPoolMyUserPool:
    Type: AWS::Cognito::UserPool
    Properties:
      UserPoolName: ${self:provider.stage}-user-pool

рдФрд░ serverless.yml рд▓рд╛рдореНрдмрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

  postConfirmation:
    handler: src/cognito/postConfirmation.handler
    events:
      - cognitoUserPool:
          pool: MyUserPool  // Notice that this one is the declared name of my pool CognitoUserPoolMyUserPool but without the CognitoUserPool part.
          trigger: PostConfirmation

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд┐рд╕реА рдФрд░ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ!

рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдмрдбрд╝рд╛ рдзрдиреНрдпрд╡рд╛рдж! ЁЯТп

рд╕рднреА 10 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд░рд╣рд╛ред рдЬрдм рдХреЛрдИ рд╕рдВрдХрд▓реНрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЙрддреНрд╕реБрдХ?

рдореБрдЭреЗ рднреА рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдФрд░ рдбреЙрдХреНрд╕ рдпрд╛ рдЕрдиреНрдп рдмрдВрдж рдореБрджреНрджреЛрдВ рдореЗрдВ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдХреЗ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ

@ Ccastillo06 рдореИрдВ рдРрд╕рд╛ рдХрд░рдХреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ ... (рдмреЛрд▓реНрдб рднрд╛рдЧреЛрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЯреБрдХрдбрд╝рд╛ рд╣реИрдВред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдореИрдВ рд╕рднреА рдореБрджреНрджреЛрдВ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рдерд╛ред

CognitoUserPoolMyUserPool:
рдкреНрд░рдХрд╛рд░: AWS :: Cognito :: UserPool
рдЧреБрдг:
UserPoolName: mypool _ $ { self: provider.stage } _auth_pool
UsernameAttributes:
- рдИрдореЗрд▓
рд╕реНрдХреАрдорд╛:
- рдирд╛рдо: рджрд┐рдпрд╛_рдирд╛рдо
рдПрдЯреНрд░рд┐рдмреНрдпреВрдЯрдбреЙрдЯрд╛рдЗрдк: рд╕реНрдЯреНрд░рд┐рдВрдЧ
рдореНрдпреВрдЯреЗрдмрд▓: рд╕рдЪ
рдЖрд╡рд╢реНрдпрдХ: рд╕рдЪ
- рдирд╛рдо: family_name
AttributeDataType: рд╕реНрдЯреНрд░рд┐рдВрдЧ
рдореНрдпреВрдЯреЗрдмрд▓: рд╕рдЪ
рдЖрд╡рд╢реНрдпрдХ: рд╕рдЪ
- рдирд╛рдо: рдИрдореЗрд▓
AttributeDataType: рд╕реНрдЯреНрд░рд┐рдВрдЧ
рдкрд░рд╕реНрдкрд░: рдорд┐рдереНрдпрд╛
рдЖрд╡рд╢реНрдпрдХ: рд╕рдЪ
- рдирд╛рдо: phone_number
рдПрдЯреНрд░рд┐рдмреНрдпреВрдЯрдбреЙрдЯрд╛рдЗрдк: рд╕реНрдЯреНрд░рд┐рдВрдЧ
рдореНрдпреВрдЯреЗрдмрд▓: рд╕рдЪ
рдЖрд╡рд╢реНрдпрдХ: рд╕рдЪ
AutoVerifiedAttributes:
- рдИрдореЗрд▓

postConfirmation:
рд╣реИрдВрдбрд▓рд░: редред
рдореЗрдореЛрд░реА рдХреНрд╖рдорддрд╛: ...
рдЖрдпреЛрдЬрди:
- рдПрдЪрдЯреАрдЯреАрдкреА:
рдкрде: ...
рд╡рд┐рдзрд┐: рдбрд╛рд▓ рджрд┐рдпрд╛
рдПрдХреАрдХрд░рдг: рд▓реИрдореНрдмреНрдбрд╛
cors: рд╕рдЪ
authorizer:
рдкреНрд░рдХрд╛рд░: COGNITO_USER_POOLS
authorizerId:
Ref: ApiGatewayAuthorizer
- cognitoUserPool:рдкреВрд▓: MyUserPoolрдЯреНрд░рд┐рдЧрд░: PostConfirmation

рдЖрдкрдХрд╛ рд╕рдорд╛рдзрд╛рди рдПрдХ рдЖрдХрд░реНрд╖рдг @robotlemons рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд┐рдпрд╛ !! Much рдЗрд╕реЗ рд╢реЗрдпрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

рдореЗрд░реЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣рд┐рд╕реНрд╕рд╛ рдпрд╣ рдерд╛ рдХрд┐ рдбреЙрдХреНрд╕ CognitoUserPool рдХреЛ MyUserPool рд╣рд░ рд╕рдордп рдХрд╣рддреЗ рд╣реИрдВ, рдФрд░ рдореИрдВ UserPoolName: ${self:provider.stage}-user-pool рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдЬрдм рд▓рд┐рдВрдЧрд╛ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП , рд╣рдореЗрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

- cognitoUserPool:
  pool: ${self:provider.stage}-user-pool
  trigger: PostConfirmation

рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдореИрдВ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдирд╛рдо рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рдХреБрдВрдЬреА pool рджреЗрдирд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ CognitoUserPool рдХреЗ рд╕рдорд╛рди рдореВрд▓реНрдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдбреЙрдХреНрд╕ рдиреЗ рдЗрд╕реЗ MyUserPool рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЕрдВрдд рдореЗрдВ рд╕рд┐рд░реНрдл cognito-user-pool.yml рдореЗрдВ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рдХреА рдШреЛрд╖рдгрд╛ рдХреА:

Resources:
  CognitoUserPoolMyUserPool:
    Type: AWS::Cognito::UserPool
    Properties:
      UserPoolName: ${self:provider.stage}-user-pool

рдФрд░ serverless.yml рд▓рд╛рдореНрдмрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

  postConfirmation:
    handler: src/cognito/postConfirmation.handler
    events:
      - cognitoUserPool:
          pool: MyUserPool  // Notice that this one is the declared name of my pool CognitoUserPoolMyUserPool but without the CognitoUserPool part.
          trigger: PostConfirmation

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд┐рд╕реА рдФрд░ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ!

рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдмрдбрд╝рд╛ рдзрдиреНрдпрд╡рд╛рдж! ЁЯТп

@ Ccastillo06
рдореБрдЭреЗ рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВ рд╕реБрдкрд░ рднреНрд░рдорд┐рдд рд╣реВрдВ рдФрд░ рдХреБрдЫ рдорджрдж рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред

рдЗрд╕рд▓рд┐рдП cognitoUserPool рдШрдЯрдирд╛рдУрдВ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, PostConfirmation рдШреЛрд╖рдгрд╛ рдореЗрдВред 'рдкреВрд▓' рдХрд╛ рдорд╛рди рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдирд╛рдо рдЖрдЬрд╝рдорд╛рдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рдмрдирд╛рддрд╛ рд░рд╣рддрд╛ рд╣реИред рдореИрдВрдиреЗ 'рд╕рдВрд╕рд╛рдзрди' (рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ 'CognitoUserPoolMyUserPool') рдХреЗ рддрд╣рдд рд╕реАрдзреЗ рдореВрд▓реНрдп рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред

рдЕрдм рдЖрдкрдХреЗ 'рдкреВрд▓' рдореВрд▓реНрдп рдореЗрдВ рдЖрдкрдиреЗ рдХрд╣рд╛ рдХрд┐ рдЖрдк CognitoUserPool рднрд╛рдЧ рдХреЗ рдмрд┐рдирд╛ 'MyUserPool' рдЗрдирдкреБрдЯ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдирд╛рдо рдЕрд▓рдЧ рд╣реИред рддреЛ рдореЗрд░рд╛ рдирд╛рдо рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдореИрдВрдиреЗ рдкреВрд░рд╛ рдирд╛рдо рдЖрдЬрд╝рдорд╛рдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

@ Studio2133

Resources:
  CognitoUserPoolMyUserPool:
    Type: AWS::Cognito::UserPool
    Properties:
      UserPoolName: ${self:provider.stage}-user-pool

рдпрд╣ рдЙрджрд╛рд╣рд░рдг, рдЖрдк рдЕрдкрдиреЗ рдкреВрд▓ рдореВрд▓реНрдп рдХреЗ рд░реВрдк рдореЗрдВ CognitoUserPool рдХреЗ рдмрд╛рдж рдЬреЛ рдХреБрдЫ рднреА рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ MyUserPool рд╣реЛрдЧрд╛

@robotlemons рд╢реАрдШреНрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдирд╛рдо рдмрджрд▓ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ CognitoUserPool рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпрд╣ рд╕рд┐рд░реНрдл рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ: MycompanyUserPoolред рдореИрдВ рдЗрд╕реЗ рдмрджрд▓ рджреВрдВрдЧрд╛: CognitoUserPoolMyCompanyUserPool ... рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд╣реИ?

рд╣рд╛рдБ

рдореЗрд░реЗ рдЖрдИрдлреЛрди рд╕реЗ рднреЗрдЬрд╛ рдЧрдпрд╛

11 рдЕрдкреНрд░реИрд▓ 2019 рдХреЛ рджреЛрдкрд╣рд░ 12:33 рдмрдЬреЗ, Studio2133 рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

@robotlemons рд╢реАрдШреНрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдирд╛рдо рдмрджрд▓ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ CognitoUserPool рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпрд╣ рд╕рд┐рд░реНрдл рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ: MycompanyUserPoolред рдореИрдВ рдЗрд╕реЗ рдмрджрд▓ рджреВрдВрдЧрд╛: CognitoUserPoolMyCompanyUserPool ... рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд╣реИ?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ, рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВред

@ Studio2133 рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрдк рдХреНрдпрд╛ @robotlemons рдХрд╣рд╛ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдмрд╕ рдЬреЛрдбрд╝рдиреЗ CognitoUserPool рдЕрдкрдиреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рдХреЗ рдирд╛рдо рд╕реЗ рдкрд╣рд▓реЗ MycompanyUserPool ред

рддреЛ рдЕрдВрдд рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рдЙрд╕ рдкреВрд▓ рдирд╛рдо рдХреЗ рд▓рд┐рдП CognitoUserPoolMycompanyUserPool ред

рддреЛ cognito-user-pool.yml рдореЗрдВ рдЖрдкрдХреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреВрд▓ рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:

Resources:
  CognitoUserPoolMycompanyUserPool:
    Type: AWS::Cognito::UserPool
    Properties:
      UserPoolName: ${self:provider.stage}-user-pool

рдФрд░ рдлрд┐рд░ serverless.yml рдореЗрдВ рд▓рдВрдмреЛ рдЯреНрд░рд┐рдЧрд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:

 postConfirmation:
    handler: src/cognito/postConfirmation.handler
    events:
      - cognitoUserPool:
          pool: MycompanyUserPool  
          trigger: PostConfirmation

рдореИрдВрдиреЗ рдЕрдкрдиреА рдирд╡реАрдирддрдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ ( PostConfirmation рдЯреНрд░рд┐рдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ AWS рд╕реЗ рдЕрдиреНрдп рд▓реИрдВрдмрдбрд╛рд╕ рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛) рдФрд░ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред

рдлрд┐рдХреНрд╕реНрдб рдкреВрд▓ рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдкреВрд▓ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦреЗрдВ рддрд╛рдХрд┐ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдХрдВрдЯреНрд░реЛрд▓ рдкреИрдирд▓ рдореЗрдВ рдХреБрдЫ рднреА рднреНрд░рдорд┐рдд рди рд╣реЛред

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реИ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ!

@ Studio2133
рдЬрдм рдЖрдк рдПрдХ cognitoUserPool рдЗрд╡реЗрдВрдЯ рдХреЛ рдПрдХ рд▓реИрдореНрдмреНрдбрд╛ рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ Serverless рдЕрдкрдиреЗ рдЖрдк рдПрдХ рдирдпрд╛ Cognito User рдкреВрд▓ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди CloudFormation рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЗрд╕ рдкреВрд▓ рдХрд╛ CloudFormation рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрд╕рд╛рдзрди рдирд╛рдо CognitoUserPool {normalizedPoolId} рд╣реИ, рдЬрд╣рд╛рдБ normalizedPoolId рд╡рд╣ рдирд╛рдо рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЕрдкрдиреЗ cognitoUserPool рдЗрд╡реЗрдВрдЯ рдореЗрдВ рдкреВрд▓ рдХреЗ рд▓рд┐рдП рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╣ рдкреВрд▓ рд╣реИ рдЬрд┐рд╕реЗ рдЯреНрд░рд┐рдЧрд░ рдХрдиреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЯреНрд░рд┐рдЧрд░ рдХреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреВрд▓ рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕реЗ рдЖрдк рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЖрдк рдЗрд╕ рдирд╛рдордХрд░рдг рд╕рдореНрдореЗрд▓рди рдХрд╛ рд▓рд╛рдн рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдХреЙрдЧреНрдирд┐рдЯреЛрдпреВрдЬрд░рдкреВрд▓ рдШрдЯрдирд╛ рдХреЛ рдЬреЛрдбрд╝рдХрд░ рдЙрддреНрдкрдиреНрди рдкреВрд▓ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ CognitoUserPool {normalizedPoolId} рдХреЛ рдЕрдкрдиреЗ рд╕рдВрд╕рд╛рдзрди рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЖрдкрдХреЗ рдкреВрд▓ рдХреЗ рддрд╛рд░реНрдХрд┐рдХ рд╕рдВрд╕рд╛рдзрди рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╕рд░реНрд╡рд░рд▓реЗрд╕ рдХреЛ рдПрдХ рдирдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЖрдкрдХреЗ рдЯреНрд░рд┐рдЧрд░ рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдиреЗрдЧрд╛ред

рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

BarakChamo picture BarakChamo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

TimothyDalbey picture TimothyDalbey  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jthomas picture jthomas  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

anreved picture anreved  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

taptip picture taptip  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ