Skip to content

本文为 SPIRE 官方文档 plugin_server_bundlepublisher_aws_rolesanywhere_trustanchor 的中文译本,以英文原文为准。 🔗 穿越源码分析:Server 详解 · BundlePublisher

Server 插件:BundlePublisher "aws_rolesanywhere_trustanchor"

WARNING

AWS Roles Anywhere 每个 trust anchor 最多只允许配置两个 CA。如果你使用该插件,需要 确保该信任域(trust domain)的信任包(trust bundle)中最多只有 2 个 CA,否则发布信任包 将会失败。这可以通过为 spire-server 配置 UpstreamAuthority 插件来实现。 此外请注意,已过期的 CA 只有在过期 24 小时之后才会从信任包中移除。

aws_rolesanywhere_trustanchor 插件将 server 当前的信任包(trust bundle)存入一个 trust anchor,并保持其持续更新。

该插件接受以下配置选项:

配置项说明是否必填默认值
access_key_idAWS 访问密钥 ID(access key id)。仅当环境中未通过其他方式设置 AWS 凭据时必填。AWS_ACCESS_KEY_ID 环境变量的值。
secret_access_keyAWS 私密访问密钥(secret access key)。仅当环境中未通过其他方式设置 AWS 凭据时必填。AWS_SECRET_ACCESS_KEY 环境变量的值。
region用于存储信任包的 AWS 区域。是。
trust_anchor_id信任包要存入的 AWS IAM Roles Anywhere trust anchor 的 id。是。

AWS IAM 权限

由所配置凭据标识的用户需要具备 rolesanywhere:UpdateTrustAnchor 权限。

示例配置

以下配置将本地信任包内容放入 spire-trust-anchor trust anchor 并保持其持续更新。AWS 凭据从环境中获取。

hcl
    BundlePublisher "aws_rolesanywhere_trustanchor" {
        plugin_data {
            region = "us-east-1"
            trust_anchor_id = "153d3e58-cab5-4a59-a0a1-3febad2937c4"
        }
    }