protoPayload
field in its Data Access audit log entries. During the migration period, the
protoPayload
within Data Access audit log entries will remain
backward-compatible. However, new or future code applications should use the
recommended replacement fields as follows:
Recommended replacement field | Deprecated field | Description |
---|---|---|
protoPayload.status.details |
protoPayload.metadata |
Error detail for EXTERNAL (i.e., Cloud EKM) key operations. |
protoPayload.metadata.entries.caller_provided_context |
protoPayload.request.caller_provided_context |
Context from the caller associated with this Cloud KMS operation. |
This document describes audit logging for Cloud Key Management Service. Google Cloud services write audit logs that record administrative activities and accesses within your Google Cloud resources. For more information, see Cloud Audit Logs overview.
Service name
Cloud Key Management Service audit logs use the service name cloudkms.googleapis.com
.
Methods by permission type
Methods that check DATA_READ
, DATA_WRITE
, and ADMIN_READ
permission types are Data Access audit logs.
Methods that check ADMIN_WRITE
permission types are Admin Activity audit logs.
Permission type | Methods |
---|---|
ADMIN_READ | GetCryptoKey GetCryptoKeyVersion GetEkmConfig GetEkmConnection GetIamPolicy GetImportJob GetKeyRing ListCryptoKeyVersions ListCryptoKeys ListEkmConnections ListImportJobs ListKeyRings VerifyConnectivity google.cloud.kms.v1.Autokey.GetKeyHandle google.cloud.kms.v1.Autokey.ListKeyHandles google.cloud.kms.v1.AutokeyAdmin.GetAutokeyConfig google.cloud.kms.v1.AutokeyAdmin.ShowEffectiveAutokeyConfig |
ADMIN_WRITE | CreateCryptoKey CreateCryptoKeyVersion CreateEkmConnection CreateImportJob CreateKeyRing DestroyCryptoKeyVersion GetOperation ImportCryptoKeyVersion RestoreCryptoKeyVersion SetIamPolicy UpdateCryptoKey UpdateCryptoKeyPrimaryVersion UpdateCryptoKeyVersion UpdateEkmConfig UpdateEkmConnection google.cloud.kms.v1.Autokey.CreateKeyHandle google.cloud.kms.v1.AutokeyAdmin.UpdateAutokeyConfig |
DATA_READ | AsymmetricDecrypt AsymmetricSign Decrypt Encrypt GetPublicKey MacSign MacVerify RawDecrypt RawEncrypt |
Audit logs per API interface
For information about which permissions are evaluated and how for each method, see the Identity and Access Management documentation for Cloud Key Management Service.
google.cloud.kms.v1.Autokey
Details about audit logs associated with methods belonging to google.cloud.kms.v1.Autokey
.
google.cloud.kms.v1.Autokey.CreateKeyHandle
- Method: google.cloud.kms.v1.Autokey.CreateKeyHandle
- Audit log Type: Admin Activity
- Permissions:
cloudkms.keyHandles.create - ADMIN_WRITE
- Method is a Long Running Operation or Streaming:
Long Running Operation
- Filter for this method:
protoPayload.methodName="google.cloud.kms.v1.Autokey.CreateKeyHandle"
google.cloud.kms.v1.Autokey.GetKeyHandle
- Method: google.cloud.kms.v1.Autokey.GetKeyHandle
- Audit log Type: Data Access
- Permissions:
cloudkms.keyHandles.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="google.cloud.kms.v1.Autokey.GetKeyHandle"
google.cloud.kms.v1.Autokey.ListKeyHandles
- Method: google.cloud.kms.v1.Autokey.ListKeyHandles
- Audit log Type: Data Access
- Permissions:
cloudkms.keyHandles.list - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="google.cloud.kms.v1.Autokey.ListKeyHandles"
google.cloud.kms.v1.AutokeyAdmin
Details about audit logs associated with methods belonging to google.cloud.kms.v1.AutokeyAdmin
.
google.cloud.kms.v1.AutokeyAdmin.GetAutokeyConfig
- Method: google.cloud.kms.v1.AutokeyAdmin.GetAutokeyConfig
- Audit log Type: Data Access
- Permissions:
cloudkms.autokeyConfigs.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="google.cloud.kms.v1.AutokeyAdmin.GetAutokeyConfig"
google.cloud.kms.v1.AutokeyAdmin.ShowEffectiveAutokeyConfig
- Method: google.cloud.kms.v1.AutokeyAdmin.ShowEffectiveAutokeyConfig
- Audit log Type: Data Access
- Permissions:
cloudkms.projects.showEffectiveAutokeyConfig - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="google.cloud.kms.v1.AutokeyAdmin.ShowEffectiveAutokeyConfig"
google.cloud.kms.v1.AutokeyAdmin.UpdateAutokeyConfig
- Method: google.cloud.kms.v1.AutokeyAdmin.UpdateAutokeyConfig
- Audit log Type: Admin Activity
- Permissions:
cloudkms.autokeyConfigs.update - ADMIN_WRITE
cloudkms.cryptoKeys.setIamPolicy - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="google.cloud.kms.v1.AutokeyAdmin.UpdateAutokeyConfig"
google.cloud.kms.v1.EkmService
Details about audit logs associated with methods belonging to google.cloud.kms.v1.EkmService
.
CreateEkmConnection
- Method: CreateEkmConnection
- Audit log Type: Admin Activity
- Permissions:
cloudkms.ekmConnections.create - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="CreateEkmConnection"
GetEkmConfig
- Method: GetEkmConfig
- Audit log Type: Data Access
- Permissions:
cloudkms.ekmConfigs.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetEkmConfig"
GetEkmConnection
- Method: GetEkmConnection
- Audit log Type: Data Access
- Permissions:
cloudkms.ekmConnections.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetEkmConnection"
ListEkmConnections
- Method: ListEkmConnections
- Audit log Type: Data Access
- Permissions:
cloudkms.ekmConnections.list - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="ListEkmConnections"
UpdateEkmConfig
- Method: UpdateEkmConfig
- Audit log Type: Admin Activity
- Permissions:
cloudkms.ekmConfigs.update - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="UpdateEkmConfig"
UpdateEkmConnection
- Method: UpdateEkmConnection
- Audit log Type: Admin Activity
- Permissions:
cloudkms.ekmConnections.update - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="UpdateEkmConnection"
VerifyConnectivity
- Method: VerifyConnectivity
- Audit log Type: Data Access
- Permissions:
cloudkms.ekmConnections.verifyConnectivity - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="VerifyConnectivity"
google.cloud.kms.v1.KeyManagementService
Details about audit logs associated with methods belonging to google.cloud.kms.v1.KeyManagementService
.
AsymmetricDecrypt
- Method: AsymmetricDecrypt
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToDecrypt - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="AsymmetricDecrypt"
AsymmetricSign
- Method: AsymmetricSign
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToSign - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="AsymmetricSign"
CreateCryptoKey
- Method: CreateCryptoKey
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.manageRawDsaKeys - ADMIN_WRITE
cloudkms.cryptoKeyVersions.manageRawPKCS1Keys - ADMIN_WRITE
cloudkms.cryptoKeys.create - ADMIN_WRITE
cloudkms.ekmConnections.use - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="CreateCryptoKey"
CreateCryptoKeyVersion
- Method: CreateCryptoKeyVersion
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.create - ADMIN_WRITE
cloudkms.cryptoKeyVersions.manageRawPKCS1Keys - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="CreateCryptoKeyVersion"
CreateImportJob
- Method: CreateImportJob
- Audit log Type: Admin Activity
- Permissions:
cloudkms.importJobs.create - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="CreateImportJob"
CreateKeyRing
- Method: CreateKeyRing
- Audit log Type: Admin Activity
- Permissions:
cloudkms.keyRings.create - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="CreateKeyRing"
Decrypt
- Method: Decrypt
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToDecrypt - DATA_READ
cloudkms.cryptoKeyVersions.useToDecryptViaDelegation - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="Decrypt"
DestroyCryptoKeyVersion
- Method: DestroyCryptoKeyVersion
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.destroy - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="DestroyCryptoKeyVersion"
Encrypt
- Method: Encrypt
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToEncrypt - DATA_READ
cloudkms.cryptoKeyVersions.useToEncryptViaDelegation - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="Encrypt"
GetCryptoKey
- Method: GetCryptoKey
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeys.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetCryptoKey"
GetCryptoKeyVersion
- Method: GetCryptoKeyVersion
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetCryptoKeyVersion"
GetImportJob
- Method: GetImportJob
- Audit log Type: Data Access
- Permissions:
cloudkms.importJobs.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetImportJob"
GetKeyRing
- Method: GetKeyRing
- Audit log Type: Data Access
- Permissions:
cloudkms.keyRings.get - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetKeyRing"
GetPublicKey
- Method: GetPublicKey
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.viewPublicKey - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetPublicKey"
ImportCryptoKeyVersion
- Method: ImportCryptoKeyVersion
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.create - ADMIN_WRITE
cloudkms.cryptoKeyVersions.manageRawDsaKeys - ADMIN_WRITE
cloudkms.cryptoKeyVersions.manageRawPKCS1Keys - ADMIN_WRITE
cloudkms.cryptoKeyVersions.update - ADMIN_WRITE
cloudkms.importJobs.useToImport - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="ImportCryptoKeyVersion"
ListCryptoKeyVersions
- Method: ListCryptoKeyVersions
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.list - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="ListCryptoKeyVersions"
ListCryptoKeys
- Method: ListCryptoKeys
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeys.list - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="ListCryptoKeys"
ListImportJobs
- Method: ListImportJobs
- Audit log Type: Data Access
- Permissions:
cloudkms.importJobs.list - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="ListImportJobs"
ListKeyRings
- Method: ListKeyRings
- Audit log Type: Data Access
- Permissions:
cloudkms.keyRings.list - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="ListKeyRings"
MacSign
- Method: MacSign
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToSign - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="MacSign"
MacVerify
- Method: MacVerify
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToVerify - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="MacVerify"
RawDecrypt
- Method: RawDecrypt
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToDecrypt - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="RawDecrypt"
RawEncrypt
- Method: RawEncrypt
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeyVersions.useToEncrypt - DATA_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="RawEncrypt"
RestoreCryptoKeyVersion
- Method: RestoreCryptoKeyVersion
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.restore - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="RestoreCryptoKeyVersion"
UpdateCryptoKey
- Method: UpdateCryptoKey
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.manageRawPKCS1Keys - ADMIN_WRITE
cloudkms.cryptoKeys.update - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="UpdateCryptoKey"
UpdateCryptoKeyPrimaryVersion
- Method: UpdateCryptoKeyPrimaryVersion
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeys.update - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="UpdateCryptoKeyPrimaryVersion"
UpdateCryptoKeyVersion
- Method: UpdateCryptoKeyVersion
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeyVersions.update - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="UpdateCryptoKeyVersion"
google.iam.v1.IAMPolicy
Details about audit logs associated with methods belonging to google.iam.v1.IAMPolicy
.
GetIamPolicy
- Method: GetIamPolicy
- Audit log Type: Data Access
- Permissions:
cloudkms.cryptoKeys.getIamPolicy - ADMIN_READ
cloudkms.ekmConfigs.getIamPolicy - ADMIN_READ
cloudkms.ekmConnections.getIamPolicy - ADMIN_READ
cloudkms.importJobs.getIamPolicy - ADMIN_READ
cloudkms.keyRings.getIamPolicy - ADMIN_READ
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetIamPolicy"
SetIamPolicy
- Method: SetIamPolicy
- Audit log Type: Admin Activity
- Permissions:
cloudkms.cryptoKeys.setIamPolicy - ADMIN_WRITE
cloudkms.ekmConfigs.setIamPolicy - ADMIN_WRITE
cloudkms.ekmConnections.setIamPolicy - ADMIN_WRITE
cloudkms.importJobs.setIamPolicy - ADMIN_WRITE
cloudkms.keyRings.setIamPolicy - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="SetIamPolicy"
google.longrunning.Operations
Details about audit logs associated with methods belonging to google.longrunning.Operations
.
GetOperation
- Method: GetOperation
- Audit log Type: Data Access
- Permissions:
cloudkms.keyHandles.create - ADMIN_WRITE
- Method is a Long Running Operation or Streaming: No.
- Filter for this method:
protoPayload.methodName="GetOperation"
Methods that don't produce audit logs
Generally methods don't produce audit logs because they are high volume and doing so would be very expensive, or because the method has low auditing value, or because another audit or platform log already provides coverage for what the method does.
The following methods don't produce audit logs:
google.cloud.kms.v1.KeyManagementService.GenerateRandomBytes
google.cloud.location.Locations.GetLocation
google.cloud.location.Locations.ListLocations