如何在Terraform中获取Cognito用户池客户端ID?

时间:2020-04-23 12:07:21

标签: amazon-web-services

我正在使用terraform在项目中管理AWS中的IaC。 cognito已存在于AWS上,并且具有用户池及其相关资源。如何在Terraform中引用客户端ID?我已经尝试过以下设置:

data "aws_cognito_user_pool_client" "selected" {
  name = "app-client"
}

我收到此错误:

The provider provider.aws does not support data source
"aws_cognito_user_pool_client".

AWS似乎不支持aws_cognito_user_pool_client的数据源。还有获取客户ID的另一种方法吗?

2 个答案:

答案 0 :(得分:1)

用户池客户端是一种资源,而不是数据源,因此它应如下所示:

resource "aws_cognito_user_pool_client" "test" {
  name         = "app-client"
}

当然,如果它已存在于Cognito中,则必须将其导入。

terraform import aws_cognito_user_pool_client.test id-of-client-in-cognito

答案 1 :(得分:0)

没有aws_cognito_user_pool_client的数据源

有aws_cognito_user_pools的数据源

aws_cognito_user_pools数据源的正确语法是-

data "aws_cognito_user_pools" "selected" {
  name = "app-pool"
}

来源:https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/cognito_user_pools