日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

密鑰策略概述

密鑰策略是基于資源的策略,用于控制哪些阿里云賬號、RAM用戶、RAM角色有權限來管理或使用KMS密鑰,KMS實例中的每個密鑰必須有且只有一個密鑰策略。本文介紹密鑰策略的詳細信息。

密鑰策略與訪問控制RAM的權限策略的關系

密鑰策略支持將當前阿里云賬號(密鑰所屬的阿里云賬號)下的RAM用戶、RAM角色設置為管理員或使用者,將其他阿里云賬號下的RAM用戶、RAM角色設置為使用者。

除了在KMS上設置密鑰策略外,您也可以在訪問控制RAM上設置基于身份的策略,用于指定阿里云賬號、RAM用戶、RAM角色可以管理或使用哪些密鑰。具體操作,請參見為RAM用戶授權為RAM角色授權、密鑰管理服務自定義權限策略參考

當阿里云賬號、RAM身份(RAM用戶或RAM角色)通過阿里云控制臺、OpenAPI或CLI發起KMS資源訪問請求時,都需要執行權限策略的判定流程,根據判定結果決定是否被允許訪問。具體請參見如下流程圖和說明。

image

判定結果遵循如下原則:

  • 如果是當前阿里云賬號下的RAM用戶、RAM角色:判定結果A或者判定結果B中,有一個是允許(Allow)且無Explicit Deny(顯式拒絕),即允許管理或使用該密鑰。

    說明
    • 當前阿里云賬號,即密鑰創建者的阿里云賬號。您可以通過如下方式查看密鑰創建者:

      • 通過控制臺:登錄密鑰管理服務控制臺,在密鑰管理頁面,進入密鑰詳情頁面,查看創建者。

      • 通過OpenAPI:調用DescribeKey接口,響應消息中的Creator即創建者。

    • 關于Explicit Deny(顯式拒絕)、Implicit Deny(隱式拒絕)的詳細介紹,請參見權限策略判定流程

  • 如果是其他阿里云賬號下的RAM用戶、RAM角色:判定結果A和判定結果B,必須都是允許(Allow),才允許使用該密鑰。

通過上述判斷流程,您可以了解到:

  • 如果您想允許當前阿里云賬號下的RAM用戶、RAM角色管理或使用密鑰,只需在KMS側設置密鑰策略允許其管理或使用密鑰,或者在RAM側設置權限策略允許其管理或使用密鑰。

  • 如果您想允許其他阿里云賬號下的RAM用戶、RAM角色使用密鑰,不僅需要在KMS側設置密鑰策略允許其使用密鑰,同時還要在RAM側設置權限策略允許其使用密鑰。

注意事項

  • 僅KMS實例中的密鑰支持密鑰策略。您可在創建密鑰時設置密鑰策略,也可在創建后進行修改,具體請參見創建密鑰設置密鑰策略。

  • 如果您授權給其他阿里云賬號下的RAM用戶、RAM角色,會消耗KMS實例的訪問管理數量配額,按阿里云賬號個數計算消耗的配額。如果您后續取消跨賬號的授權且該實例沒有其他資源分享給此賬號時,請等待約5分鐘再查看配額,配額會返還。

  • 密鑰策略僅適用于通過KMS服務Endpoint訪問密鑰時,對訪問權限進行判定。如果您是通過KMS實例Endpoint訪問密鑰,是否能訪問依賴于應用接入點AAP中配置的權限策略。

  • 密鑰策略的內容長度不超過32768個字節,且為JSON格式。

密鑰策略說明

