如何使用 Terraform 创建 AWS Cognito 用户

Dan*_*iel 8 amazon-cognito terraform terraform-provider-aws

我想使用 Terraform 创建一个测试用户的AWS Cognito 用户池。创建用户池非常简单:

resource "aws_cognito_user_pool" "users" {
  name = "${var.cognito_user_pool_name}"
  admin_create_user_config {
    allow_admin_create_user_only = true
    unused_account_validity_days = 7
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,我找不到创建 AWS Cognito 用户的资源。使用AWS Cli是可行的

aws cognito-idp admin-create-user --user-pool-id <value> --username <value>
Run Code Online (Sandbox Code Playgroud)

关于如何使用 Terraform 做到这一点的任何想法?

mat*_*sko 5

为了使事情自动化,可以在 terraform 中使用null_resourcelocal_exec配置器来执行您的aws cli命令

例如

resource "aws_cognito_user_pool" "pool" {
  name = "mypool"
}

resource "null_resource" "cognito_user" {

  triggers = {
    user_pool_id = aws_cognito_user_pool.pool.id
  }

  provisioner "local-exec" {
    command = "aws cognito-idp admin-create-user --user-pool-id ${aws_cognito_user_pool.service.id} --username myuser"
  }
}
Run Code Online (Sandbox Code Playgroud)


yda*_*coR 4

目前这在 Terraform 中无法直接实现,因为没有在用户池中创建用户的资源。

有一个请求该功能的未决问题,但尚未开始相关工作。