如何通过terraform在应用客户端设置中启用“cognito用户池”选项?

时间:2018-06-04 14:15:56

标签: amazon-web-services terraform aws-cognito

我可以在“supported_identity_providers”参数中指定“Facebook”并且它可以正常工作。我尝试为支持的身份提供程序参数指定名称,ID和单词“Cognito User Pool”,并且它不断抛出验证错误。

enter image description here

我想要从terraform启用箭头指向的选项。我将什么值传递给“supported_identity_providers”参数?

1 个答案:

答案 0 :(得分:4)

简短回答

  "error": {
    "msg": "org.apache.solr.search.SyntaxError: Cannot parse 'nk_source:156 AND nk_title:[*': Encountered \"<EOF>\" at line 1, column 29.\nWas expecting one of:\n    \"TO\" ...\n    <RANGE_QUOTED> ...\n    <RANGE_GOOP> ...\n    ",
    "code": 400
  }

<强>详情

可以找到用于创建用户池客户端的AWS API here和terraform docs here

两者都缺少标准提供商的默认名称(Cognito,Amazon,Google,Facebook)。

我无法找到有关用户池客户端nk_title:\[* nk_title:*[* 值的默认名称的任何亚马逊文档,只能找到AWS API文档here中的模式。

编写terraform代码时,我必须切换AWS控制台中的值,然后使用CLI检索值:

resource "aws_cognito_user_pool_client" "<name>" { ... supported_identity_providers = ["COGNITO", ...] ... {

对于cognito,这会返回SupportedIdentityProviders社交提供者aws cognito-idp describe-user-pool-client --user-pool-id <pool-id> --client-id <client-id>COGNITOGoogle。如果您使用的是OIDC / SAML,则表示您已配置Facebook