Amazon web services 如何获得cognito用户';s";用户名";云层
我创建了一个用户,如:Amazon web services 如何获得cognito用户';s";用户名";云层,amazon-web-services,amazon-cloudformation,amazon-cognito,Amazon Web Services,Amazon Cloudformation,Amazon Cognito,我创建了一个用户,如: SuperAdminUser: Type: AWS::Cognito::UserPoolUser Properties: DesiredDeliveryMediums: - EMAIL Username: !Ref SuperAdminEmail UserAttributes: - Name: email Value: !Ref SuperAdminEmail
SuperAdminUser:
Type: AWS::Cognito::UserPoolUser
Properties:
DesiredDeliveryMediums:
- EMAIL
Username: !Ref SuperAdminEmail
UserAttributes:
- Name: email
Value: !Ref SuperAdminEmail
UserPoolId:
Fn::ImportValue:
!Sub ${BaseStack}-Cognito
用户池定义如下:
CognitoUserPool:
Type: AWS::Cognito::UserPool
Properties:
AdminCreateUserConfig:
AllowAdminCreateUserOnly: false
UnusedAccountValidityDays: 3
LambdaConfig:
PreSignUp: !GetAtt CognitoPreSignUpHook.Arn
Policies:
PasswordPolicy:
MinimumLength: 8
RequireNumbers: true
UsernameAttributes:
- email
我注意到它找不到用户,因为用户名如下:9f8aecc2-530d-411d-8d73-c3b775da1893
while!Ref
给出了这种情况下用户的电子邮件。我注意到,当我添加
UsernameAttributes:
- email
我如何解决这个问题?我注意到用户资源不允许我获取用户的子项 您收到的错误是什么?如果您只是创建用户池而不是用户(使用您需要的UsernameAttribute),它会给出错误还是通过?@ChrisPollard,当我不使用
UsernameAttributes
时,它会通过。我注意到区别在于:当使用UsernameAttributes
时,我的代码需要使用的用户名是Sub
(一些随机字符串),否则,就是我设置的电子邮件。我想这就是自那以后的区别!Ref提供用户名,而不是sub@ChrisPollard错误看起来像:用户不存在。(服务:AWSCognitoIdentityProvider;状态代码:400;错误代码:UserNotFoundException;请求ID:823e14a6-9d6e-11e8-867a-ab798cfb353a)@JiewMeng我有一个相关问题(),我需要子(UUID)才能将用户添加到组中。你知道怎么做了吗?@JiewMeng你能解决这个问题吗?