すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:csi-secrets-store-provider-alibabacloud を使用した Alibaba Cloud KMS サービス認証情報のインポート

最終更新日:Apr 30, 2026

csi-secrets-store-provider-alibabacloud コンポーネントを使用すると、KMS からクラスター内に Kubernetes Secret オブジェクトとしてサービス認証情報をインポートまたは同期できます。これにより、ワークロードが機密情報を安全にアクセスできるようになります。また、CSI インラインボリュームを使用して、サービス認証情報をワークロードのファイルシステムに直接マウントすることも可能です。この方法は、ファイルシステムから機密情報を読み取るアプリケーションに最適です。さらに、このコンポーネントではシークレットのローテーションが可能であり、Kubernetes Secret オブジェクト内の暗号文が漏洩するリスクを低減し、ワークロードと Secrets Manager 間の互換性の問題を解決します。

セキュリティに関する注意事項

ファイルシステムからシークレットを読み取るワークロードと Secrets Manager 間の直接的なやり取りは、互換性の問題を引き起こす可能性があります。csi-secrets-store-provider-alibabacloud コンポーネントはこれらの問題を解決し、シークレットをネイティブな Kubernetes Secret オブジェクトとして同期し、環境変数として使用できるようにします。作業を進める前に、以下のセキュリティリスクを評価してください。

    前提条件

    ステップ 1:コンポーネント認証の構成

    csi-secrets-store-provider-alibabacloud が KMS から認証情報の取得権限を持つように認証を構成する必要があります。構成しない場合、csi-secrets-store-provider-alibabacloud はクラスターへの認証情報のインポートや同期ができません。クラスタータイプに応じて、以下の 3 つの権限付与方式のいずれかを選択できます。

    RRSA を使用した権限付与

    1. csi-secrets-store-provider-alibabacloud のための OIDC ID プロバイダー向け RAM ロールを作成します。次の表のとおりパラメーターを設定してください。詳細については、「OIDC プロバイダー向け RAM ロールの作成」をご参照ください。

      パラメーター

      説明

      IdP タイプ

      OIDC を選択します。

      アイデンティティプロバイダー者

      ack-rrsa-<cluster_id> を選択します。<cluster_id> はご利用のクラスターの ID に置き換えてください。

      条件

      • oidc:iss:デフォルト値のままにしてください。

      • oidc:aud:デフォルト値のままにしてください。

      • oidc:sub:この条件を追加する必要があります。

        • キー:oidc:sub を選択します。

        • 演算子:StringEquals を選択します。

        • 値:system:serviceaccount:<namespace>:<serviceAccountName> を入力します。<namespace> はアプリケーションが配置されている名前空間に置き換え、<serviceAccountName> はサービスアカウントの名前に置き換えてください。本トピックでは、system:serviceaccount:kube-system:csi-secrets-store-provider-alibabacloud を入力します。

          説明

          コンポーネントはデフォルトの kube-system 名前空間にインストールすることを推奨します。csi-secrets-store-provider-alibabacloud を別の名前空間にインストールする場合は、kube-system をその名前空間の名前に置き換えてください。

    2. カスタムポリシーを作成し、前述の手順で作成した RAM ロールに権限を付与します。

      1. csi-secrets-store-provider-alibabacloud が KMS 認証情報をインポートするために必要な権限ポリシーを作成します。詳細については、「カスタムポリシーの作成」をご参照ください。ポリシーの内容は次のとおりです。

        {
            "Action": [
               "kms:GetSecretValue",
               "kms:Decrypt"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow"
        }
      2. 前述の手順で作成した RAM ロールに権限を付与します。詳細については、「RAM ロールの権限管理」をご参照ください。

    3. 次のテンプレートを使用して、クラスター内に alibaba-credentials という名前の Kubernetes Secret を作成します。プレースホルダーの値を置き換える必要があります。

      1. 次の内容で secretstore-rrsa.yaml という名前のファイルを作成します。プレースホルダーを実際の値に置き換えてください。

        • {rolearn}:これは、ステップ 2 で作成した RAM ロールの Base64 エンコードされた ARN に置き換えてください。

        • {oidcproviderarn}:これは、クラスターで RRSA を有効化した後に生成された OIDC プロバイダーの Base64 エンコードされた ARN に置き換えてください。

        apiVersion: v1
        data:
          rolearn: {rolearn}
          oidcproviderarn: {oidcproviderarn}
        kind: Secret
        metadata:
          name: alibaba-credentials
          namespace: kube-system
        type: Opaque	                     
      2. 次のコマンドを実行して、Kubernetes Secret をデプロイします。

        kubectl apply -f secretstore-rrsa.yaml

    ワーカー RAM ロールによる方式

    この方式は、ACK マネージドクラスターACK 専用クラスター、および ACK One 登録済みクラスター に適用されます。

    1. カスタムポリシーを作成します。詳細については、「カスタムポリシーの作成」をご参照ください。ポリシーの内容は次のとおりです。

      {
        "Action": [
          "kms:GetSecretValue",
          "kms:Decrypt"
        ],
        "Resource": [
          "*"
        ],
        "Effect": "Allow"
      }
      
    2. 前述の手順で作成したカスタムポリシーを、クラスターのワーカー RAM ロールにアタッチします。詳細については、「ワーカー RAM ロールへの権限付与」をご参照ください。

    AccessKey による方式

    この方式は、すべての ACK クラスターに適用されます。

    1. 信頼できる Alibaba Cloud アカウント向けの RAM ロールを作成し、csi-secrets-store-provider-alibabacloud コンポーネントで使用します。詳細については、「Alibaba Cloud アカウント向け RAM ロールの作成」をご参照ください。

      説明

      信頼できるエンティティには、現在のアカウント を選択します。

    2. カスタムポリシーを作成し、前述の手順で作成した RAM ロールに権限を付与します。

      1. KMS サービス認証情報にアクセスするために必要な権限ポリシーを作成します。詳細については、「カスタムポリシーの作成」をご参照ください。ポリシーの内容は次のとおりです。

        {
          "Action": [
            "kms:GetSecretValue",
            "kms:Decrypt"
          ],
          "Resource": [
            "*"
          ],
          "Effect": "Allow"
        }
        
      2. 前述の手順で作成した RAM ロールに権限を付与します。詳細については、「RAM ロールの権限管理」をご参照ください。

    3. 前述のロールを偽装する権限を付与するカスタムポリシーを作成し、そのポリシーを RAM ユーザーにアタッチします。

      1. ロールを偽装する権限を付与するカスタムポリシーを作成します。詳細については、「カスタムポリシーの作成」をご参照ください。ポリシーの内容は次のとおりです。

        {
            "Statement": [
                {
                    "Action": "sts:AssumeRole",
                    "Effect": "Allow",
                    "Resource": "acs:ram:*:<account-id>:role/<role-name>" 
                }
            ],
            "Version": "1"
        }

    4. 次のテンプレートに基づいて、クラスター内に alibaba-credentials という名前の Kubernetes Secret を作成します。プレースホルダーの値を置き換える必要があります。

      1. 次の内容で alibaba-credentials.yaml という名前のファイルを作成します。プレースホルダーを実際の値に置き換えてください。

        • {rolearn}:これは、ステップ 1 で作成した RAM ロールの Base64 エンコードされた ARN に置き換えてください。

        • {ak}:これは、RAM ユーザーの Base64 エンコードされた AccessKey ID に置き換えてください。

        • {sk} :これは、RAM ユーザーの Base64 エンコードされた AccessKey Secret に置き換えてください。

          apiVersion: v1
          data:
            id: {ak}
            secret: {sk}
            rolearn: {rolearn}
          kind: Secret
          metadata:
            name: alibaba-credentials
            namespace: kube-system
          type: Opaque
          
          
      2. 次のコマンドを実行して、Kubernetes Secret をデプロイします。

        kubectl apply -f alibaba-credentials.yaml

    ステップ 2:csi-secrets-store-provider-alibabacloud コンポーネントのインストール

    1. ACK コンソールにログインします。左側のナビゲーションウィンドウで、クラスターリスト をクリックします。

    2. クラスターリスト ページで、ご利用のクラスターの名前をクリックします。左側のナビゲーションウィンドウで、アプリケーション > Helm をクリックします。

    3. Helm ページで、デプロイ をクリックします。検索ボックスに csi-secrets-store-provider-alibabacloud と入力して選択します。他のパラメーターはデフォルト設定のままにして、 をクリックします。

      表示されるダイアログボックスで設定を確認します。コンポーネントはデフォルトの kube-system 名前空間にインストールされ、Helm リリース名はコンポーネント名と同じになります。カスタムのアプリケーション名と名前空間を使用する場合は、指示に従ってパラメーターを設定してください。

    4. 最新の Chart バージョン を選択します。パラメーター セクションで、ステップ 1 で選択した認証方式に基づいて関連パラメーターを設定し、OK をクリックします。

      • RRSA を使用した権限付与 を選択した場合は、rrsa.enable パラメーターを true に設定して、RRSA 機能を有効化します。image

        その他のパラメーターは次のとおり設定します。

        envVarsFromSecret:
        #  ACCESS_KEY_ID:
        #    secretKeyRef: alibaba-credentials
        #    key: id
        #  SECRET_ACCESS_KEY:
        #    secretKeyRef: alibaba-credentials
        #    key: secret
          ALICLOUD_ROLE_ARN:
            secretKeyRef: alibaba-credentials
            key: rolearn
        #  ALICLOUD_ROLE_SESSION_NAME:
        #    secretKeyRef: alibaba-credentials
        #    key: rolesessionname
        #  ALICLOUD_ROLE_SESSION_EXPIRATION:
        #    secretKeyRef: alibaba-credentials
        #   key: rolesessionexpiration
          ALICLOUD_OIDC_PROVIDER_ARN:
            secretKeyRef: alibaba-credentials
            key: oidcproviderarn
      • クラスターのワーカー RAM ロールへの権限付与 を選択した場合は、デフォルトのパラメーター設定を使用してコンポーネントをインストールできます。

      • 特定の RAM ロールを偽装するために AccessKey ID と Secret を指定する を選択した場合は、次のパラメーターを設定する必要があります。

        envVarsFromSecret:
          ACCESS_KEY_ID:
            secretKeyRef: alibaba-credentials
            key: id
          SECRET_ACCESS_KEY:
            secretKeyRef: alibaba-credentials
            key: secret
          ALICLOUD_ROLE_ARN:
            secretKeyRef: alibaba-credentials
            key: rolearn
        #  ALICLOUD_ROLE_SESSION_NAME:
        #    secretKeyRef: alibaba-credentials
        #    key: rolesessionname
        #  ALICLOUD_ROLE_SESSION_EXPIRATION:
        #    secretKeyRef: alibaba-credentials
        #    key: rolesessionexpiration
        #  ALICLOUD_OIDC_PROVIDER_ARN:
        #    secretKeyRef: alibaba-credentials
        #    key: oidcproviderarn
      • Kubernetes Secret も生成する場合は、次のパラメーターを設定する必要があります。image

        secrets-store-csi-driver.syncSecret.enabled:Kubernetes Secret としてシークレットの同期を有効化するかどうかを指定します。true に設定すると、必要な RBAC ロールおよびロールバインディングがデプロイされます。

      • 自動シークレットローテーションを有効化する場合は、次のパラメーターを設定します。image

        • secrets-store-csi-driver.enableSecretRotation:自動シークレットローテーションを有効化するかどうかを指定します。この機能を有効化するには、値を true に設定します。

        • secrets-store-csi-driver.rotationPollInterval:シークレットの同期間隔です。たとえば、120s は 2 分ごとにシークレットが同期されることを意味します。ビジネス要件に応じて値を変更できます。

      デプロイが成功すると、対象クラスターの csi-secrets-store-provider-alibabacloud ページにリダイレクトされます。インストール結果を確認してください。次の図に示されているすべてのリソースが正常に作成されていれば、コンポーネントはインストールされています。image.png

    ステップ 3:データ同期の構成

    認証を構成したら、SecretProviderClass を使用して KMS 認証情報の構成を行います。

    テンプレート

    以下は、SecretProviderClass テンプレートの形式です。

    apiVersion: secrets-store.csi.x-k8s.io/v1
    kind: SecretProviderClass
    metadata:
      name: <NAME>
    spec:
      provider: alibabacloud   # この値は 'alibabacloud' に固定されます。
      parameters:
        objects: |
          - objectName: <KMS 暗号化パラメーター名> # KMS 認証情報の名前。
            objectType: kms # KMS 認証情報を同期する場合は kms に固定されます。

    parameters フィールドには、マウントリクエストの次の設定が含まれます。

    パラメーター

    必須

    説明

    objects

    はい

    マウントするシークレットを YAML 配列として指定します。例:

    parameters:
      objects: |
        - objectName: "MySecret"
          objectType: "kms"

    objects パラメーターには、次のサブフィールドが含まれます。

    • objectName:必須。KMS の Secrets Manager に登録されているシークレットの名前です。詳細については、「SecretName」をご参照ください。

    • objectType:任意。同期する Alibaba Cloud サービスのタイプです。有効な値は kms および oos です。デフォルト値は kms です。KMS からサービス認証情報をインポートする場合は、このフィールドを省略できます。

    • objectAlias:任意。Pod 内にマウントされる認証情報のファイル名です。このフィールドを指定しない場合、objectName の値が使用されます。

    • objectVersion:任意。Secrets Manager の VersionId パラメーターに対応します。RDS、PolarDB、Redis/Tair、RAM、ECS の認証情報については、VersionId を指定できません。

    • objectVersionLabel:任意。Secrets Manager の VersionStage パラメーターに対応します。RDS、PolarDB、Redis/Tair、RAM、ECS の認証情報については、ACSPrevious および ACSCurrent バージョンに対応する認証情報の値のみ取得できます。

    • jmesPath:任意。JSON 形式の認証情報から特定のキーと値のペアを解析するために使用します。たとえば、次の test 認証情報には JSON オブジェクトが含まれています。

      {
          "username": "testuser",
          "password": "testpassword"
      }

      username および password を個別のシークレットファイルとしてマウントするには、次の JMESPath 設定を使用します。jmesPath フィールドを使用する場合は、次の 2 つのサブフィールドを指定する必要があります。

      • path:必須。JMESPath 仕様に基づいて、指定された設定項目を取得するパスを定義します。

      • objectAlias:必須。指定されたキーと値のペアは、このパラメーターの値をファイル名として使用してファイルとしてマウントされます。

    • kmsEndpoint:任意。KMS リクエストのエンドポイントです。これを設定しない場合、デフォルトのエンドポイントが使用されます。KMS の共有ゲートウェイまたは専用ゲートウェイに設定できます。この設定は認証情報レベルで行われるため、各認証情報ごとに異なるエンドポイントを指定できます。詳細については、「kmsEndpoint の構成」をご参照ください。

    region

    任意

    Secrets Manager サービスのリージョンです。このパラメーターを指定しない場合、ノードのリージョンが使用されます。ただし、大規模な Pod デプロイメントでは追加のパフォーマンスオーバーヘッドが発生する可能性があるため、リージョンを明示的に指定することを推奨します。

    pathTranslation

    任意

    • Secrets Manager のシークレット名にファイル区切り文字が含まれている場合、マウントされたシークレットファイルでは、このパラメーターで指定された文字が区切り文字として使用されます。たとえば、My/Path/Secret という名前のシークレットは、My_Path_Secret という名前のファイルとしてマウントされます。

    • このパラメーターを指定しない場合、アンダースコア (_) がデフォルトの区切り文字として使用されます。

    • このパラメーターを "False" に設定すると、マウントされたファイル名ではパス区切り文字がどの文字にも置き換えられません。

    使用例

    このセクションでは、ACK マネージドクラスター と同じリージョンにある test という名前の KMS サービス認証情報を SecretProviderClass を使用してワークロードにインポートする方法を示します。

    1. 次の内容で secretstore.yaml という名前のファイルを作成します。

      apiVersion: secrets-store.csi.x-k8s.io/v1
      kind: SecretProviderClass
      metadata:
        name: test-secrets
      spec:
        provider: alibabacloud   # この値は alibabacloud に固定されます。
        parameters:
          objects: | # objectType は oos および kms をサポートします。デフォルトは kms です。
            - objectName: "test-hangzhou"
              objectType: "kms"
              objectAlias: "hangzhou-public"
              kmsEndpoint:  "kms.{region}.aliyuncs.com"
    2. 次のコマンドを実行して、SecretProviderClass をデプロイします。

      kubectl apply -f secretstore.yaml
    3. 次の内容で deploy.yaml という名前のファイルを作成します。

      このマニフェストには、前述の手順で作成した SecretProviderClass を CSI インラインボリュームを通じて使用する NGINX デプロイメントが含まれています。認証情報は Pod の /mnt/secrets-store ディレクトリにマウントされます。デプロイメントの例の詳細については、「デプロイメントの例」をご参照ください。

      apiVersion: apps/v1  # 1.8.0 より前のバージョンでは apps/v1beta1 を使用します。
      kind: Deployment
      metadata:
        name: nginx-deployment-basic
        labels:
          app: nginx
      spec:
        replicas: 2
        selector:
          matchLabels:
            app: nginx
        template:
          metadata:
            labels:
              app: nginx
          spec:
            volumes:
              - name: secrets-store-inline
                csi:
                  driver: secrets-store.csi.k8s.io
                  readOnly: true
                  volumeAttributes:
                    secretProviderClass: "test-secrets"
            containers:
              - name: nginx
                image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6 # 実際のイメージに置き換えてください。
                ports:
                  - containerPort: 80
                resources:
                  limits:
                    cpu: "500m"
                volumeMounts:
                  - name: secrets-store-inline
                    mountPath: "/mnt/secrets-store"
                    readOnly: true
    4. 次のコマンドを実行して、アプリケーションをデプロイします。

      kubectl apply -f deploy.yaml
    5. シークレットが正しくマウントされていることを確認します。

      Pod にログインし、SecretProviderClass で指定されたシークレットと同じ名前のファイルがターゲットマウントパス /mnt/secrets-store に作成されているか、およびファイルの内容が KMS 認証情報で指定された暗号文であるかを確認します。

    KMS 認証情報を Kubernetes Secret に同期する

    Secrets Store CSI Driver は、Alibaba Cloud KMS や OOS などの外部シークレット管理サービスから取得したシークレットを自動的に同期し、クラスター内にネイティブな Kubernetes Secret として作成できます。これにより、アプリケーションはコードを変更せずに標準的な方法で外部シークレットを使用できます。

    構成方法:SecretProviderClass

    この機能を有効化するには、SecretProviderClass リソースの spec にオプションの secretObjects フィールドを追加します。

    apiVersion: secrets-store.csi.x-k8s.io/v1
    kind: SecretProviderClass
    metadata:
      name: <NAME>
    spec:
      provider: alibabacloud   # この値は alibabacloud に固定されます。変更しないでください。
      parameters:
        objects: |
          - objectName: <KMS 暗号化パラメーター名>  # KMS 認証情報の名前。
            objectType: kms     # KMS 認証情報を同期する場合は kms に固定されます。
      secretObjects:
      - secretName: <Kubernetes Secret 名>            # Kubernetes Secret の名前。
        type: <Kubernetes Secret タイプ>                  # Kubernetes Secret のタイプ。
        data:
        - objectName: <parameters.objects.objectName>   # parameters.objects.objectName の名前。エイリアスが指定されている場合はエイリアスを使用します。
          key: <Kubernetes Secret データキー>             # Kubernetes Secret データ内のキー名。

    secretObjects フィールドには、通常次のパラメーターが含まれます。

    パラメーター

    必須

    説明

    secretName

    はい

    クラスター内に作成される Kubernetes Secret の名前です。

    type

    はい

    作成する Secret のタイプです。有効な値には、Opaquekubernetes.io/basic-authbootstrap.kubernetes.io/tokenkubernetes.io/dockerconfigjsonkubernetes.io/dockercfgkubernetes.io/ssh-authkubernetes.io/service-account-token、および kubernetes.io/tls が含まれます。

    data

    はい

    取得したシークレットを Secretdata フィールドにマッピングする方法を定義します。次のサブフィールドが含まれます。

    • objectName:必須。parameters.objects で定義されたシークレット名 (objectName) を参照します。エイリアスが設定されている場合は、エイリアス (objectAlias) を参照します。

    • key:必須。Secretdata フィールド内でシークレットの内容に使用されるキーです。

    同期ライフサイクル

    同期された Secret オブジェクトのライフサイクルは、対応する SecretProviderClass をマウントする Pod によって動的にトリガーされます。

    • 作成:最初に SecretProviderClass を使用する Pod が起動してボリュームをマウントすると、ドライバーが Kubernetes Secret を作成します。

    • 更新:csi-secrets-store-provider-alibabacloud プロバイダーをインストールする際に secrets-store-csi-driver.enableSecretRotation パラメーターを true に設定した場合、対応する Kubernetes Secret は secrets-store-csi-driver.rotationPollInterval の値に基づいて定期的に更新されます。それ以外の場合は、Secret は更新されません。

    • 削除:SecretProviderClass を使用する最後の Pod が削除されると、対応する Kubernetes Secret も削除されます。

    例:認証情報の同期と注入

    次の手順では、KMS 認証情報を Kubernetes Secret に同期し、それを NGINX Pod の環境変数として注入する方法を示します。

    1. SecretProviderClass を作成します。

      次の内容で syncSecret.yaml という名前のファイルを作成します。これにより、外部シークレットの取得方法と同期方法が定義されます。

      apiVersion: secrets-store.csi.x-k8s.io/v1
      kind: SecretProviderClass
      metadata:
        name: alibabacloud-sync-secret
      spec:
        provider: alibabacloud
        parameters:
          objects: |
            - objectName: test-kms
              objectAlias: secretalias
              objectType: kms
        secretObjects:
        - secretName: test-sync-secret  # 生成される Kubernetes Secret の名前。
          type: Opaque
          data:
          - objectName: secretalias     # objectName または objectAlias に対応します。
            key: test                   # 生成される Kubernetes Secret の data キーを設定します。
    2. SecretProviderClass をデプロイします。

      kubectl apply -f syncSecret.yaml
    3. 同期をトリガーするアプリケーション Pod を作成します。

      次の内容で pod-sync-secret.yaml ファイルを作成します。この Pod は前述の SecretProviderClass をマウントし、生成される test-sync-secret という名前の Secret を参照するために secretKeyRef を使用しようとします。

      kind: Pod
      apiVersion: v1
      metadata:
        name: pod-sync-secret
      spec:
        containers:
          - name: nginx
            image: nginx:latest
            volumeMounts:
            - name: secrets-store-inline
              mountPath: "/mnt/secrets-store"
              readOnly: true
            env:  
            - name: SECRET_TEST
              valueFrom:
                secretKeyRef:
                  name: test-sync-secret
                  key: test
        volumes:
          - name: secrets-store-inline
            csi:
              driver: secrets-store.csi.k8s.io
              readOnly: true
              volumeAttributes:
                secretProviderClass: "alibabacloud-sync-secret"
    4. シークレットの同期をトリガーするために Pod をデプロイします。

      kubectl apply -f pod-sync-secret.yaml
    5. 結果を確認します。

      1. Kubernetes Secret が作成されているか確認します。

        kubectl get secret test-sync-secret

        コマンドの出力には、test-sync-secret Kubernetes Secret が表示されます。

      2. 環境変数が Pod に正常に注入されているか確認します。

        kubectl exec -it $(kubectl get pods | awk '/pod-sync-secret/{print $1}' | head -1) -- env

        出力には、SECRET_TEST 環境変数とその値(KMS シークレットの値と一致)が含まれます。

    kmsEndpoint の構成

    専用ゲートウェイまたは共有ゲートウェイを使用して KMS 認証情報にアクセスできます。次の要件に従ってエンドポイントを構成してください。専用ゲートウェイと共有ゲートウェイの違いの詳細については、「共有ゲートウェイと専用ゲートウェイの違い」をご参照ください。

    KMS エンドポイントアドレス

    KMS エンドポイント構成例

    apiVersion: secrets-store.csi.x-k8s.io/v1
    kind: SecretProviderClass
    metadata:
      name: test
    spec:
      provider: alibabacloud # 'alibabacloud' に固定されます
      parameters:
        # ゲートウェイ使用例:
        # hangzhou-public は共有ゲートウェイのパブリックエンドポイントを使用します。{region} は KMS 認証情報が配置されているリージョンに置き換えてください。この方法では、クラスターとは異なるリージョンの KMS 認証情報にアクセスできます。
        # hangzhou-vpc は kmsEndpoint フィールドを指定せず、共有ゲートウェイのデフォルト VPC エンドポイントを使用します。
        # hangzhou-cryptoservice は専用ゲートウェイを使用します。{kms-instance-id} は KMS インスタンスの ID に置き換えてください。
        # london-public は共有ゲートウェイのパブリックエンドポイントを使用します。{region} は KMS 認証情報が配置されているリージョンに置き換えてください。この方法では、クラスターとは異なるリージョンの KMS 認証情報にアクセスできます。
        objects: |
          - objectName: "test-hangzhou"
            objectType: "kms"
            objectAlias: "hangzhou-public"
            kmsEndpoint:  "kms.{region}.aliyuncs.com"
          - objectName: "test-hangzhou"
            objectType: "kms"
            objectAlias: "hangzhou-vpc"
          - objectName: "test-hangzhou"
            objectType: "kms"
            objectAlias: "hangzhou-cryptoservice"
            kmsEndpoint:  "{kms-instance-id}.cryptoservice.kms.aliyuncs.com"
          - objectName: "test-london"
            objectAlias: "london-public"
            kmsEndpoint:  "kms.{region}.aliyuncs.com"

    関連ドキュメント