关于 infisical-terraform
infisical-terraform 是一个使用 Infisical Terraform provider 管理 Infisical 资源并从 HCL 读取密钥的 skill。内容涵盖 provider 身份验证、Terraform 资源与数据源,以及 Terraform Cloud OIDC 配置。
主要功能
- 01Provider 身份验证与配置指导
- 02密钥和数据源的 HCL 用法
- 03项目角色与访问审批资源
- 04Terraform Cloud OIDC 设置
- 05临时密钥资源使用指导
适用场景
- 01在 Terraform 中配置 Infisical 身份验证
- 02从 HCL 读取密钥且避免写入状态文件
- 03定义项目角色和访问审批策略
- 04配置 Terraform Cloud 与 Infisical 的 OIDC
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ infisical/ ai-skills --skill infisical-terraform安装后在 Claude Code 中输入/infisical-terraform确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/provider-setup.mdresources-and-data-sources.mdterraform-cloud-oidc.md详细介绍
Infisical Terraform Provider
帮助用户自信地将 Infisical 密钥管理集成到 Terraform 基础设施中。
不属于此技能的内容
| 如果用户想要…… | 使用 |
|---|---|
| 将密钥注入正在运行的应用、容器或流水线 | infisical-setup |
| 调用原始 REST API,而不是使用 HCL | infisical-api |
| 将密钥推送到第三方服务 | infisical-secret-syncs |
| 按需获取临时数据库凭据 | infisical-dynamic-secrets |
| 设计角色和权限模型 | infisical-access-control |
| 通过 Terraform 部署 Gateway 或 Relay | infisical-gateway |
| 部署 Infisical 本身 | infisical-self-host |
此技能介绍的是 Infisical Terraform provider——使用 HCL 管理 Infisical 资源并读取密钥,而不是介绍如何一般性地使用 Terraform。
用户通常会询问的内容
- “如何在 Terraform 中使用 Infisical?”——Provider 设置和身份验证
- “如何防止密钥出现在 Terraform 状态中?”——临时资源
- “如何设置 Terraform Cloud 与 Infisical?”——OIDC 集成
- “如何配置项目角色和权限?”——角色定义
- “临时资源与数据源有什么区别?”——资源模式
快速路由
- Provider 身份验证、配置、环境变量 → Provider 设置
- HCL 资源:infisical_secret、数据源、项目角色、访问审批 → 资源与数据源
- Terraform Cloud OIDC 集成、机器身份设置 → Terraform Cloud OIDC
应遵循的关键原则
- 凭据必须放在嵌套的
auth属性中:Provider 接受auth = { universal = { client_id, client_secret } }或auth = { oidc = { identity_id, token_environment_variable_name } }。绝不要将client_id、client_secret或identity_id直接放在provider "infisical"块中—— 这属于不受支持的参数,会在 plan 阶段失败。(旧版service_token是唯一例外,可放在顶层。) - 临时密钥使用
name作为键:ephemeral "infisical_secret"接受name、workspace_id、env_slug和可选的folder_path。没有secret_key参数。 - 优先使用临时资源,而不是状态文件:对于密钥,始终建议使用
ephemeral资源(Terraform 1.10+),这样值永远不会写入状态文件。包含临时值的输出本身也必须标记为ephemeral = true。 - 机器身份验证:使用 Universal Auth 或 OIDC,绝不要使用 Service Tokens(旧版)。
- 权限使用 v2 格式:使用
permissions_v2(subject/action 结构);弃用permissions(v1)。 - Terraform Cloud 使用 OIDC:这是推荐的生产模式。
- Provider 来源:从 Terraform Registry 获取
infisical/infisical,不要使用社区 Provider。 - 文件夹路径默认值:如果省略
folder_path,则默认为"/"。 - 自托管需要
host:在 Provider 块上设置host属性;不存在站点 URL 环境变量。
何时引导用户查看参考文档
- 对身份验证或环境变量设置有疑问 → provider-setup.md
- 编写密钥、角色、审批策略的 HCL → resources-and-data-sources.md
- Terraform Cloud(TFC)与 Infisical 的分步指南 → terraform-cloud-oidc.md
评论
支持 Markdown