Custom policies can be created as a supplement to the system policies of KMS. For details about the actions supported by custom policies, see "Permissions Policies and Supported Actions" in Key Management Service API Reference.
You can create custom policies in either of the following ways:
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "kms:cmk:create", "kms:cmk:getMaterial", "kms:cmkTag:create", "kms:cmkTag:batch", "kms:cmk:importMaterial" ] } ] }
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "kms:dek:crypto", "kms:cmk:get", "kms:cmk:crypto", "kms:cmk:generate", "kms:cmk:list" ] } ] }
A custom policy can contain actions of multiple services that are all of the global or project-level type. The following is a policy with multiple statements:
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "rds:task:list" ] }, { "Effect": "Allow", "Action": [ "kms:dek:crypto", "kms:cmk:get", "kms:cmk:crypto", "kms:cmk:generate", "kms:cmk:list" ] } ] }