Vault、Key Managementおよびシークレットの詳細
このトピックでは、ボールト・サービスへのアクセスを制御するポリシーの記述の詳細を説明します。
個々のリソース・タイプ
vaults
keys
key-delegate
hsm-cluster
secrets
secret-versions
secret-bundles
secret-replication
集約リソース・タイプ
secret-family
ポリシーで<verb> secret-familyを使用することは、個々のシークレット・リソース・タイプごとに個別の<verb> <individual resource-type>ステートメントを使用してポリシーを記述することと同じです。(シークレット・リソース・タイプには、secrets、secret-versionsおよびsecret-bundlesのみが含まれます。) リソース・タイプsecret-replicationは、secret-family動詞に含まれていないことに注意してください。)
secret-familyに含まれる個々のリソース・タイプについて、各動詞でカバーされているAPI操作の詳細は、動詞とリソース・タイプの組合せの詳細の表を参照してください。
サポートされている変数
ボールトでは、すべての一般的な変数と、ここにリストされた変数がサポートされています。Oracle Cloud Infrastructureサービスでサポートされる一般的な変数の詳細は、すべてのリクエストの一般的な変数を参照してください。
| 変数 | 変数タイプ | コメント |
|---|---|---|
request.includePlainTextKey
|
文字列 | この変数を使用して、データ暗号化キーの生成リクエストに応答して暗号化キーに加えてプレーン・テキスト・キーを戻すかどうかを制御します。 |
request.kms-key.id
|
文字列 | この変数を使用して、ボールト・マスター暗号化キーなしでブロック・ボリュームまたはバケットを作成できるかどうかを制御します。 |
target.boot-volume.kms-key.id
|
文字列 | この変数を使用して、ボールト・マスター暗号化キーなしで作成されたブート・ボリュームでコンピュート・インスタンスを起動できるかどうかを制御します。 |
target.key.id
|
エンティティ(OCID) | この変数を使用して、OCID別に特定のキーへのアクセスを制御します。 |
target.vault.id
|
エンティティ(OCID) | この変数を使用して、OCID別に特定のボールトへのアクセスを制御します。 |
target.secret.name
|
文字列 | この変数を使用して、名前別に特定のシークレット、シークレット・バージョンおよびシークレット・バンドルへのアクセスを制御します。 |
target.secret.id
|
エンティティ(OCID) | この変数を使用して、OCID別に特定のシークレット、シークレット・バージョンおよびシークレット・バンドルへのアクセスを制御します。 |
動詞とリソース・タイプの組合せの詳細
次の表に、各動詞でカバーされている権限およびAPI操作を示します。アクセス・レベルは、inspect > read > use > manageの順に累積されます。たとえば、リソースを使用できるグループは、そのリソースを検査して読み取ることもできます。表セル内のプラス記号(+)は、その上のセルと比較して増分アクセスを示しますが、「余分なし」は増分アクセスを示しません。
たとえば、keysリソース・タイプに対するuse動詞には、read動詞と同じ権限およびAPI操作に加え、KEY_ENCRYPT権限とKEY_DECRYPT権限、および多数のAPI操作(Encrypt、DecryptおよびGenerateDataEncryptionKey)が含まれます。manage動詞は、use動詞と比較したときに、さらに権限とAPI操作を使用できます。
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| inspect | VAULT_INSPECT |
ListVaults
|
なし |
| read | INSPECT + VAULT_READ |
INSPECT +
|
なし |
| use | READ + VAULT_CREATE_KEY VAULT_IMPORT_KEY VAULT_CREATE_SECRET |
余分なし |
|
| manage | USE + VAULT_CREATE VAULT_UPDATE VAULT_DELETE VAULT_MOVE VAULT_BACKUP VAULT_RESTORE VAULT_REPLICATE |
USE +
|
なし |
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| inspect | KEY_INSPECT |
|
なし |
| read | INSPECT + KEY_READ |
INSPECT +
|
なし |
| use | READ + KEY_ENCRYPT KEY_DECRYPT KEY_EXPORT KEY_SIGN KEY_VERIFY |
READ +
|
なし |
| manage | USE + KEY_CREATE KEY_UPDATE KEY_ROTATE KEY_DELETE KEY_MOVE KEY_IMPORT KEY_BACKUP KEY_RESTORE |
USE +
|
|
key-delegate権限は、統合OCIサービスが特定のコンパートメント内の特定のキーを使用できるようにするために使用されます。たとえば、この権限タイプを使用して、Object Storageサービスが暗号化されたバケットを作成または更新したり、サービスがバケット内のデータを暗号化または復号化できるようにしたりできます。委任権限を付与されたユーザーには、指定されたキー自体を使用する権限がありませんが、指定されたサービスでキーを使用できるようにする権限があります。詳細は、次の共通ポリシーを参照してください。
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| use | KEY_ASSOCIATE KEY_DISASSOCIATE |
|
なし |
| 動詞 | 権限 | 完全にカバーされるAPI | 一部カバーされるAPI |
|---|---|---|---|
| インスペクト |
HSM_CLUSTER_INSPECT |
ListHsmClusters ListHsmPartitions |
なし |
|
read |
INSPECT + HSM_CLUSTER_READ |
GetHsmCluster GetHsmPartition |
なし |
|
use |
READ + HSM_CLUSTER_UPDATE |
GetPreCoUserCredentials DownloadCertificateSigningRequest UpdateHsmCluster UploadPartitionCertificates |
なし |
|
manage |
USE + HSM_CLUSTER_DELETE HSM_CLUSTER_CREATE HSM_CLUSTER_MOVE |
CreateHsmCluster ChangeHsmClusterCompartment ScheduleHsmClusterDeletion CancelHsmClusterDeletion |
なし |
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| inspect | SECRET_INSPECT |
ListSecrets
|
なし |
| read | INSPECT + SECRET_READ |
INSPECT +
|
なし |
| use | READ + SECRET_UPDATE |
READ +
|
READ +
|
| manage | USE + SECRET_CREATE SECRET_DELETE SECRET_MOVE SECRET_ROTATE SECRET_REPLICATE_CONFIGURE |
USE +
|
USE +
|
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| use | SECRET_REPLICATE |
none
|
リージョン間シークレット・レプリケーションを許可するには、vaultsecretリソース・プリンシパルに権限を付与する必要があります。 |
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| inspect | SECRET_VERSION_INSPECT |
ListSecretVersions
|
なし |
| read | INSPECT + SECRET_VERSION_READ |
INSPECT +
|
なし |
| manage | READ + SECRET_VERSION_DELETE |
余分なし |
|
| 動詞 | 権限 | 完全に対象となるAPI | 部分的に対象となるAPI |
|---|---|---|---|
| inspect | SECRET_BUNDLE_INSPECT |
ListSecretBundles
|
なし |
| read | INSPECT + SECRET_BUNDLE_READ |
INSPECT +
|
なし |
各API操作に必要な権限
次の表は、API操作を論理的な順序で、リソース・タイプ別にグループ化して示しています。
権限の詳細は、権限を参照してください。
| API操作 | 操作の使用に必要な権限 |
|---|---|
ListVaults
|
VAULT_INSPECT |
GetVault
|
VAULT_READ |
CreateVault
|
VAULT_CREATE |
UpdateVault
|
VAULT_UPDATE |
ScheduleVaultDeletion
|
VAULT_DELETE |
CancelVaultDeletion
|
VAULT_DELETE |
ChangeVaultCompartment
|
VAULT_MOVE |
BackupVault
|
VAULT_BACKUP |
RestoreVaultFromFile
|
VAULT_RESTORE |
RestoreVaultFromObjectStore
|
VAULT_RESTORE |
ListVaultReplicas |
VAULT_INSPECT |
CreateVaultReplica |
VAULT_REPLICATE |
DeleteVaultReplica |
VAULT_REPLICATE |
GetVaultUsage |
VAULT_READ |
ListKeys
|
KEY_INSPECT |
ListKeyVersions
|
KEY_INSPECT |
GetKey
|
KEY_READ |
CreateKey
|
KEY_CREATEとVAULT_CREATE_KEY |
EnableKey
|
KEY_UPDATE |
DisableKey
|
KEY_UPDATE |
UpdateKey
|
KEY_UPDATE |
ScheduleKeyDeletion
|
KEY_DELETE |
CancelKeyDeletion
|
KEY_DELETE |
ChangeKeyCompartment
|
KEY_MOVE |
BackupKey
|
KEY_BACKUP |
RestoreKeyFromFile
|
KEY_RESTORE |
RestoreKeyFromObjectStore
|
KEY_RESTORE |
GetKeyVersion
|
KEY_READ |
CreateKeyVersion
|
KEY_ROTATE |
ImportKey
|
KEY_IMPORTおよびVAULT_IMPORT_KEY |
ImportKeyVersion
|
KEY_IMPORT |
ExportKey
|
KEY_EXPORT |
GenerateDataEncryptionKey
|
KEY_ENCRYPT (統合サービスへの権限の委任時にKEY_ASSOCIATEを使用) |
Encrypt
|
KEY_ENCRYPT (統合サービスへの権限の委任時にKEY_ASSOCIATEを使用) |
Decrypt
|
KEY_DECRYPT (統合サービスへの権限の委任時にKEY_ASSOCIATEを使用) |
Sign |
KEY_SIGN |
Verify |
KEY_VERIFY |
CreateSecret
|
KEY_ENCRYPT、KEY_DECRYPT、SECRET_CREATEおよびVAULT_CREATE_SECRET (ソース・シークレットのリージョンでのリージョン間レプリケーションの構成を許可するには、SECRET_REPLICATE_CONFIGUREを追加します) |
UpdateSecret
|
SECRET_UPDATE (ソース・シークレットのリージョンでのリージョン間レプリケーションの構成を許可するには、SECRET_REPLICATE_CONFIGUREを追加します) |
ListSecrets
|
SECRET_INSPECT |
GetSecret
|
SECRET_READ |
RotateSecret |
SECRET_ROTATE |
ScheduleSecretDeletion
|
SECRET_DELETE |
ChangeSecretCompartment
|
SECRET_MOVEおよびSECRET_UPDATE |
ListSecretVersions
|
SECRET_VERSION_INSPECT |
GetSecretVersion
|
SECRET_VERSION_READ |
ScheduleSecretVersionDeletion
|
SECRET_VERSION_DELETEおよびSECRET_UPDATE |
CancelSecretVersionDeletion
|
SECRET_VERSION_DELETEおよびSECRET_UPDATE |
ListSecretBundles
|
SECRET_BUNDLE_INSPECT |
GetSecretBundle
|
SECRET_BUNDLE_READ |
GetSecretBundleByName
|
SECRET_BUNDLE_READ |
ScheduleSecretVersionDeletion
|
SECRET_VERSION_DELETEおよびSECRET_UPDATE |
CancelSecretVersionDeletion
|
SECRET_VERSION_DELETEおよびSECRET_UPDATE |
ListSecretBundles
|
SECRET_BUNDLE_INSPECT |
GetSecretBundle
|
SECRET_BUNDLE_READ |
GetSecretBundleByName
|
SECRET_BUNDLE_READ |
CreateHsmCluster |
HSM_CLUSTER_CREATE |
GetHsmCluster |
HSM_CLUSTER_READ |
GetHsmPartition |
HSM_CLUSTER_READ |
GetPreCoUserCredentials |
HSM_CLUSTER_UPDATE |
DownloadCertificateSigningRequest |
HSM_CLUSTER_UPDATE |
UpdateHsmCluster |
HSM_CLUSTER_UPDATE |
ChangeHsmClusterCompartment |
HSM_CLUSTER_MOVE |
UploadPartitionOwnerCertificate |
HSM_CLUSTER_UPDATE |
ScheduleHsmClusterDeletion |
HSM_CLUSTER_DELETE |
CancelDeletion |
HSM_CLUSTER_DELETE |
ListHsmClusters |
HSM_CLUSTER_INSPECT |
ListHsmPartitions |
HSM_CLUSTER_INSPECT |