使用 Terraform 设置 AWS Cognito 用户池的账户恢复首选项

Pet*_*ley 5 amazon-web-services amazon-cognito terraform terraform-provider-aws infrastructure-as-code

本着基础设施即代码的精神,我使用有用的aws_cognito_user_pool资源通过 Terraform 配置了一个 AWS Cognito 用户池。

但是,我似乎无法在MFA 和验证部分下找到帐户恢复首选项的参数/配置映射。

没有规范,这似乎是我的默认选择:

(不推荐)电话(如果可用),否则通过电子邮件发送,并允许用户通过电话重置密码(如果他们也将其用于 MFA)。


目标

我想将其设置为Email only,如下图红色矩形所示:

aws cognito 用户池设置

有谁知道我需要使用什么 Terraform 参数来实现这一目标?aws_cognito_user_pool资源中记录的选项似乎都没有映射到此。

Pet*_*ley 5

一年过去了,由于aws_cognito_user_pool资源新引入的设置account_recovery_setting,我现在可以回答自己的问题了。

例如,要将帐户恢复首选项设置为仅电子邮件,我们可以执行以下操作:

resource "aws_cognito_user_pool" "mypool" {
  name = "mypool"

  account_recovery_setting {
    recovery_mechanism {
      name     = "verified_email"
      priority = 1
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

作为合并 PR的一部分,自 AWS 提供商v3.19.0起可用。