AWS Cognito UserPool - 恢复选项
Posted
技术标签:
【中文标题】AWS Cognito UserPool - 恢复选项【英文标题】:AWS Cognito UserPool - Recovery Option 【发布时间】:2020-07-03 20:08:18 【问题描述】:我确实看到了此处列出的 RecoveryOption https://docs.amazonaws.cn/en_us/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-recoveryoption.html
但是在 UserPool 中,我没有看到 RecoveryOption https://docs.amazonaws.cn/en_us/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html
任何人已经在 Cloudformation 中使用过 RecoveryOption。
如果这是文档问题或相关限制,请告知。
【问题讨论】:
【参考方案1】:我已经找到了 RecoveryOption。它在 AccountRecoverySetting 中 https://docs.amazonaws.cn/en_us/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-accountrecoverysetting
【讨论】:
【参考方案2】:RecoveryOptions 是 RecoveryMechanism 的一部分,它是 AccountRecoverySetting 的一部分:
"RecoveryMechanisms" : [ RecoveryOption, ... ]
这是一个具有恢复选项的用户池示例,将所有内容放在 CloudFormation 模板中,如下所示:
testUserPool:
DependsOn: [ cognitoSMSRole ]
Type: AWS::Cognito::UserPool
Properties:
AccountRecoverySetting:
RecoveryMechanisms:
- Name: verified_email
Priority: 1
- Name: verified_phone_number
Priority: 2
AdminCreateUserConfig:
AllowAdminCreateUserOnly: False
AutoVerifiedAttributes:
- phone_number
EnabledMfas:
- SMS_MFA
MfaConfiguration: OPTIONAL
Policies:
PasswordPolicy:
MinimumLength: 8
RequireLowercase: True
RequireNumbers: True
RequireSymbols: True
RequireUppercase: True
TemporaryPasswordValidityDays: 7
Schema:
- AttributeDataType: String
DeveloperOnlyAttribute: False
Mutable: False
Name: name
Required: True
- AttributeDataType: String
DeveloperOnlyAttribute: False
Mutable: False
Name: last_name
Required: False
SmsConfiguration:
ExternalId: !Sub cognito-sms-role-prod
SnsCallerArn: !GetAtt cognitoSMSRole.Arn
UsernameAttributes:
- phone_number
UsernameConfiguration:
CaseSensitive: False
UserPoolName: !Sub UserPool-prod
【讨论】:
以上是关于AWS Cognito UserPool - 恢复选项的主要内容,如果未能解决你的问题,请参考以下文章
带有 Cognito 的 AWS Lambda API 网关 - 如何使用 IdentityId 访问和更新 UserPool 属性?
我们可以使用 Cloudformation 为 Cognito UserPool 定义社交提供者吗?
通过 CloudFormation 部署 AWS UserPool 并更新属性