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 |