使用標(biāo)簽控制對(duì)密鑰和憑據(jù)的訪問
本文介紹如何基于標(biāo)簽,控制RAM用戶或RAM角色對(duì)密鑰和憑據(jù)的訪問權(quán)限。
功能介紹
當(dāng)您為RAM用戶或者RAM角色授予自定義權(quán)限策略、密鑰策略、憑據(jù)策略時(shí),KMS支持通過標(biāo)簽,設(shè)置允許或者禁止訪問帶有特定標(biāo)簽的密鑰和憑據(jù)。標(biāo)簽的條件關(guān)鍵字為kms:tag
,詳細(xì)內(nèi)容,請(qǐng)參見密鑰管理服務(wù)自定義權(quán)限策略參考、密鑰策略、憑據(jù)策略、條件鍵。
由于多個(gè)密鑰和憑據(jù)允許有相同的標(biāo)簽,因此該功能可以將權(quán)限應(yīng)用于一組特定的密鑰或憑據(jù)。設(shè)置完成后,您還可以通過更改密鑰和憑據(jù)的標(biāo)簽,修改允許或者禁止訪問的密鑰和憑據(jù)。例如,您的自定義權(quán)限策略允許訪問帶有標(biāo)簽A的密鑰,其中帶有標(biāo)簽A的密鑰有兩個(gè)(密鑰1和密鑰2),后續(xù)您又為密鑰3綁定了標(biāo)簽A,那么該自定義權(quán)限策略會(huì)自動(dòng)允許訪問密鑰3。
示例說明
企業(yè)的3個(gè)應(yīng)用(App1、App2、App3)分布在不同的環(huán)境,企業(yè)分別購買了3個(gè)KMS實(shí)例(KMS實(shí)例A,KMS實(shí)例B,KMS實(shí)例C)。
管理員(阿里云主賬號(hào))已經(jīng)為3個(gè)KMS實(shí)例的密鑰和憑據(jù)設(shè)置了標(biāo)簽,標(biāo)簽與應(yīng)用相關(guān)。例如應(yīng)用App1訪問的密鑰和憑據(jù),設(shè)置了標(biāo)簽Application=App1。
管理員設(shè)置了3個(gè)子賬號(hào)(RAM用戶),App1 Admin、App2 Admin、App3 Admin。
管理員需要為每個(gè)子賬號(hào)設(shè)置權(quán)限策略,允許訪問指定的密鑰和憑據(jù)。例如,設(shè)置子賬號(hào)App2 Admin能訪問3個(gè)KMS實(shí)例中設(shè)置了標(biāo)簽為Application=App2的密鑰和憑據(jù)。您可以為子賬號(hào)授予如下自定義權(quán)限策略。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "kms:*",
"Resource": "*",
"Condition": {
"StringEqualsIgnoreCase": {
"kms:tag/Application": [
"App2"
]
}
}
}
]
}
Effect
:授權(quán)效果。取值有允許(Allow)和拒絕(Deny)。Action
:支持的操作,具體的API列表,請(qǐng)參見條件鍵。kms:*
表示列表中的所有API接口。Resource
:指被授權(quán)的具體對(duì)象,*表示KMS實(shí)例所有的密鑰和憑據(jù)。您也可以設(shè)置更精細(xì)的資源范圍,具體格式,請(qǐng)參見授權(quán)信息。Condition
:指授權(quán)生效的條件。詳細(xì)取值,請(qǐng)參見權(quán)限策略基本元素。
相關(guān)文檔
權(quán)限策略由效果(Effect)、操作(Action)、資源(Resource)、條件(Condition)和授權(quán)主體(Principal)等基本元素組成。詳細(xì)介紹,請(qǐng)參見權(quán)限策略基本元素。