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

Key Management Service:秘密ポリシーの設定

最終更新日:Jan 20, 2025

リソースアクセス管理 (RAM) ユーザーとRAMロールをシークレットポリシーに追加または削除して、シークレットの管理者とユーザーを設定できます。 このトピックでは、シークレットポリシーを設定する方法について説明します。

注意事項

  • シークレットポリシーは、Key Management Service (KMS) インスタンスのシークレットに対してのみ設定できます。 シークレットの作成時またはシークレットの作成後に、シークレットポリシーを設定できます。 シークレットの作成時にシークレットポリシーを設定する方法については、「ジェネリックシークレットの管理と使用」をご参照ください。 このトピックでは、シークレットの作成後にシークレットポリシーを設定する方法について説明します。

  • シークレットポリシーの内容は32,768バイトを超えることはできず、JSON形式である必要があります。

  • KMSコンソールでシークレットポリシーを設定するときは、デフォルトポリシーを使用するか、カスタムポリシーを設定できます。 カスタムポリシーを構成する場合、RAMユーザーまたはロールをシークレットの管理者およびユーザーとして設定し、クロスアカウントユーザーを設定できます。 より洗練されたシークレットポリシーを設定する場合は、API操作を呼び出すことができます。

    次のリストでは、シークレットポリシーで構成できる操作について説明します。 リストにない操作を構成した場合、設定は有効になりません。

    "Action": [
                    "kms:List*",
                    "kms:Describe*",
                    "kms:PutSecretValue",
                    "kms:Update*",
                    "kms:DeleteSecret",
                    "kms:RestoreSecret",
                    "kms:RotateSecret",
                    "kms:TagResource",
                    "kms:UntagResource"
                    "kms:GetSecretValue"
                ]
  • 別のAlibaba CloudアカウントのRAMユーザーまたはRAMロールにシークレットの使用を許可する場合は、KMSコンソールでシークレットポリシーを設定し、RAMコンソールで権限ポリシーを設定する必要があります。 詳細については、「RAMを使用したKMSリソースへのアクセスの管理」、「RAMユーザーへの権限の付与」、および「RAMロールへの権限の付与」をご参照ください。

KMSコンソールでのシークレットポリシーの設定

  1. KMS コンソールにログインします。 上部のナビゲーションバーで、リージョンを選択します。 左側のナビゲーションウィンドウで、リソース > 資格情報管理 を選択します。

  2. 資格情報管理 ページで、ポリシーを設定するシークレットを見つけ、シークレット名をクリックするか、シークレットに対応する 操作 列の 詳細 をクリックします。

  3. 詳細ページの Secret Policy タブで、Configure Secret Policy をクリックします。 秘密のポリシーパネルで、ポリシーを設定します。 そして、[OK] をクリックします。

    シークレットポリシーパネルでは、シークレットの管理者、ユーザー、およびクロスアカウントユーザーを設定できます。

    • 管理者はシークレットを管理できますが、シークレット値を取得できません。 現在のAlibaba CloudアカウントのRAMユーザーとRAMロールをシークレットの管理者として選択できます。

      シークレットの管理者の設定

      次の例では、key_ramuser1 RAMユーザーとkey_ramrole1 RAMロールが管理者としてシークレットを管理できます。

              {
                  "Action": [
                      "kms:List*",
                      "kms:Describe*",
                      "kms:PutSecretValue",
                      "kms:Update*",
                      "kms:DeleteSecret",
                      "kms:RestoreSecret",
                      "kms:RotateSecret",
                      "kms:TagResource",
                      "kms:UntagResource"
                  ],
                  "Effect": "Allow",
                  "Principal": {
                      "RAM": [
                          "acs:ram::119285303511****:user/key_ramuser1",
                          "acs:ram::119285303511****:role/key_ramrole1"
                      ]
                  },
                  "Resource": [
                      "*"
                  ]
              }
    • ユーザーはシークレット値のみを取得できます。 現在のAlibaba CloudアカウントのRAMユーザーとRAMロールをシークレットの管理者として選択できます。

      シークレットのユーザーの設定

      次の例では、key_ramuser2 RAMユーザーとkey_ramrole2 RAMロールがシークレット値を取得できます。

              {
                  "Action": [
                      "kms:List*",
                      "kms:Describe*",
                      "kms:GetSecretValue"
                  ],
                  "Effect": "Allow",
                  "Principal": {
                      "RAM": [
                          "acs:ram::119285303511****:user/key_ramuser2",
                          "acs:ram::119285303511****:role/key_ramrole2"
                      ]
                  },
                  "Resource": [
                      "*"
                  ]
              }
    • クロスアカウントユーザは、秘密値を取得することができる。 クロスアカウントユーザーは、RAMユーザーまたは他のAlibaba CloudアカウントのRAMロールにすることができます。

      • RAMユーザー: RAMユーザーの名前は、acs:ram ::<userId>:user/<ramuser> 形式です。 例: acs:ram::119285303511 ****:user/testpolicyuser

      • RAMロール: RAMロールの名前は、acs:ram ::<userId>:role/<ramrole> 形式です。 例: acs:ram::119285303511 ****:role/testpolicyrole

      クロスアカウントユーザーの設定

      次の例では、別のAlibaba Cloudアカウント (190325303126 ****) のkey_ramuser3 RAMユーザーがシークレット値を取得できます。

              {
                  "Action": [
                      "kms:List*",
                      "kms:Describe*",
                      "kms:GetSecretValue"
                  ],
                  "Effect": "Allow",
                  "Principal": {
                      "RAM": [
                          "acs:ram::190325303126****:user/key_ramuser3"
                      ]
                  },
                  "Resource": [
                      "*"
                  ]
              }