Skip to content

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

Server 插件:Notifier "gcs_bundle"

gcs_bundle 插件会在证书包加载/更新事件(bundle loaded/updated)发生时作出响应,从信任包(trust bundle)中获取最新的根 CA 证书,并将其推送到 Google Cloud Storage 中的某个对象(object)。

该对象中的证书可用于引导(bootstrap)SPIRE agent。

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

配置项说明默认值
bucket存放对象的存储桶(bucket)
object_path对象在存储桶内的路径
service_account_file服务账号(service account)凭据文件的路径

通过 Google Cloud Storage 进行认证

该插件使用 Google Cloud 认证文档中描述的机制与 Google Cloud Storage 进行认证。具体而言,服务账号凭据既可以通过 service_account_file 配置的文件路径获取,也可以由插件使用 SPIRE server 运行环境中可用的应用默认凭据(Application Default Credentials)。

示例配置

通过应用默认凭据(Application Default Credentials)认证

以下配置将证书包内容上传到 my-bucket 存储桶中的 spire-bundle.pem 对象。上传使用 SPIRE server 运行环境中可用的应用默认凭据。

hcl
    Notifier "gcs_bundle" {
        plugin_data {
            bucket = "my-bucket"
            object_path = "spire-bundle.pem"
        }
    }

通过显式指定的服务账号凭据认证

以下配置将证书包内容上传到 my-bucket 存储桶中的 spire-bundle.pem 对象。上传使用 /path/to/service/account/file 文件中的服务账号凭据。

hcl
    Notifier "gcs_bundle" {
        plugin_data {
            bucket = "my-bucket"
            object_path = "spire-bundle.pem"
            service_account_file = "/path/to/service/account/file"
        }
    }