本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
範例政策:使用條件金鑰
以下是如何在 Aurora IAM許可政策中使用條件金鑰的範例。
範例 1:授予許可來建立一個使用特定資料庫引擎且不是多個可用區的資料庫執行個體
下列政策使用 RDS 條件金鑰,並允許使用者只建立使用 MySQL 資料庫引擎且未使用 MultiAZ 的資料庫執行個體。Condition
元素表示資料庫引擎為 My 的要求SQL。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowMySQLCreate", "Effect": "Allow", "Action": "rds:CreateDBInstance", "Resource": "*", "Condition": { "StringEquals": { "rds:DatabaseEngine": "mysql" }, "Bool": { "rds:MultiAz": false } } } ] }
範例 2:明確拒絕為特定資料庫執行個體類別建立資料庫執行個體的許可,並建立使用佈建的資料庫執行個體 IOPS
下列政策明確拒絕許可,不得建立使用資料庫執行個體類別 r3.8xlarge
和 m4.10xlarge
的資料庫執行個體,因為它們是最大且最昂貴的資料庫執行個體類別。此政策也會防止使用者建立使用佈建 的資料庫執行個體IOPS,這會產生額外的成本。
明確拒絕許可會取代任何其他已授予的許可。這確保身分不會意外取得您從未想要授予的許可。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyLargeCreate", "Effect": "Deny", "Action": "rds:CreateDBInstance", "Resource": "*", "Condition": { "StringEquals": { "rds:DatabaseClass": [ "db.r3.8xlarge", "db.m4.10xlarge" ] } } }, { "Sid": "DenyPIOPSCreate", "Effect": "Deny", "Action": "rds:CreateDBInstance", "Resource": "*", "Condition": { "NumericNotEquals": { "rds:Piops": "0" } } } ] }
範例 3:限制可用來標記資源的一組標籤金鑰和值
下列政策使用 RDS 條件金鑰,並允許將具有金鑰的標籤新增至具有值 test
、 qa
和 stage
的資源production
。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rds:AddTagsToResource", "rds:RemoveTagsFromResource" ], "Resource": "*", "Condition": { "streq": { "rds:req-tag/stage": [ "test", "qa", "production" ] } } } ] }