You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Terraform脚本中转义特殊字符?AWS密码生成配置报错解决

Terraform AWS SecretsManager 生成无特殊字符密码的正确配置方法

你的问题出在HCL语法的字符串处理上,之前用%%{}的方式完全不符合HCL的规则,导致解析报错。正确的做法是用双引号包裹exclude_punctuation的取值,同时对字符串内的特殊字符做正确转义:

data "aws_secretsmanager_random_password" "password" {
  password_length     = 25
  exclude_punctuation = "# $ % & ' ( ) * + , - . / : ; < = > ? @ [ \\ ] ^ _ ` { | } ! \" ~ ."
}

需要注意几个关键要点:

  • 整个排除字符集必须放在双引号内,作为一个完整的字符串值
  • 字符串里的双引号(")要写成\"进行转义
  • 字符串里的反斜杠(\)要写成\\进行转义
  • 其余特殊字符(比如#、$、&等)不需要额外转义,直接保留即可

这样配置后,Terraform就能正确解析排除的标点字符列表,生成符合要求的无特殊字符密码。

内容的提问来源于stack exchange,提问作者Peter Jackson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 10:42:23