Terraform TLS Provider

验证:未记录
适用版本
未记录
验证范围
尚未登记验证记录。
本文缩写(英文全称与中文含义)
缩写 英文全称/名称 中文含义
CA Certificate Authority 证书颁发机构
CSR Certificate Signing Request 证书签名请求
ECDSA Elliptic Curve Digital Signature Algorithm 椭圆曲线数字签名算法
HTTPS Hypertext Transfer Protocol Secure 使用 TLS 加密的 HTTP
TLS Transport Layer Security 传输层安全协议

用途#

生成密钥、证书签名请求(CSR)和证书。常用资源为 tls_private_key、tls_cert_request、tls_self_signed_cert、tls_locally_signed_cert。

示例#

为测试环境生成 ECDSA 私钥和有效期 7 天的自签名证书。

terraform {
  required_providers {
    tls = {
      source  = "hashicorp/tls"
      version = "~> 4.0"
    }
  }
}

resource "tls_private_key" "demo" {
  algorithm   = "ECDSA"
  ecdsa_curve = "P256"
}

resource "tls_self_signed_cert" "demo" {
  private_key_pem       = tls_private_key.demo.private_key_pem
  validity_period_hours = 168
  early_renewal_hours   = 24
  dns_names             = ["app.test"]
  allowed_uses          = ["digital_signature", "server_auth"]

  subject {
    common_name  = "app.test"
    organization = "Example"
  }
}

output "certificate_pem" {
  value = tls_self_signed_cert.demo.cert_pem
}

注意事项#

  • 自签名证书不会自动获得客户端信任;公开服务通常使用受信任 CA 或托管证书服务。
  • 本例的 tls_private_key 将私钥保存在 state;sensitive 只控制展示,不代表不落盘。
  • early_renewal_hours 在 Terraform 运行时参与续期判断,不会自动部署新证书或重启服务。
  • TLS provider 生成证书材料,不负责服务器的 HTTPS 配置。

参考#

搜索文档

输入关键词,搜索所有文档。

↑ ↓ 选择 · Enter 打开 · Esc 关闭