完整的密鑰策略包含如下內容:

  • Version:密鑰策略的版本,目前版本僅支持設置為1。

  • Statement:密鑰策略的語句,每個密鑰策略包含一個或多個語句。每個語句包含以下幾個參數。

    • Sid

      可選,表示自定義的語句標識符。內容長度小于等于128字符,支持的字符為:大寫英文字母(A-Z)、小寫英文字母(a-z)、數字(0-9),特殊字符( _/+=.@-)。

    • Effect

      必選,表示是允許還是拒絕該策略語句中的權限。取值為:AllowDeny

    • Principal

      必選,表示權限策略的授權主體,支持設置為以下主體:

      • 當前阿里云賬號,即密鑰所屬的阿里云賬號。

      • 當前阿里云賬號下的RAM用戶、RAM角色。

      • 其他阿里云賬號下的RAM用戶、RAM角色。

        重要

        授權給其他阿里云賬號下的RAM用戶、RAM角色后,您仍需在訪問控制RAM側,使用該RAM用戶、RAM角色的阿里云賬號為其授權使用該密鑰,RAM用戶、RAM角色才能使用該密鑰。

        具體操作,請參見密鑰管理服務自定義權限策略參考、為RAM用戶授權、為RAM角色授權

    • Action

      必選,表示要允許或拒絕的API操作,內容必須以"kms:"開頭。操作權限列表的范圍如下,如果您設置了列表外的操作,設置后也不會生效。

      權限列表

       "Action": [
                      "kms:List*",
                      "kms:Describe*",
                      "kms:Create*",
                      "kms:Enable*",
                      "kms:Disable*",
                      "kms:Get*",
                      "kms:Set*",
                      "kms:Update*",
                      "kms:Delete*",
                      "kms:Cancel*",
                      "kms:TagResource",
                      "kms:UntagResource",
                      "kms:ImportKeyMaterial",
                      "kms:ScheduleKeyDeletion"
                      "kms:Encrypt",
                      "kms:Decrypt",
                      "kms:GenerateDataKey",
                      "kms:GenerateAndExportDataKey",
                      "kms:AsymmetricEncrypt",
                      "kms:AsymmetricDecrypt",
                      "kms:DescribeKey",
                      "kms:DescribeKeyVersion",
                      "kms:ListKeyVersions",
                      "kms:ListAliasesByKeyId",
                      "kms:TagResource"
                  ]

    • Resource

      必選,取值只能是*,表示本KMS密鑰。

    • Condition

      可選,表示授權生效的限制條件。Condition元素也稱為條件塊(Condition Block),它是由一個或多個條件子句構成。一個條件子句由條件操作類型、條件關鍵字和條件值組成。詳細信息,請參見權限策略基本元素

      格式為"Condition": {"condition operator": {"condition key": "condition value"}}。

      • condition operator:具體請參見條件操作類型。

      • condition key、condition value:密鑰策略支持的條件關鍵字及取值,具體請參見條件鍵

密鑰策略示例

為阿里云賬號(119285303511****)下的密鑰設置密鑰策略為例。示例表示:

  • 允許當前阿里云賬號(119285303511****)對該密鑰的完全訪問權限,即管理和使用密鑰。

  • 允許當前阿里云賬號(119285303511****)下的RAM用戶(key_ramuser1)管理密鑰。

  • 允許當前阿里云賬號(119285303511****)下的RAM用戶(key_ramuser2)、其他阿里云賬號(190325303126****)下的RAM用戶(key_ramuser3)使用密鑰。

{
    "Statement": [
        {
            "Action": [
                "kms:*"
            ],
            "Effect": "Allow",
            "Principal": {
                "RAM": [
                    "acs:ram::119285303511****:*"
                ]
            },
            "Resource": [
                "*"
            ],
            "Sid": "kms default key policy"
        },
        {
            "Action": [
                "kms:List*",
                "kms:Describe*",
                "kms:Create*",
                "kms:Enable*",
                "kms:Disable*",
                "kms:Get*",
                "kms:Set*",
                "kms:Update*",
                "kms:Delete*",
                "kms:Cancel*",
                "kms:TagResource",
                "kms:UntagResource",
                "kms:ImportKeyMaterial",
                "kms:ScheduleKeyDeletion"
            ],
            "Effect": "Allow",
            "Principal": {
                "RAM": [
                    "acs:ram::119285303511****:user/key_ramuser1"
                ]
            },
            "Resource": [
                "*"
            ]
        },
        {
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:GenerateDataKey",
                "kms:GenerateAndExportDataKey",
                "kms:AsymmetricEncrypt",
                "kms:AsymmetricDecrypt",
                "kms:DescribeKey",
                "kms:DescribeKeyVersion",
                "kms:ListKeyVersions",
                "kms:ListAliasesByKeyId",
                "kms:TagResource"
            ],
            "Effect": "Allow",
            "Principal": {
                "RAM": [
                    "acs:ram::119285303511****:user/key_ramuser2",
                    "acs:ram::190325303126****:user/key_ramuser3"
                ]
            },
            "Resource": [
                "*"
            ]
        }
    ],
    "Version": "1"
}