cloudkms

package
v0.193.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 20, 2024 License: BSD-3-Clause Imports: 16 Imported by: 254

Documentation

Overview

Package cloudkms provides access to the Cloud Key Management Service (KMS) API.

This package is DEPRECATED. Use package cloud.google.com/go/kms/apiv1 instead.

For product documentation, see: https://cloud.google.com/kms/

Library status

These client libraries are officially supported by Google. However, this library is considered complete and is in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features.

When possible, we recommend using our newer [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) that are still actively being worked and iterated on.

Creating a client

Usage example:

import "google.golang.org/api/cloudkms/v1"
...
ctx := context.Background()
cloudkmsService, err := cloudkms.NewService(ctx)

In this example, Google Application Default Credentials are used for authentication. For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.

Other authentication options

By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use google.golang.org/api/option.WithScopes:

cloudkmsService, err := cloudkms.NewService(ctx, option.WithScopes(cloudkms.CloudkmsScope))

To use an API key for authentication (note: some APIs do not support API keys), use google.golang.org/api/option.WithAPIKey:

cloudkmsService, err := cloudkms.NewService(ctx, option.WithAPIKey("AIza..."))

To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow, use google.golang.org/api/option.WithTokenSource:

config := &oauth2.Config{...}
// ...
token, err := config.Exchange(ctx, ...)
cloudkmsService, err := cloudkms.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))

See google.golang.org/api/option.ClientOption for details on options.

Index

Constants

View Source
const (
	// See, edit, configure, and delete your Google Cloud data and see the email
	// address for your Google Account.
	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"

	// View and manage your keys and secrets stored in Cloud Key Management Service
	CloudkmsScope = "https://www.googleapis.com/auth/cloudkms"
)

OAuth2 scopes used by this API.

Variables

This section is empty.

Functions

This section is empty.

Types

type AsymmetricDecryptRequest

type AsymmetricDecryptRequest struct {
	// Ciphertext: Required. The data encrypted with the named CryptoKeyVersion's
	// public key using OAEP.
	Ciphertext string `json:"ciphertext,omitempty"`
	// CiphertextCrc32c: Optional. An optional CRC32C checksum of the
	// AsymmetricDecryptRequest.ciphertext. If specified, KeyManagementService will
	// verify the integrity of the received AsymmetricDecryptRequest.ciphertext
	// using this checksum. KeyManagementService will report an error if the
	// checksum verification fails. If you receive a checksum error, your client
	// should verify that CRC32C(AsymmetricDecryptRequest.ciphertext) is equal to
	// AsymmetricDecryptRequest.ciphertext_crc32c, and if so, perform a limited
	// number of retries. A persistent mismatch may indicate an issue in your
	// computation of the CRC32C checksum. Note: This field is defined as int64 for
	// reasons of compatibility across different languages. However, it is a
	// non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g. "Ciphertext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Ciphertext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AsymmetricDecryptRequest: Request message for KeyManagementService.AsymmetricDecrypt.

func (AsymmetricDecryptRequest) MarshalJSON

func (s AsymmetricDecryptRequest) MarshalJSON() ([]byte, error)

type AsymmetricDecryptResponse

type AsymmetricDecryptResponse struct {
	// Plaintext: The decrypted data originally encrypted with the matching public
	// key.
	Plaintext string `json:"plaintext,omitempty"`
	// PlaintextCrc32c: Integrity verification field. A CRC32C checksum of the
	// returned AsymmetricDecryptResponse.plaintext. An integrity check of
	// AsymmetricDecryptResponse.plaintext can be performed by computing the CRC32C
	// checksum of AsymmetricDecryptResponse.plaintext and comparing your results
	// to this field. Discard the response in case of non-matching checksum values,
	// and perform a limited number of retries. A persistent mismatch may indicate
	// an issue in your computation of the CRC32C checksum. Note: This field is
	// defined as int64 for reasons of compatibility across different languages.
	// However, it is a non-negative integer, which will never exceed 2^32-1, and
	// can be safely downconverted to uint32 in languages that support this type.
	PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in
	// decryption.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// VerifiedCiphertextCrc32c: Integrity verification field. A flag indicating
	// whether AsymmetricDecryptRequest.ciphertext_crc32c was received by
	// KeyManagementService and used for the integrity verification of the
	// ciphertext. A false value of this field indicates either that
	// AsymmetricDecryptRequest.ciphertext_crc32c was left unset or that it was not
	// delivered to KeyManagementService. If you've set
	// AsymmetricDecryptRequest.ciphertext_crc32c but this field is still false,
	// discard the response and perform a limited number of retries.
	VerifiedCiphertextCrc32c bool `json:"verifiedCiphertextCrc32c,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Plaintext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Plaintext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AsymmetricDecryptResponse: Response message for KeyManagementService.AsymmetricDecrypt.

func (AsymmetricDecryptResponse) MarshalJSON

func (s AsymmetricDecryptResponse) MarshalJSON() ([]byte, error)

type AsymmetricSignRequest

type AsymmetricSignRequest struct {
	// Data: Optional. The data to sign. It can't be supplied if
	// AsymmetricSignRequest.digest is supplied.
	Data string `json:"data,omitempty"`
	// DataCrc32c: Optional. An optional CRC32C checksum of the
	// AsymmetricSignRequest.data. If specified, KeyManagementService will verify
	// the integrity of the received AsymmetricSignRequest.data using this
	// checksum. KeyManagementService will report an error if the checksum
	// verification fails. If you receive a checksum error, your client should
	// verify that CRC32C(AsymmetricSignRequest.data) is equal to
	// AsymmetricSignRequest.data_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	DataCrc32c int64 `json:"dataCrc32c,omitempty,string"`
	// Digest: Optional. The digest of the data to sign. The digest must be
	// produced with the same digest algorithm as specified by the key version's
	// algorithm. This field may not be supplied if AsymmetricSignRequest.data is
	// supplied.
	Digest *Digest `json:"digest,omitempty"`
	// DigestCrc32c: Optional. An optional CRC32C checksum of the
	// AsymmetricSignRequest.digest. If specified, KeyManagementService will verify
	// the integrity of the received AsymmetricSignRequest.digest using this
	// checksum. KeyManagementService will report an error if the checksum
	// verification fails. If you receive a checksum error, your client should
	// verify that CRC32C(AsymmetricSignRequest.digest) is equal to
	// AsymmetricSignRequest.digest_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	DigestCrc32c int64 `json:"digestCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Data") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AsymmetricSignRequest: Request message for KeyManagementService.AsymmetricSign.

func (AsymmetricSignRequest) MarshalJSON

func (s AsymmetricSignRequest) MarshalJSON() ([]byte, error)

type AsymmetricSignResponse

type AsymmetricSignResponse struct {
	// Name: The resource name of the CryptoKeyVersion used for signing. Check this
	// field to verify that the intended resource was used for signing.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used for
	// signing.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// Signature: The created signature.
	Signature string `json:"signature,omitempty"`
	// SignatureCrc32c: Integrity verification field. A CRC32C checksum of the
	// returned AsymmetricSignResponse.signature. An integrity check of
	// AsymmetricSignResponse.signature can be performed by computing the CRC32C
	// checksum of AsymmetricSignResponse.signature and comparing your results to
	// this field. Discard the response in case of non-matching checksum values,
	// and perform a limited number of retries. A persistent mismatch may indicate
	// an issue in your computation of the CRC32C checksum. Note: This field is
	// defined as int64 for reasons of compatibility across different languages.
	// However, it is a non-negative integer, which will never exceed 2^32-1, and
	// can be safely downconverted to uint32 in languages that support this type.
	SignatureCrc32c int64 `json:"signatureCrc32c,omitempty,string"`
	// VerifiedDataCrc32c: Integrity verification field. A flag indicating whether
	// AsymmetricSignRequest.data_crc32c was received by KeyManagementService and
	// used for the integrity verification of the data. A false value of this field
	// indicates either that AsymmetricSignRequest.data_crc32c was left unset or
	// that it was not delivered to KeyManagementService. If you've set
	// AsymmetricSignRequest.data_crc32c but this field is still false, discard the
	// response and perform a limited number of retries.
	VerifiedDataCrc32c bool `json:"verifiedDataCrc32c,omitempty"`
	// VerifiedDigestCrc32c: Integrity verification field. A flag indicating
	// whether AsymmetricSignRequest.digest_crc32c was received by
	// KeyManagementService and used for the integrity verification of the digest.
	// A false value of this field indicates either that
	// AsymmetricSignRequest.digest_crc32c was left unset or that it was not
	// delivered to KeyManagementService. If you've set
	// AsymmetricSignRequest.digest_crc32c but this field is still false, discard
	// the response and perform a limited number of retries.
	VerifiedDigestCrc32c bool `json:"verifiedDigestCrc32c,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Name") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AsymmetricSignResponse: Response message for KeyManagementService.AsymmetricSign.

func (AsymmetricSignResponse) MarshalJSON

func (s AsymmetricSignResponse) MarshalJSON() ([]byte, error)

type AuditConfig

type AuditConfig struct {
	// AuditLogConfigs: The configuration for logging of each type of permission.
	AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
	// Service: Specifies a service that will be enabled for audit logging. For
	// example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices`
	// is a special value that covers all services.
	Service string `json:"service,omitempty"`
	// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AuditLogConfigs") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AuditConfig: Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type": "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.

func (AuditConfig) MarshalJSON

func (s AuditConfig) MarshalJSON() ([]byte, error)

type AuditLogConfig

type AuditLogConfig struct {
	// ExemptedMembers: Specifies the identities that do not cause logging for this
	// type of permission. Follows the same format of Binding.members.
	ExemptedMembers []string `json:"exemptedMembers,omitempty"`
	// LogType: The log type that this config enables.
	//
	// Possible values:
	//   "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
	//   "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
	//   "DATA_WRITE" - Data writes. Example: CloudSQL Users create
	//   "DATA_READ" - Data reads. Example: CloudSQL Users list
	LogType string `json:"logType,omitempty"`
	// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ExemptedMembers") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AuditLogConfig: Provides the configuration for logging a type of permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.

func (AuditLogConfig) MarshalJSON

func (s AuditLogConfig) MarshalJSON() ([]byte, error)

type AutokeyConfig added in v0.178.0

type AutokeyConfig struct {
	// KeyProject: Optional. Name of the key project, e.g. `projects/{PROJECT_ID}`
	// or `projects/{PROJECT_NUMBER}`, where Cloud KMS Autokey will provision a new
	// CryptoKey when a KeyHandle is created. On UpdateAutokeyConfig, the caller
	// will require `cloudkms.cryptoKeys.setIamPolicy` permission on this key
	// project. Once configured, for Cloud KMS Autokey to function properly, this
	// key project must have the Cloud KMS API activated and the Cloud KMS Service
	// Agent for this key project must be granted the `cloudkms.admin` role (or
	// pertinent permissions). A request with an empty key project field will clear
	// the configuration.
	KeyProject string `json:"keyProject,omitempty"`
	// Name: Identifier. Name of the AutokeyConfig resource, e.g.
	// `folders/{FOLDER_NUMBER}/autokeyConfig`.
	Name string `json:"name,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "KeyProject") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "KeyProject") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

AutokeyConfig: Cloud KMS Autokey configuration for a folder.

func (AutokeyConfig) MarshalJSON added in v0.178.0

func (s AutokeyConfig) MarshalJSON() ([]byte, error)

type Binding

type Binding struct {
	// Condition: The condition that is associated with this binding. If the
	// condition evaluates to `true`, then this binding applies to the current
	// request. If the condition evaluates to `false`, then this binding does not
	// apply to the current request. However, a different role binding might grant
	// the same role to one or more of the principals in this binding. To learn
	// which resources support conditions in their IAM policies, see the IAM
	// documentation
	// (https://cloud.google.com/iam/help/conditions/resource-policies).
	Condition *Expr `json:"condition,omitempty"`
	// Members: Specifies the principals requesting access for a Google Cloud
	// resource. `members` can have the following values: * `allUsers`: A special
	// identifier that represents anyone who is on the internet; with or without a
	// Google account. * `allAuthenticatedUsers`: A special identifier that
	// represents anyone who is authenticated with a Google account or a service
	// account. Does not include identities that come from external identity
	// providers (IdPs) through identity federation. * `user:{emailid}`: An email
	// address that represents a specific Google account. For example,
	// `alice@example.com` . * `serviceAccount:{emailid}`: An email address that
	// represents a Google service account. For example,
	// `my-other-app@appspot.gserviceaccount.com`. *
	// `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An
	// identifier for a Kubernetes service account
	// (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts).
	// For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. *
	// `group:{emailid}`: An email address that represents a Google group. For
	// example, `admins@example.com`. * `domain:{domain}`: The G Suite domain
	// (primary) that represents all the users of that domain. For example,
	// `google.com` or `example.com`. *
	// `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub
	// ject/{subject_attribute_value}`: A single identity in a workforce identity
	// pool. *
	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
	// group/{group_id}`: All workforce identities in a group. *
	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
	// attribute.{attribute_name}/{attribute_value}`: All workforce identities with
	// a specific attribute value. *
	// `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/
	// *`: All identities in a workforce identity pool. *
	// `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo
	// rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single
	// identity in a workload identity pool. *
	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
	// /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool
	// group. *
	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
	// /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}
	// `: All identities in a workload identity pool with a certain attribute. *
	// `principalSet://iam.googleapis.com/projects/{project_number}/locations/global
	// /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity
	// pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus
	// unique identifier) representing a user that has been recently deleted. For
	// example, `alice@example.com?uid=123456789012345678901`. If the user is
	// recovered, this value reverts to `user:{emailid}` and the recovered user
	// retains the role in the binding. *
	// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
	// unique identifier) representing a service account that has been recently
	// deleted. For example,
	// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the
	// service account is undeleted, this value reverts to
	// `serviceAccount:{emailid}` and the undeleted service account retains the
	// role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email
	// address (plus unique identifier) representing a Google group that has been
	// recently deleted. For example,
	// `admins@example.com?uid=123456789012345678901`. If the group is recovered,
	// this value reverts to `group:{emailid}` and the recovered group retains the
	// role in the binding. *
	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool
	// _id}/subject/{subject_attribute_value}`: Deleted single identity in a
	// workforce identity pool. For example,
	// `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po
	// ol-id/subject/my-subject-attribute-value`.
	Members []string `json:"members,omitempty"`
	// Role: Role that is assigned to the list of `members`, or principals. For
	// example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview
	// of the IAM roles and permissions, see the IAM documentation
	// (https://cloud.google.com/iam/docs/roles-overview). For a list of the
	// available pre-defined roles, see here
	// (https://cloud.google.com/iam/docs/understanding-roles).
	Role string `json:"role,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Condition") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Condition") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Binding: Associates `members`, or principals, with a `role`.

func (Binding) MarshalJSON

func (s Binding) MarshalJSON() ([]byte, error)

type Certificate added in v0.67.0

type Certificate struct {
	// Issuer: Output only. The issuer distinguished name in RFC 2253 format. Only
	// present if parsed is true.
	Issuer string `json:"issuer,omitempty"`
	// NotAfterTime: Output only. The certificate is not valid after this time.
	// Only present if parsed is true.
	NotAfterTime string `json:"notAfterTime,omitempty"`
	// NotBeforeTime: Output only. The certificate is not valid before this time.
	// Only present if parsed is true.
	NotBeforeTime string `json:"notBeforeTime,omitempty"`
	// Parsed: Output only. True if the certificate was parsed successfully.
	Parsed bool `json:"parsed,omitempty"`
	// RawDer: Required. The raw certificate bytes in DER format.
	RawDer string `json:"rawDer,omitempty"`
	// SerialNumber: Output only. The certificate serial number as a hex string.
	// Only present if parsed is true.
	SerialNumber string `json:"serialNumber,omitempty"`
	// Sha256Fingerprint: Output only. The SHA-256 certificate fingerprint as a hex
	// string. Only present if parsed is true.
	Sha256Fingerprint string `json:"sha256Fingerprint,omitempty"`
	// Subject: Output only. The subject distinguished name in RFC 2253 format.
	// Only present if parsed is true.
	Subject string `json:"subject,omitempty"`
	// SubjectAlternativeDnsNames: Output only. The subject Alternative DNS names.
	// Only present if parsed is true.
	SubjectAlternativeDnsNames []string `json:"subjectAlternativeDnsNames,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Issuer") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Issuer") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Certificate: A Certificate represents an X.509 certificate used to authenticate HTTPS connections to EKM replicas.

func (Certificate) MarshalJSON added in v0.67.0

func (s Certificate) MarshalJSON() ([]byte, error)

type CertificateChains added in v0.31.0

type CertificateChains struct {
	// CaviumCerts: Cavium certificate chain corresponding to the attestation.
	CaviumCerts []string `json:"caviumCerts,omitempty"`
	// GoogleCardCerts: Google card certificate chain corresponding to the
	// attestation.
	GoogleCardCerts []string `json:"googleCardCerts,omitempty"`
	// GooglePartitionCerts: Google partition certificate chain corresponding to
	// the attestation.
	GooglePartitionCerts []string `json:"googlePartitionCerts,omitempty"`
	// ForceSendFields is a list of field names (e.g. "CaviumCerts") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CaviumCerts") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

CertificateChains: Certificate chains needed to verify the attestation. Certificates in chains are PEM-encoded and are ordered based on https://tools.ietf.org/html/rfc5246#section-7.4.2.

func (CertificateChains) MarshalJSON added in v0.31.0

func (s CertificateChains) MarshalJSON() ([]byte, error)

type CryptoKey

type CryptoKey struct {
	// CreateTime: Output only. The time at which this CryptoKey was created.
	CreateTime string `json:"createTime,omitempty"`
	// CryptoKeyBackend: Immutable. The resource name of the backend environment
	// where the key material for all CryptoKeyVersions associated with this
	// CryptoKey reside and where all related cryptographic operations are
	// performed. Only applicable if CryptoKeyVersions have a ProtectionLevel of
	// EXTERNAL_VPC, with the resource name in the format
	// `projects/*/locations/*/ekmConnections/*`. Note, this list is non-exhaustive
	// and may apply to additional ProtectionLevels in the future.
	CryptoKeyBackend string `json:"cryptoKeyBackend,omitempty"`
	// DestroyScheduledDuration: Immutable. The period of time that versions of
	// this key spend in the DESTROY_SCHEDULED state before transitioning to
	// DESTROYED. If not specified at creation time, the default duration is 30
	// days.
	DestroyScheduledDuration string `json:"destroyScheduledDuration,omitempty"`
	// ImportOnly: Immutable. Whether this key may contain imported versions only.
	ImportOnly bool `json:"importOnly,omitempty"`
	// KeyAccessJustificationsPolicy: Optional. The policy used for Key Access
	// Justifications Policy Enforcement. If this field is present and this key is
	// enrolled in Key Access Justifications Policy Enforcement, the policy will be
	// evaluated in encrypt, decrypt, and sign operations, and the operation will
	// fail if rejected by the policy. The policy is defined by specifying zero or
	// more allowed justification codes.
	// https://cloud.google.com/assured-workloads/key-access-justifications/docs/justification-codes
	// By default, this field is absent, and all justification codes are allowed.
	KeyAccessJustificationsPolicy *KeyAccessJustificationsPolicy `json:"keyAccessJustificationsPolicy,omitempty"`
	// Labels: Labels with user-defined metadata. For more information, see
	// Labeling Keys (https://cloud.google.com/kms/docs/labeling-keys).
	Labels map[string]string `json:"labels,omitempty"`
	// Name: Output only. The resource name for this CryptoKey in the format
	// `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
	Name string `json:"name,omitempty"`
	// NextRotationTime: At next_rotation_time, the Key Management Service will
	// automatically: 1. Create a new version of this CryptoKey. 2. Mark the new
	// version as primary. Key rotations performed manually via
	// CreateCryptoKeyVersion and UpdateCryptoKeyPrimaryVersion do not affect
	// next_rotation_time. Keys with purpose ENCRYPT_DECRYPT support automatic
	// rotation. For other keys, this field must be omitted.
	NextRotationTime string `json:"nextRotationTime,omitempty"`
	// Primary: Output only. A copy of the "primary" CryptoKeyVersion that will be
	// used by Encrypt when this CryptoKey is given in EncryptRequest.name. The
	// CryptoKey's primary version can be updated via
	// UpdateCryptoKeyPrimaryVersion. Keys with purpose ENCRYPT_DECRYPT may have a
	// primary. For other keys, this field will be omitted.
	Primary *CryptoKeyVersion `json:"primary,omitempty"`
	// Purpose: Immutable. The immutable purpose of this CryptoKey.
	//
	// Possible values:
	//   "CRYPTO_KEY_PURPOSE_UNSPECIFIED" - Not specified.
	//   "ENCRYPT_DECRYPT" - CryptoKeys with this purpose may be used with Encrypt
	// and Decrypt.
	//   "ASYMMETRIC_SIGN" - CryptoKeys with this purpose may be used with
	// AsymmetricSign and GetPublicKey.
	//   "ASYMMETRIC_DECRYPT" - CryptoKeys with this purpose may be used with
	// AsymmetricDecrypt and GetPublicKey.
	//   "RAW_ENCRYPT_DECRYPT" - CryptoKeys with this purpose may be used with
	// RawEncrypt and RawDecrypt. This purpose is meant to be used for
	// interoperable symmetric encryption and does not support automatic CryptoKey
	// rotation.
	//   "MAC" - CryptoKeys with this purpose may be used with MacSign.
	Purpose string `json:"purpose,omitempty"`
	// RotationPeriod: next_rotation_time will be advanced by this period when the
	// service automatically rotates a key. Must be at least 24 hours and at most
	// 876,000 hours. If rotation_period is set, next_rotation_time must also be
	// set. Keys with purpose ENCRYPT_DECRYPT support automatic rotation. For other
	// keys, this field must be omitted.
	RotationPeriod string `json:"rotationPeriod,omitempty"`
	// VersionTemplate: A template describing settings for new CryptoKeyVersion
	// instances. The properties of new CryptoKeyVersion instances created by
	// either CreateCryptoKeyVersion or auto-rotation are controlled by this
	// template.
	VersionTemplate *CryptoKeyVersionTemplate `json:"versionTemplate,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "CreateTime") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CreateTime") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

CryptoKey: A CryptoKey represents a logical key that can be used for cryptographic operations. A CryptoKey is made up of zero or more versions, which represent the actual key material used in cryptographic operations.

func (CryptoKey) MarshalJSON

func (s CryptoKey) MarshalJSON() ([]byte, error)

type CryptoKeyVersion

type CryptoKeyVersion struct {
	// Algorithm: Output only. The CryptoKeyVersionAlgorithm that this
	// CryptoKeyVersion supports.
	//
	// Possible values:
	//   "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified.
	//   "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys.
	//   "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys.
	//   "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys.
	//   "AES_128_CBC" - AES-CBC (Cipher Block Chaining Mode) using 128-bit keys.
	//   "AES_256_CBC" - AES-CBC (Cipher Block Chaining Mode) using 256-bit keys.
	//   "AES_128_CTR" - AES-CTR (Counter Mode) using 128-bit keys.
	//   "AES_256_CTR" - AES-CTR (Counter Mode) using 256-bit keys.
	//   "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA256" - RSASSA-PSS 4096 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA512" - RSASSA-PSS 4096 bit key with a SHA512 digest.
	//   "RSA_SIGN_PKCS1_2048_SHA256" - RSASSA-PKCS1-v1_5 with a 2048 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_3072_SHA256" - RSASSA-PKCS1-v1_5 with a 3072 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA256" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA512" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA512 digest.
	//   "RSA_SIGN_RAW_PKCS1_2048" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 2048 bit key.
	//   "RSA_SIGN_RAW_PKCS1_3072" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 3072 bit key.
	//   "RSA_SIGN_RAW_PKCS1_4096" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 4096 bit key.
	//   "RSA_DECRYPT_OAEP_2048_SHA256" - RSAES-OAEP 2048 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA256" - RSAES-OAEP 3072 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA256" - RSAES-OAEP 4096 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA512" - RSAES-OAEP 4096 bit key with a SHA512
	// digest.
	//   "RSA_DECRYPT_OAEP_2048_SHA1" - RSAES-OAEP 2048 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA1" - RSAES-OAEP 3072 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA1" - RSAES-OAEP 4096 bit key with a SHA1 digest.
	//   "EC_SIGN_P256_SHA256" - ECDSA on the NIST P-256 curve with a SHA256
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_P384_SHA384" - ECDSA on the NIST P-384 curve with a SHA384
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. This
	// curve is only supported for HSM protection level. Other hash functions can
	// also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_ED25519" - EdDSA on the Curve25519 in pure mode (taking data as
	// input).
	//   "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key.
	//   "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key.
	//   "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key.
	//   "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key.
	//   "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key.
	//   "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric
	// encryption by an external key manager.
	Algorithm string `json:"algorithm,omitempty"`
	// Attestation: Output only. Statement that was generated and signed by the HSM
	// at key creation time. Use this statement to verify attributes of the key as
	// stored on the HSM, independently of Google. Only provided for key versions
	// with protection_level HSM.
	Attestation *KeyOperationAttestation `json:"attestation,omitempty"`
	// CreateTime: Output only. The time at which this CryptoKeyVersion was
	// created.
	CreateTime string `json:"createTime,omitempty"`
	// DestroyEventTime: Output only. The time this CryptoKeyVersion's key material
	// was destroyed. Only present if state is DESTROYED.
	DestroyEventTime string `json:"destroyEventTime,omitempty"`
	// DestroyTime: Output only. The time this CryptoKeyVersion's key material is
	// scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
	DestroyTime string `json:"destroyTime,omitempty"`
	// ExternalDestructionFailureReason: Output only. The root cause of the most
	// recent external destruction failure. Only present if state is
	// EXTERNAL_DESTRUCTION_FAILED.
	ExternalDestructionFailureReason string `json:"externalDestructionFailureReason,omitempty"`
	// ExternalProtectionLevelOptions: ExternalProtectionLevelOptions stores a
	// group of additional fields for configuring a CryptoKeyVersion that are
	// specific to the EXTERNAL protection level and EXTERNAL_VPC protection
	// levels.
	ExternalProtectionLevelOptions *ExternalProtectionLevelOptions `json:"externalProtectionLevelOptions,omitempty"`
	// GenerateTime: Output only. The time this CryptoKeyVersion's key material was
	// generated.
	GenerateTime string `json:"generateTime,omitempty"`
	// GenerationFailureReason: Output only. The root cause of the most recent
	// generation failure. Only present if state is GENERATION_FAILED.
	GenerationFailureReason string `json:"generationFailureReason,omitempty"`
	// ImportFailureReason: Output only. The root cause of the most recent import
	// failure. Only present if state is IMPORT_FAILED.
	ImportFailureReason string `json:"importFailureReason,omitempty"`
	// ImportJob: Output only. The name of the ImportJob used in the most recent
	// import of this CryptoKeyVersion. Only present if the underlying key material
	// was imported.
	ImportJob string `json:"importJob,omitempty"`
	// ImportTime: Output only. The time at which this CryptoKeyVersion's key
	// material was most recently imported.
	ImportTime string `json:"importTime,omitempty"`
	// Name: Output only. The resource name for this CryptoKeyVersion in the format
	// `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: Output only. The ProtectionLevel describing how crypto
	// operations are performed with this CryptoKeyVersion.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// ReimportEligible: Output only. Whether or not this key version is eligible
	// for reimport, by being specified as a target in
	// ImportCryptoKeyVersionRequest.crypto_key_version.
	ReimportEligible bool `json:"reimportEligible,omitempty"`
	// State: The current state of the CryptoKeyVersion.
	//
	// Possible values:
	//   "CRYPTO_KEY_VERSION_STATE_UNSPECIFIED" - Not specified.
	//   "PENDING_GENERATION" - This version is still being generated. It may not
	// be used, enabled, disabled, or destroyed yet. Cloud KMS will automatically
	// mark this version ENABLED as soon as the version is ready.
	//   "ENABLED" - This version may be used for cryptographic operations.
	//   "DISABLED" - This version may not be used, but the key material is still
	// available, and the version can be placed back into the ENABLED state.
	//   "DESTROYED" - This version is destroyed, and the key material is no longer
	// stored. This version may only become ENABLED again if this version is
	// reimport_eligible and the original key material is reimported with a call to
	// KeyManagementService.ImportCryptoKeyVersion.
	//   "DESTROY_SCHEDULED" - This version is scheduled for destruction, and will
	// be destroyed soon. Call RestoreCryptoKeyVersion to put it back into the
	// DISABLED state.
	//   "PENDING_IMPORT" - This version is still being imported. It may not be
	// used, enabled, disabled, or destroyed yet. Cloud KMS will automatically mark
	// this version ENABLED as soon as the version is ready.
	//   "IMPORT_FAILED" - This version was not imported successfully. It may not
	// be used, enabled, disabled, or destroyed. The submitted key material has
	// been discarded. Additional details can be found in
	// CryptoKeyVersion.import_failure_reason.
	//   "GENERATION_FAILED" - This version was not generated successfully. It may
	// not be used, enabled, disabled, or destroyed. Additional details can be
	// found in CryptoKeyVersion.generation_failure_reason.
	//   "PENDING_EXTERNAL_DESTRUCTION" - This version was destroyed, and it may
	// not be used or enabled again. Cloud KMS is waiting for the corresponding key
	// material residing in an external key manager to be destroyed.
	//   "EXTERNAL_DESTRUCTION_FAILED" - This version was destroyed, and it may not
	// be used or enabled again. However, Cloud KMS could not confirm that the
	// corresponding key material residing in an external key manager was
	// destroyed. Additional details can be found in
	// CryptoKeyVersion.external_destruction_failure_reason.
	State string `json:"state,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Algorithm") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Algorithm") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

CryptoKeyVersion: A CryptoKeyVersion represents an individual cryptographic key, and the associated key material. An ENABLED version can be used for cryptographic operations. For security reasons, the raw cryptographic key material represented by a CryptoKeyVersion can never be viewed or exported. It can only be used to encrypt, decrypt, or sign data when an authorized user or application invokes Cloud KMS.

func (CryptoKeyVersion) MarshalJSON

func (s CryptoKeyVersion) MarshalJSON() ([]byte, error)

type CryptoKeyVersionTemplate

type CryptoKeyVersionTemplate struct {
	// Algorithm: Required. Algorithm to use when creating a CryptoKeyVersion based
	// on this template. For backwards compatibility, GOOGLE_SYMMETRIC_ENCRYPTION
	// is implied if both this field is omitted and CryptoKey.purpose is
	// ENCRYPT_DECRYPT.
	//
	// Possible values:
	//   "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified.
	//   "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys.
	//   "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys.
	//   "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys.
	//   "AES_128_CBC" - AES-CBC (Cipher Block Chaining Mode) using 128-bit keys.
	//   "AES_256_CBC" - AES-CBC (Cipher Block Chaining Mode) using 256-bit keys.
	//   "AES_128_CTR" - AES-CTR (Counter Mode) using 128-bit keys.
	//   "AES_256_CTR" - AES-CTR (Counter Mode) using 256-bit keys.
	//   "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA256" - RSASSA-PSS 4096 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA512" - RSASSA-PSS 4096 bit key with a SHA512 digest.
	//   "RSA_SIGN_PKCS1_2048_SHA256" - RSASSA-PKCS1-v1_5 with a 2048 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_3072_SHA256" - RSASSA-PKCS1-v1_5 with a 3072 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA256" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA512" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA512 digest.
	//   "RSA_SIGN_RAW_PKCS1_2048" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 2048 bit key.
	//   "RSA_SIGN_RAW_PKCS1_3072" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 3072 bit key.
	//   "RSA_SIGN_RAW_PKCS1_4096" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 4096 bit key.
	//   "RSA_DECRYPT_OAEP_2048_SHA256" - RSAES-OAEP 2048 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA256" - RSAES-OAEP 3072 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA256" - RSAES-OAEP 4096 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA512" - RSAES-OAEP 4096 bit key with a SHA512
	// digest.
	//   "RSA_DECRYPT_OAEP_2048_SHA1" - RSAES-OAEP 2048 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA1" - RSAES-OAEP 3072 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA1" - RSAES-OAEP 4096 bit key with a SHA1 digest.
	//   "EC_SIGN_P256_SHA256" - ECDSA on the NIST P-256 curve with a SHA256
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_P384_SHA384" - ECDSA on the NIST P-384 curve with a SHA384
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. This
	// curve is only supported for HSM protection level. Other hash functions can
	// also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_ED25519" - EdDSA on the Curve25519 in pure mode (taking data as
	// input).
	//   "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key.
	//   "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key.
	//   "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key.
	//   "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key.
	//   "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key.
	//   "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric
	// encryption by an external key manager.
	Algorithm string `json:"algorithm,omitempty"`
	// ProtectionLevel: ProtectionLevel to use when creating a CryptoKeyVersion
	// based on this template. Immutable. Defaults to SOFTWARE.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Algorithm") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Algorithm") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

CryptoKeyVersionTemplate: A CryptoKeyVersionTemplate specifies the properties to use when creating a new CryptoKeyVersion, either manually with CreateCryptoKeyVersion or automatically as a result of auto-rotation.

func (CryptoKeyVersionTemplate) MarshalJSON

func (s CryptoKeyVersionTemplate) MarshalJSON() ([]byte, error)

type DecryptRequest

type DecryptRequest struct {
	// AdditionalAuthenticatedData: Optional. Optional data that must match the
	// data originally supplied in EncryptRequest.additional_authenticated_data.
	AdditionalAuthenticatedData string `json:"additionalAuthenticatedData,omitempty"`
	// AdditionalAuthenticatedDataCrc32c: Optional. An optional CRC32C checksum of
	// the DecryptRequest.additional_authenticated_data. If specified,
	// KeyManagementService will verify the integrity of the received
	// DecryptRequest.additional_authenticated_data using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(DecryptRequest.additional_authenticated_data) is equal to
	// DecryptRequest.additional_authenticated_data_crc32c, and if so, perform a
	// limited number of retries. A persistent mismatch may indicate an issue in
	// your computation of the CRC32C checksum. Note: This field is defined as
	// int64 for reasons of compatibility across different languages. However, it
	// is a non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	AdditionalAuthenticatedDataCrc32c int64 `json:"additionalAuthenticatedDataCrc32c,omitempty,string"`
	// Ciphertext: Required. The encrypted data originally returned in
	// EncryptResponse.ciphertext.
	Ciphertext string `json:"ciphertext,omitempty"`
	// CiphertextCrc32c: Optional. An optional CRC32C checksum of the
	// DecryptRequest.ciphertext. If specified, KeyManagementService will verify
	// the integrity of the received DecryptRequest.ciphertext using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(DecryptRequest.ciphertext) is equal to
	// DecryptRequest.ciphertext_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g.
	// "AdditionalAuthenticatedData") to unconditionally include in API requests.
	// By default, fields with empty or default values are omitted from API
	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
	// for more details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalAuthenticatedData") to
	// include in API requests with the JSON null value. By default, fields with
	// empty values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

DecryptRequest: Request message for KeyManagementService.Decrypt.

func (DecryptRequest) MarshalJSON

func (s DecryptRequest) MarshalJSON() ([]byte, error)

type DecryptResponse

type DecryptResponse struct {
	// Plaintext: The decrypted data originally supplied in
	// EncryptRequest.plaintext.
	Plaintext string `json:"plaintext,omitempty"`
	// PlaintextCrc32c: Integrity verification field. A CRC32C checksum of the
	// returned DecryptResponse.plaintext. An integrity check of
	// DecryptResponse.plaintext can be performed by computing the CRC32C checksum
	// of DecryptResponse.plaintext and comparing your results to this field.
	// Discard the response in case of non-matching checksum values, and perform a
	// limited number of retries. A persistent mismatch may indicate an issue in
	// your computation of the CRC32C checksum. Note: receiving this response
	// message indicates that KeyManagementService is able to successfully decrypt
	// the ciphertext. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in
	// decryption.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// UsedPrimary: Whether the Decryption was performed using the primary key
	// version.
	UsedPrimary bool `json:"usedPrimary,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Plaintext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Plaintext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

DecryptResponse: Response message for KeyManagementService.Decrypt.

func (DecryptResponse) MarshalJSON

func (s DecryptResponse) MarshalJSON() ([]byte, error)

type DestroyCryptoKeyVersionRequest

type DestroyCryptoKeyVersionRequest struct {
}

DestroyCryptoKeyVersionRequest: Request message for KeyManagementService.DestroyCryptoKeyVersion.

type Digest

type Digest struct {
	// Sha256: A message digest produced with the SHA-256 algorithm.
	Sha256 string `json:"sha256,omitempty"`
	// Sha384: A message digest produced with the SHA-384 algorithm.
	Sha384 string `json:"sha384,omitempty"`
	// Sha512: A message digest produced with the SHA-512 algorithm.
	Sha512 string `json:"sha512,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Sha256") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Sha256") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Digest: A Digest holds a cryptographic message digest.

func (Digest) MarshalJSON

func (s Digest) MarshalJSON() ([]byte, error)

type EkmConfig added in v0.114.0

type EkmConfig struct {
	// DefaultEkmConnection: Optional. Resource name of the default EkmConnection.
	// Setting this field to the empty string removes the default.
	DefaultEkmConnection string `json:"defaultEkmConnection,omitempty"`
	// Name: Output only. The resource name for the EkmConfig in the format
	// `projects/*/locations/*/ekmConfig`.
	Name string `json:"name,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "DefaultEkmConnection") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "DefaultEkmConnection") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

EkmConfig: An EkmConfig is a singleton resource that represents configuration parameters that apply to all CryptoKeys and CryptoKeyVersions with a ProtectionLevel of EXTERNAL_VPC in a given project and location.

func (EkmConfig) MarshalJSON added in v0.114.0

func (s EkmConfig) MarshalJSON() ([]byte, error)

type EkmConnection added in v0.67.0

type EkmConnection struct {
	// CreateTime: Output only. The time at which the EkmConnection was created.
	CreateTime string `json:"createTime,omitempty"`
	// CryptoSpacePath: Optional. Identifies the EKM Crypto Space that this
	// EkmConnection maps to. Note: This field is required if KeyManagementMode is
	// CLOUD_KMS.
	CryptoSpacePath string `json:"cryptoSpacePath,omitempty"`
	// Etag: Optional. Etag of the currently stored EkmConnection.
	Etag string `json:"etag,omitempty"`
	// KeyManagementMode: Optional. Describes who can perform control plane
	// operations on the EKM. If unset, this defaults to MANUAL.
	//
	// Possible values:
	//   "KEY_MANAGEMENT_MODE_UNSPECIFIED" - Not specified.
	//   "MANUAL" - EKM-side key management operations on CryptoKeys created with
	// this EkmConnection must be initiated from the EKM directly and cannot be
	// performed from Cloud KMS. This means that: * When creating a
	// CryptoKeyVersion associated with this EkmConnection, the caller must supply
	// the key path of pre-existing external key material that will be linked to
	// the CryptoKeyVersion. * Destruction of external key material cannot be
	// requested via the Cloud KMS API and must be performed directly in the EKM. *
	// Automatic rotation of key material is not supported.
	//   "CLOUD_KMS" - All CryptoKeys created with this EkmConnection use EKM-side
	// key management operations initiated from Cloud KMS. This means that: * When
	// a CryptoKeyVersion associated with this EkmConnection is created, the EKM
	// automatically generates new key material and a new key path. The caller
	// cannot supply the key path of pre-existing external key material. *
	// Destruction of external key material associated with this EkmConnection can
	// be requested by calling DestroyCryptoKeyVersion. * Automatic rotation of key
	// material is supported.
	KeyManagementMode string `json:"keyManagementMode,omitempty"`
	// Name: Output only. The resource name for the EkmConnection in the format
	// `projects/*/locations/*/ekmConnections/*`.
	Name string `json:"name,omitempty"`
	// ServiceResolvers: A list of ServiceResolvers where the EKM can be reached.
	// There should be one ServiceResolver per EKM replica. Currently, only a
	// single ServiceResolver is supported.
	ServiceResolvers []*ServiceResolver `json:"serviceResolvers,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "CreateTime") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CreateTime") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

EkmConnection: An EkmConnection represents an individual EKM connection. It can be used for creating CryptoKeys and CryptoKeyVersions with a ProtectionLevel of EXTERNAL_VPC, as well as performing cryptographic operations using keys created within the EkmConnection.

func (EkmConnection) MarshalJSON added in v0.67.0

func (s EkmConnection) MarshalJSON() ([]byte, error)

type EncryptRequest

type EncryptRequest struct {
	// AdditionalAuthenticatedData: Optional. Optional data that, if specified,
	// must also be provided during decryption through
	// DecryptRequest.additional_authenticated_data. The maximum size depends on
	// the key version's protection_level. For SOFTWARE, EXTERNAL, and EXTERNAL_VPC
	// keys the AAD must be no larger than 64KiB. For HSM keys, the combined length
	// of the plaintext and additional_authenticated_data fields must be no larger
	// than 8KiB.
	AdditionalAuthenticatedData string `json:"additionalAuthenticatedData,omitempty"`
	// AdditionalAuthenticatedDataCrc32c: Optional. An optional CRC32C checksum of
	// the EncryptRequest.additional_authenticated_data. If specified,
	// KeyManagementService will verify the integrity of the received
	// EncryptRequest.additional_authenticated_data using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(EncryptRequest.additional_authenticated_data) is equal to
	// EncryptRequest.additional_authenticated_data_crc32c, and if so, perform a
	// limited number of retries. A persistent mismatch may indicate an issue in
	// your computation of the CRC32C checksum. Note: This field is defined as
	// int64 for reasons of compatibility across different languages. However, it
	// is a non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	AdditionalAuthenticatedDataCrc32c int64 `json:"additionalAuthenticatedDataCrc32c,omitempty,string"`
	// Plaintext: Required. The data to encrypt. Must be no larger than 64KiB. The
	// maximum size depends on the key version's protection_level. For SOFTWARE,
	// EXTERNAL, and EXTERNAL_VPC keys, the plaintext must be no larger than 64KiB.
	// For HSM keys, the combined length of the plaintext and
	// additional_authenticated_data fields must be no larger than 8KiB.
	Plaintext string `json:"plaintext,omitempty"`
	// PlaintextCrc32c: Optional. An optional CRC32C checksum of the
	// EncryptRequest.plaintext. If specified, KeyManagementService will verify the
	// integrity of the received EncryptRequest.plaintext using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(EncryptRequest.plaintext) is equal to
	// EncryptRequest.plaintext_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g.
	// "AdditionalAuthenticatedData") to unconditionally include in API requests.
	// By default, fields with empty or default values are omitted from API
	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
	// for more details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalAuthenticatedData") to
	// include in API requests with the JSON null value. By default, fields with
	// empty values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

EncryptRequest: Request message for KeyManagementService.Encrypt.

func (EncryptRequest) MarshalJSON

func (s EncryptRequest) MarshalJSON() ([]byte, error)

type EncryptResponse

type EncryptResponse struct {
	// Ciphertext: The encrypted data.
	Ciphertext string `json:"ciphertext,omitempty"`
	// CiphertextCrc32c: Integrity verification field. A CRC32C checksum of the
	// returned EncryptResponse.ciphertext. An integrity check of
	// EncryptResponse.ciphertext can be performed by computing the CRC32C checksum
	// of EncryptResponse.ciphertext and comparing your results to this field.
	// Discard the response in case of non-matching checksum values, and perform a
	// limited number of retries. A persistent mismatch may indicate an issue in
	// your computation of the CRC32C checksum. Note: This field is defined as
	// int64 for reasons of compatibility across different languages. However, it
	// is a non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"`
	// Name: The resource name of the CryptoKeyVersion used in encryption. Check
	// this field to verify that the intended resource was used for encryption.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in
	// encryption.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// VerifiedAdditionalAuthenticatedDataCrc32c: Integrity verification field. A
	// flag indicating whether EncryptRequest.additional_authenticated_data_crc32c
	// was received by KeyManagementService and used for the integrity verification
	// of the AAD. A false value of this field indicates either that
	// EncryptRequest.additional_authenticated_data_crc32c was left unset or that
	// it was not delivered to KeyManagementService. If you've set
	// EncryptRequest.additional_authenticated_data_crc32c but this field is still
	// false, discard the response and perform a limited number of retries.
	VerifiedAdditionalAuthenticatedDataCrc32c bool `json:"verifiedAdditionalAuthenticatedDataCrc32c,omitempty"`
	// VerifiedPlaintextCrc32c: Integrity verification field. A flag indicating
	// whether EncryptRequest.plaintext_crc32c was received by KeyManagementService
	// and used for the integrity verification of the plaintext. A false value of
	// this field indicates either that EncryptRequest.plaintext_crc32c was left
	// unset or that it was not delivered to KeyManagementService. If you've set
	// EncryptRequest.plaintext_crc32c but this field is still false, discard the
	// response and perform a limited number of retries.
	VerifiedPlaintextCrc32c bool `json:"verifiedPlaintextCrc32c,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Ciphertext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Ciphertext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

EncryptResponse: Response message for KeyManagementService.Encrypt.

func (EncryptResponse) MarshalJSON

func (s EncryptResponse) MarshalJSON() ([]byte, error)

type Expr

type Expr struct {
	// Description: Optional. Description of the expression. This is a longer text
	// which describes the expression, e.g. when hovered over it in a UI.
	Description string `json:"description,omitempty"`
	// Expression: Textual representation of an expression in Common Expression
	// Language syntax.
	Expression string `json:"expression,omitempty"`
	// Location: Optional. String indicating the location of the expression for
	// error reporting, e.g. a file name and a position in the file.
	Location string `json:"location,omitempty"`
	// Title: Optional. Title for the expression, i.e. a short string describing
	// its purpose. This can be used e.g. in UIs which allow to enter the
	// expression.
	Title string `json:"title,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Description") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Description") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Expr: Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.

func (Expr) MarshalJSON

func (s Expr) MarshalJSON() ([]byte, error)

type ExternalProtectionLevelOptions added in v0.15.0

type ExternalProtectionLevelOptions struct {
	// EkmConnectionKeyPath: The path to the external key material on the EKM when
	// using EkmConnection e.g., "v0/my/key". Set this field instead of
	// external_key_uri when using an EkmConnection.
	EkmConnectionKeyPath string `json:"ekmConnectionKeyPath,omitempty"`
	// ExternalKeyUri: The URI for an external resource that this CryptoKeyVersion
	// represents.
	ExternalKeyUri string `json:"externalKeyUri,omitempty"`
	// ForceSendFields is a list of field names (e.g. "EkmConnectionKeyPath") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "EkmConnectionKeyPath") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ExternalProtectionLevelOptions: ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level and EXTERNAL_VPC protection levels.

func (ExternalProtectionLevelOptions) MarshalJSON added in v0.15.0

func (s ExternalProtectionLevelOptions) MarshalJSON() ([]byte, error)

type FoldersGetAutokeyConfigCall added in v0.178.0

type FoldersGetAutokeyConfigCall struct {
	// contains filtered or unexported fields
}

func (*FoldersGetAutokeyConfigCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*FoldersGetAutokeyConfigCall) Do added in v0.178.0

Do executes the "cloudkms.folders.getAutokeyConfig" call. Any non-2xx status code is an error. Response headers are in either *AutokeyConfig.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*FoldersGetAutokeyConfigCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*FoldersGetAutokeyConfigCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*FoldersGetAutokeyConfigCall) IfNoneMatch added in v0.178.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type FoldersService added in v0.178.0

type FoldersService struct {
	// contains filtered or unexported fields
}

func NewFoldersService added in v0.178.0

func NewFoldersService(s *Service) *FoldersService

func (*FoldersService) GetAutokeyConfig added in v0.178.0

func (r *FoldersService) GetAutokeyConfig(name string) *FoldersGetAutokeyConfigCall

GetAutokeyConfig: Returns the AutokeyConfig for a folder.

  • name: Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`.

func (*FoldersService) UpdateAutokeyConfig added in v0.178.0

func (r *FoldersService) UpdateAutokeyConfig(name string, autokeyconfig *AutokeyConfig) *FoldersUpdateAutokeyConfigCall

UpdateAutokeyConfig: Updates the AutokeyConfig for a folder. The caller must have both `cloudkms.autokeyConfigs.update` permission on the parent folder and `cloudkms.cryptoKeys.setIamPolicy` permission on the provided key project. A KeyHandle creation in the folder's descendant projects will use this configuration to determine where to create the resulting CryptoKey.

  • name: Identifier. Name of the AutokeyConfig resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`.

type FoldersUpdateAutokeyConfigCall added in v0.178.0

type FoldersUpdateAutokeyConfigCall struct {
	// contains filtered or unexported fields
}

func (*FoldersUpdateAutokeyConfigCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*FoldersUpdateAutokeyConfigCall) Do added in v0.178.0

Do executes the "cloudkms.folders.updateAutokeyConfig" call. Any non-2xx status code is an error. Response headers are in either *AutokeyConfig.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*FoldersUpdateAutokeyConfigCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*FoldersUpdateAutokeyConfigCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*FoldersUpdateAutokeyConfigCall) UpdateMask added in v0.178.0

UpdateMask sets the optional parameter "updateMask": Required. Masks which fields of the AutokeyConfig to update, e.g. `keyProject`.

type GenerateRandomBytesRequest added in v0.53.0

type GenerateRandomBytesRequest struct {
	// LengthBytes: The length in bytes of the amount of randomness to retrieve.
	// Minimum 8 bytes, maximum 1024 bytes.
	LengthBytes int64 `json:"lengthBytes,omitempty"`
	// ProtectionLevel: The ProtectionLevel to use when generating the random data.
	// Currently, only HSM protection level is supported.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// ForceSendFields is a list of field names (e.g. "LengthBytes") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "LengthBytes") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

GenerateRandomBytesRequest: Request message for KeyManagementService.GenerateRandomBytes.

func (GenerateRandomBytesRequest) MarshalJSON added in v0.53.0

func (s GenerateRandomBytesRequest) MarshalJSON() ([]byte, error)

type GenerateRandomBytesResponse added in v0.53.0

type GenerateRandomBytesResponse struct {
	// Data: The generated data.
	Data string `json:"data,omitempty"`
	// DataCrc32c: Integrity verification field. A CRC32C checksum of the returned
	// GenerateRandomBytesResponse.data. An integrity check of
	// GenerateRandomBytesResponse.data can be performed by computing the CRC32C
	// checksum of GenerateRandomBytesResponse.data and comparing your results to
	// this field. Discard the response in case of non-matching checksum values,
	// and perform a limited number of retries. A persistent mismatch may indicate
	// an issue in your computation of the CRC32C checksum. Note: This field is
	// defined as int64 for reasons of compatibility across different languages.
	// However, it is a non-negative integer, which will never exceed 2^32-1, and
	// can be safely downconverted to uint32 in languages that support this type.
	DataCrc32c int64 `json:"dataCrc32c,omitempty,string"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Data") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

GenerateRandomBytesResponse: Response message for KeyManagementService.GenerateRandomBytes.

func (GenerateRandomBytesResponse) MarshalJSON added in v0.53.0

func (s GenerateRandomBytesResponse) MarshalJSON() ([]byte, error)

type ImportCryptoKeyVersionRequest added in v0.8.0

type ImportCryptoKeyVersionRequest struct {
	// Algorithm: Required. The algorithm of the key being imported. This does not
	// need to match the version_template of the CryptoKey this version imports
	// into.
	//
	// Possible values:
	//   "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified.
	//   "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys.
	//   "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys.
	//   "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys.
	//   "AES_128_CBC" - AES-CBC (Cipher Block Chaining Mode) using 128-bit keys.
	//   "AES_256_CBC" - AES-CBC (Cipher Block Chaining Mode) using 256-bit keys.
	//   "AES_128_CTR" - AES-CTR (Counter Mode) using 128-bit keys.
	//   "AES_256_CTR" - AES-CTR (Counter Mode) using 256-bit keys.
	//   "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA256" - RSASSA-PSS 4096 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA512" - RSASSA-PSS 4096 bit key with a SHA512 digest.
	//   "RSA_SIGN_PKCS1_2048_SHA256" - RSASSA-PKCS1-v1_5 with a 2048 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_3072_SHA256" - RSASSA-PKCS1-v1_5 with a 3072 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA256" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA512" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA512 digest.
	//   "RSA_SIGN_RAW_PKCS1_2048" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 2048 bit key.
	//   "RSA_SIGN_RAW_PKCS1_3072" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 3072 bit key.
	//   "RSA_SIGN_RAW_PKCS1_4096" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 4096 bit key.
	//   "RSA_DECRYPT_OAEP_2048_SHA256" - RSAES-OAEP 2048 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA256" - RSAES-OAEP 3072 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA256" - RSAES-OAEP 4096 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA512" - RSAES-OAEP 4096 bit key with a SHA512
	// digest.
	//   "RSA_DECRYPT_OAEP_2048_SHA1" - RSAES-OAEP 2048 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA1" - RSAES-OAEP 3072 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA1" - RSAES-OAEP 4096 bit key with a SHA1 digest.
	//   "EC_SIGN_P256_SHA256" - ECDSA on the NIST P-256 curve with a SHA256
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_P384_SHA384" - ECDSA on the NIST P-384 curve with a SHA384
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. This
	// curve is only supported for HSM protection level. Other hash functions can
	// also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_ED25519" - EdDSA on the Curve25519 in pure mode (taking data as
	// input).
	//   "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key.
	//   "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key.
	//   "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key.
	//   "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key.
	//   "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key.
	//   "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric
	// encryption by an external key manager.
	Algorithm string `json:"algorithm,omitempty"`
	// CryptoKeyVersion: Optional. The optional name of an existing
	// CryptoKeyVersion to target for an import operation. If this field is not
	// present, a new CryptoKeyVersion containing the supplied key material is
	// created. If this field is present, the supplied key material is imported
	// into the existing CryptoKeyVersion. To import into an existing
	// CryptoKeyVersion, the CryptoKeyVersion must be a child of
	// ImportCryptoKeyVersionRequest.parent, have been previously created via
	// ImportCryptoKeyVersion, and be in DESTROYED or IMPORT_FAILED state. The key
	// material and algorithm must match the previous CryptoKeyVersion exactly if
	// the CryptoKeyVersion has ever contained key material.
	CryptoKeyVersion string `json:"cryptoKeyVersion,omitempty"`
	// ImportJob: Required. The name of the ImportJob that was used to wrap this
	// key material.
	ImportJob string `json:"importJob,omitempty"`
	// RsaAesWrappedKey: Optional. This field has the same meaning as wrapped_key.
	// Prefer to use that field in new work. Either that field or this field (but
	// not both) must be specified.
	RsaAesWrappedKey string `json:"rsaAesWrappedKey,omitempty"`
	// WrappedKey: Optional. The wrapped key material to import. Before wrapping,
	// key material must be formatted. If importing symmetric key material, the
	// expected key material format is plain bytes. If importing asymmetric key
	// material, the expected key material format is PKCS#8-encoded DER (the
	// PrivateKeyInfo structure from RFC 5208). When wrapping with import methods
	// (RSA_OAEP_3072_SHA1_AES_256 or RSA_OAEP_4096_SHA1_AES_256 or
	// RSA_OAEP_3072_SHA256_AES_256 or RSA_OAEP_4096_SHA256_AES_256), this field
	// must contain the concatenation of: 1. An ephemeral AES-256 wrapping key
	// wrapped with the public_key using RSAES-OAEP with SHA-1/SHA-256, MGF1 with
	// SHA-1/SHA-256, and an empty label. 2. The formatted key to be imported,
	// wrapped with the ephemeral AES-256 key using AES-KWP (RFC 5649). This format
	// is the same as the format produced by PKCS#11 mechanism
	// CKM_RSA_AES_KEY_WRAP. When wrapping with import methods
	// (RSA_OAEP_3072_SHA256 or RSA_OAEP_4096_SHA256), this field must contain the
	// formatted key to be imported, wrapped with the public_key using RSAES-OAEP
	// with SHA-256, MGF1 with SHA-256, and an empty label.
	WrappedKey string `json:"wrappedKey,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Algorithm") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Algorithm") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ImportCryptoKeyVersionRequest: Request message for KeyManagementService.ImportCryptoKeyVersion.

func (ImportCryptoKeyVersionRequest) MarshalJSON added in v0.8.0

func (s ImportCryptoKeyVersionRequest) MarshalJSON() ([]byte, error)

type ImportJob added in v0.8.0

type ImportJob struct {
	// Attestation: Output only. Statement that was generated and signed by the key
	// creator (for example, an HSM) at key creation time. Use this statement to
	// verify attributes of the key as stored on the HSM, independently of Google.
	// Only present if the chosen ImportMethod is one with a protection level of
	// HSM.
	Attestation *KeyOperationAttestation `json:"attestation,omitempty"`
	// CreateTime: Output only. The time at which this ImportJob was created.
	CreateTime string `json:"createTime,omitempty"`
	// ExpireEventTime: Output only. The time this ImportJob expired. Only present
	// if state is EXPIRED.
	ExpireEventTime string `json:"expireEventTime,omitempty"`
	// ExpireTime: Output only. The time at which this ImportJob is scheduled for
	// expiration and can no longer be used to import key material.
	ExpireTime string `json:"expireTime,omitempty"`
	// GenerateTime: Output only. The time this ImportJob's key material was
	// generated.
	GenerateTime string `json:"generateTime,omitempty"`
	// ImportMethod: Required. Immutable. The wrapping method to be used for
	// incoming key material.
	//
	// Possible values:
	//   "IMPORT_METHOD_UNSPECIFIED" - Not specified.
	//   "RSA_OAEP_3072_SHA1_AES_256" - This ImportMethod represents the
	// CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard.
	// In summary, this involves wrapping the raw key with an ephemeral AES key,
	// and wrapping the ephemeral AES key with a 3072 bit RSA key. For more
	// details, see [RSA AES key wrap
	// mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-c
	// urr-v2.40-cos01.html#_Toc408226908).
	//   "RSA_OAEP_4096_SHA1_AES_256" - This ImportMethod represents the
	// CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard.
	// In summary, this involves wrapping the raw key with an ephemeral AES key,
	// and wrapping the ephemeral AES key with a 4096 bit RSA key. For more
	// details, see [RSA AES key wrap
	// mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-c
	// urr-v2.40-cos01.html#_Toc408226908).
	//   "RSA_OAEP_3072_SHA256_AES_256" - This ImportMethod represents the
	// CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard.
	// In summary, this involves wrapping the raw key with an ephemeral AES key,
	// and wrapping the ephemeral AES key with a 3072 bit RSA key. For more
	// details, see [RSA AES key wrap
	// mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-c
	// urr-v2.40-cos01.html#_Toc408226908).
	//   "RSA_OAEP_4096_SHA256_AES_256" - This ImportMethod represents the
	// CKM_RSA_AES_KEY_WRAP key wrapping scheme defined in the PKCS #11 standard.
	// In summary, this involves wrapping the raw key with an ephemeral AES key,
	// and wrapping the ephemeral AES key with a 4096 bit RSA key. For more
	// details, see [RSA AES key wrap
	// mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-c
	// urr-v2.40-cos01.html#_Toc408226908).
	//   "RSA_OAEP_3072_SHA256" - This ImportMethod represents RSAES-OAEP with a
	// 3072 bit RSA key. The key material to be imported is wrapped directly with
	// the RSA key. Due to technical limitations of RSA wrapping, this method
	// cannot be used to wrap RSA keys for import.
	//   "RSA_OAEP_4096_SHA256" - This ImportMethod represents RSAES-OAEP with a
	// 4096 bit RSA key. The key material to be imported is wrapped directly with
	// the RSA key. Due to technical limitations of RSA wrapping, this method
	// cannot be used to wrap RSA keys for import.
	ImportMethod string `json:"importMethod,omitempty"`
	// Name: Output only. The resource name for this ImportJob in the format
	// `projects/*/locations/*/keyRings/*/importJobs/*`.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: Required. Immutable. The protection level of the ImportJob.
	// This must match the protection_level of the version_template on the
	// CryptoKey you attempt to import into.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// PublicKey: Output only. The public key with which to wrap key material prior
	// to import. Only returned if state is ACTIVE.
	PublicKey *WrappingPublicKey `json:"publicKey,omitempty"`
	// State: Output only. The current state of the ImportJob, indicating if it can
	// be used.
	//
	// Possible values:
	//   "IMPORT_JOB_STATE_UNSPECIFIED" - Not specified.
	//   "PENDING_GENERATION" - The wrapping key for this job is still being
	// generated. It may not be used. Cloud KMS will automatically mark this job as
	// ACTIVE as soon as the wrapping key is generated.
	//   "ACTIVE" - This job may be used in CreateCryptoKey and
	// CreateCryptoKeyVersion requests.
	//   "EXPIRED" - This job can no longer be used and may not leave this state
	// once entered.
	State string `json:"state,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Attestation") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Attestation") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ImportJob: An ImportJob can be used to create CryptoKeys and CryptoKeyVersions using pre-existing key material, generated outside of Cloud KMS. When an ImportJob is created, Cloud KMS will generate a "wrapping key", which is a public/private key pair. You use the wrapping key to encrypt (also known as wrap) the pre-existing key material to protect it during the import process. The nature of the wrapping key depends on the choice of import_method. When the wrapping key generation is complete, the state will be set to ACTIVE and the public_key can be fetched. The fetched public key can then be used to wrap your pre-existing key material. Once the key material is wrapped, it can be imported into a new CryptoKeyVersion in an existing CryptoKey by calling ImportCryptoKeyVersion. Multiple CryptoKeyVersions can be imported with a single ImportJob. Cloud KMS uses the private key portion of the wrapping key to unwrap the key material. Only Cloud KMS has access to the private key. An ImportJob expires 3 days after it is created. Once expired, Cloud KMS will no longer be able to import or unwrap any key material that was wrapped with the ImportJob's public key. For more information, see Importing a key (https://cloud.google.com/kms/docs/importing-a-key).

func (ImportJob) MarshalJSON added in v0.8.0

func (s ImportJob) MarshalJSON() ([]byte, error)

type KeyAccessJustificationsPolicy added in v0.186.0

type KeyAccessJustificationsPolicy struct {
	// AllowedAccessReasons: The list of allowed reasons for access to a CryptoKey.
	// Zero allowed access reasons means all encrypt, decrypt, and sign operations
	// for the CryptoKey associated with this policy will fail.
	//
	// Possible values:
	//   "REASON_UNSPECIFIED" - Unspecified access reason.
	//   "CUSTOMER_INITIATED_SUPPORT" - Customer-initiated support.
	//   "GOOGLE_INITIATED_SERVICE" - Google-initiated access for system management
	// and troubleshooting.
	//   "THIRD_PARTY_DATA_REQUEST" - Google-initiated access in response to a
	// legal request or legal process.
	//   "GOOGLE_INITIATED_REVIEW" - Google-initiated access for security, fraud,
	// abuse, or compliance purposes.
	//   "CUSTOMER_INITIATED_ACCESS" - Customer uses their account to perform any
	// access to their own data which their IAM policy authorizes.
	//   "GOOGLE_INITIATED_SYSTEM_OPERATION" - Google systems access customer data
	// to help optimize the structure of the data or quality for future uses by the
	// customer.
	//   "REASON_NOT_EXPECTED" - No reason is expected for this key request.
	//   "MODIFIED_CUSTOMER_INITIATED_ACCESS" - Customer uses their account to
	// perform any access to their own data which their IAM policy authorizes, and
	// one of the following is true: * A Google administrator has reset the
	// root-access account associated with the user's organization within the past
	// 7 days. * A Google-initiated emergency access operation has interacted with
	// a resource in the same project or folder as the currently accessed resource
	// within the past 7 days.
	//   "MODIFIED_GOOGLE_INITIATED_SYSTEM_OPERATION" - Google systems access
	// customer data to help optimize the structure of the data or quality for
	// future uses by the customer, and one of the following is true: * A Google
	// administrator has reset the root-access account associated with the user's
	// organization within the past 7 days. * A Google-initiated emergency access
	// operation has interacted with a resource in the same project or folder as
	// the currently accessed resource within the past 7 days.
	//   "GOOGLE_RESPONSE_TO_PRODUCTION_ALERT" - Google-initiated access to
	// maintain system reliability.
	//   "CUSTOMER_AUTHORIZED_WORKFLOW_SERVICING" - One of the following operations
	// is being executed while simultaneously encountering an internal technical
	// issue which prevented a more precise justification code from being
	// generated: * Your account has been used to perform any access to your own
	// data which your IAM policy authorizes. * An automated Google system operates
	// on encrypted customer data which your IAM policy authorizes. *
	// Customer-initiated Google support access. * Google-initiated support access
	// to protect system reliability.
	AllowedAccessReasons []string `json:"allowedAccessReasons,omitempty"`
	// ForceSendFields is a list of field names (e.g. "AllowedAccessReasons") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AllowedAccessReasons") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

KeyAccessJustificationsPolicy: A KeyAccessJustificationsPolicy specifies zero or more allowed AccessReason values for encrypt, decrypt, and sign operations on a CryptoKey.

func (KeyAccessJustificationsPolicy) MarshalJSON added in v0.186.0

func (s KeyAccessJustificationsPolicy) MarshalJSON() ([]byte, error)

type KeyHandle added in v0.178.0

type KeyHandle struct {
	// KmsKey: Output only. Name of a CryptoKey that has been provisioned for
	// Customer Managed Encryption Key (CMEK) use in the KeyHandle project and
	// location for the requested resource type. The CryptoKey project will reflect
	// the value configured in the AutokeyConfig on the resource project's ancestor
	// folder at the time of the KeyHandle creation. If more than one ancestor
	// folder has a configured AutokeyConfig, the nearest of these configurations
	// is used.
	KmsKey string `json:"kmsKey,omitempty"`
	// Name: Identifier. Name of the KeyHandle resource, e.g.
	// `projects/{PROJECT_ID}/locations/{LOCATION}/keyHandles/{KEY_HANDLE_ID}`.
	Name string `json:"name,omitempty"`
	// ResourceTypeSelector: Required. Indicates the resource type that the
	// resulting CryptoKey is meant to protect, e.g.
	// `{SERVICE}.googleapis.com/{TYPE}`. See documentation for supported resource
	// types.
	ResourceTypeSelector string `json:"resourceTypeSelector,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "KmsKey") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "KmsKey") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

KeyHandle: Resource-oriented representation of a request to Cloud KMS Autokey and the resulting provisioning of a CryptoKey.

func (KeyHandle) MarshalJSON added in v0.178.0

func (s KeyHandle) MarshalJSON() ([]byte, error)

type KeyOperationAttestation

type KeyOperationAttestation struct {
	// CertChains: Output only. The certificate chains needed to validate the
	// attestation
	CertChains *CertificateChains `json:"certChains,omitempty"`
	// Content: Output only. The attestation data provided by the HSM when the key
	// operation was performed.
	Content string `json:"content,omitempty"`
	// Format: Output only. The format of the attestation data.
	//
	// Possible values:
	//   "ATTESTATION_FORMAT_UNSPECIFIED" - Not specified.
	//   "CAVIUM_V1_COMPRESSED" - Cavium HSM attestation compressed with gzip. Note
	// that this format is defined by Cavium and subject to change at any time. See
	// https://www.marvell.com/products/security-solutions/nitrox-hs-adapters/software-key-attestation.html.
	//   "CAVIUM_V2_COMPRESSED" - Cavium HSM attestation V2 compressed with gzip.
	// This is a new format introduced in Cavium's version 3.2-08.
	Format string `json:"format,omitempty"`
	// ForceSendFields is a list of field names (e.g. "CertChains") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CertChains") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

KeyOperationAttestation: Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key).

func (KeyOperationAttestation) MarshalJSON

func (s KeyOperationAttestation) MarshalJSON() ([]byte, error)

type KeyRing

type KeyRing struct {
	// CreateTime: Output only. The time at which this KeyRing was created.
	CreateTime string `json:"createTime,omitempty"`
	// Name: Output only. The resource name for the KeyRing in the format
	// `projects/*/locations/*/keyRings/*`.
	Name string `json:"name,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "CreateTime") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CreateTime") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

KeyRing: A KeyRing is a toplevel logical grouping of CryptoKeys.

func (KeyRing) MarshalJSON

func (s KeyRing) MarshalJSON() ([]byte, error)

type ListCryptoKeyVersionsResponse

type ListCryptoKeyVersionsResponse struct {
	// CryptoKeyVersions: The list of CryptoKeyVersions.
	CryptoKeyVersions []*CryptoKeyVersion `json:"cryptoKeyVersions,omitempty"`
	// NextPageToken: A token to retrieve next page of results. Pass this value in
	// ListCryptoKeyVersionsRequest.page_token to retrieve the next page of
	// results.
	NextPageToken string `json:"nextPageToken,omitempty"`
	// TotalSize: The total number of CryptoKeyVersions that matched the query.
	TotalSize int64 `json:"totalSize,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "CryptoKeyVersions") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CryptoKeyVersions") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListCryptoKeyVersionsResponse: Response message for KeyManagementService.ListCryptoKeyVersions.

func (ListCryptoKeyVersionsResponse) MarshalJSON

func (s ListCryptoKeyVersionsResponse) MarshalJSON() ([]byte, error)

type ListCryptoKeysResponse

type ListCryptoKeysResponse struct {
	// CryptoKeys: The list of CryptoKeys.
	CryptoKeys []*CryptoKey `json:"cryptoKeys,omitempty"`
	// NextPageToken: A token to retrieve next page of results. Pass this value in
	// ListCryptoKeysRequest.page_token to retrieve the next page of results.
	NextPageToken string `json:"nextPageToken,omitempty"`
	// TotalSize: The total number of CryptoKeys that matched the query.
	TotalSize int64 `json:"totalSize,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "CryptoKeys") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CryptoKeys") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListCryptoKeysResponse: Response message for KeyManagementService.ListCryptoKeys.

func (ListCryptoKeysResponse) MarshalJSON

func (s ListCryptoKeysResponse) MarshalJSON() ([]byte, error)

type ListEkmConnectionsResponse added in v0.67.0

type ListEkmConnectionsResponse struct {
	// EkmConnections: The list of EkmConnections.
	EkmConnections []*EkmConnection `json:"ekmConnections,omitempty"`
	// NextPageToken: A token to retrieve next page of results. Pass this value in
	// ListEkmConnectionsRequest.page_token to retrieve the next page of results.
	NextPageToken string `json:"nextPageToken,omitempty"`
	// TotalSize: The total number of EkmConnections that matched the query.
	TotalSize int64 `json:"totalSize,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "EkmConnections") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "EkmConnections") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListEkmConnectionsResponse: Response message for EkmService.ListEkmConnections.

func (ListEkmConnectionsResponse) MarshalJSON added in v0.67.0

func (s ListEkmConnectionsResponse) MarshalJSON() ([]byte, error)

type ListImportJobsResponse added in v0.8.0

type ListImportJobsResponse struct {
	// ImportJobs: The list of ImportJobs.
	ImportJobs []*ImportJob `json:"importJobs,omitempty"`
	// NextPageToken: A token to retrieve next page of results. Pass this value in
	// ListImportJobsRequest.page_token to retrieve the next page of results.
	NextPageToken string `json:"nextPageToken,omitempty"`
	// TotalSize: The total number of ImportJobs that matched the query.
	TotalSize int64 `json:"totalSize,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "ImportJobs") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "ImportJobs") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListImportJobsResponse: Response message for KeyManagementService.ListImportJobs.

func (ListImportJobsResponse) MarshalJSON added in v0.8.0

func (s ListImportJobsResponse) MarshalJSON() ([]byte, error)

type ListKeyHandlesResponse added in v0.178.0

type ListKeyHandlesResponse struct {
	// KeyHandles: Resulting KeyHandles.
	KeyHandles []*KeyHandle `json:"keyHandles,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "KeyHandles") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "KeyHandles") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListKeyHandlesResponse: Response message for Autokey.ListKeyHandles.

func (ListKeyHandlesResponse) MarshalJSON added in v0.178.0

func (s ListKeyHandlesResponse) MarshalJSON() ([]byte, error)

type ListKeyRingsResponse

type ListKeyRingsResponse struct {
	// KeyRings: The list of KeyRings.
	KeyRings []*KeyRing `json:"keyRings,omitempty"`
	// NextPageToken: A token to retrieve next page of results. Pass this value in
	// ListKeyRingsRequest.page_token to retrieve the next page of results.
	NextPageToken string `json:"nextPageToken,omitempty"`
	// TotalSize: The total number of KeyRings that matched the query.
	TotalSize int64 `json:"totalSize,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "KeyRings") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "KeyRings") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListKeyRingsResponse: Response message for KeyManagementService.ListKeyRings.

func (ListKeyRingsResponse) MarshalJSON

func (s ListKeyRingsResponse) MarshalJSON() ([]byte, error)

type ListLocationsResponse

type ListLocationsResponse struct {
	// Locations: A list of locations that matches the specified filter in the
	// request.
	Locations []*Location `json:"locations,omitempty"`
	// NextPageToken: The standard List next-page token.
	NextPageToken string `json:"nextPageToken,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Locations") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Locations") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ListLocationsResponse: The response message for Locations.ListLocations.

func (ListLocationsResponse) MarshalJSON

func (s ListLocationsResponse) MarshalJSON() ([]byte, error)

type Location

type Location struct {
	// DisplayName: The friendly name for this location, typically a nearby city
	// name. For example, "Tokyo".
	DisplayName string `json:"displayName,omitempty"`
	// Labels: Cross-service attributes for the location. For example
	// {"cloud.googleapis.com/region": "us-east1"}
	Labels map[string]string `json:"labels,omitempty"`
	// LocationId: The canonical id for this location. For example: "us-east1".
	LocationId string `json:"locationId,omitempty"`
	// Metadata: Service-specific metadata. For example the available capacity at
	// the given location.
	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
	// Name: Resource name for the location, which may vary between
	// implementations. For example:
	// "projects/example-project/locations/us-east1"
	Name string `json:"name,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "DisplayName") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "DisplayName") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Location: A resource that represents a Google Cloud location.

func (Location) MarshalJSON

func (s Location) MarshalJSON() ([]byte, error)

type LocationMetadata

type LocationMetadata struct {
	// EkmAvailable: Indicates whether CryptoKeys with protection_level EXTERNAL
	// can be created in this location.
	EkmAvailable bool `json:"ekmAvailable,omitempty"`
	// HsmAvailable: Indicates whether CryptoKeys with protection_level HSM can be
	// created in this location.
	HsmAvailable bool `json:"hsmAvailable,omitempty"`
	// ForceSendFields is a list of field names (e.g. "EkmAvailable") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "EkmAvailable") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

LocationMetadata: Cloud KMS metadata for the given google.cloud.location.Location.

func (LocationMetadata) MarshalJSON

func (s LocationMetadata) MarshalJSON() ([]byte, error)

type MacSignRequest added in v0.52.0

type MacSignRequest struct {
	// Data: Required. The data to sign. The MAC tag is computed over this data
	// field based on the specific algorithm.
	Data string `json:"data,omitempty"`
	// DataCrc32c: Optional. An optional CRC32C checksum of the
	// MacSignRequest.data. If specified, KeyManagementService will verify the
	// integrity of the received MacSignRequest.data using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(MacSignRequest.data) is equal to MacSignRequest.data_crc32c, and if
	// so, perform a limited number of retries. A persistent mismatch may indicate
	// an issue in your computation of the CRC32C checksum. Note: This field is
	// defined as int64 for reasons of compatibility across different languages.
	// However, it is a non-negative integer, which will never exceed 2^32-1, and
	// can be safely downconverted to uint32 in languages that support this type.
	DataCrc32c int64 `json:"dataCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Data") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

MacSignRequest: Request message for KeyManagementService.MacSign.

func (MacSignRequest) MarshalJSON added in v0.52.0

func (s MacSignRequest) MarshalJSON() ([]byte, error)

type MacSignResponse added in v0.52.0

type MacSignResponse struct {
	// Mac: The created signature.
	Mac string `json:"mac,omitempty"`
	// MacCrc32c: Integrity verification field. A CRC32C checksum of the returned
	// MacSignResponse.mac. An integrity check of MacSignResponse.mac can be
	// performed by computing the CRC32C checksum of MacSignResponse.mac and
	// comparing your results to this field. Discard the response in case of
	// non-matching checksum values, and perform a limited number of retries. A
	// persistent mismatch may indicate an issue in your computation of the CRC32C
	// checksum. Note: This field is defined as int64 for reasons of compatibility
	// across different languages. However, it is a non-negative integer, which
	// will never exceed 2^32-1, and can be safely downconverted to uint32 in
	// languages that support this type.
	MacCrc32c int64 `json:"macCrc32c,omitempty,string"`
	// Name: The resource name of the CryptoKeyVersion used for signing. Check this
	// field to verify that the intended resource was used for signing.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used for
	// signing.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// VerifiedDataCrc32c: Integrity verification field. A flag indicating whether
	// MacSignRequest.data_crc32c was received by KeyManagementService and used for
	// the integrity verification of the data. A false value of this field
	// indicates either that MacSignRequest.data_crc32c was left unset or that it
	// was not delivered to KeyManagementService. If you've set
	// MacSignRequest.data_crc32c but this field is still false, discard the
	// response and perform a limited number of retries.
	VerifiedDataCrc32c bool `json:"verifiedDataCrc32c,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Mac") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Mac") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

MacSignResponse: Response message for KeyManagementService.MacSign.

func (MacSignResponse) MarshalJSON added in v0.52.0

func (s MacSignResponse) MarshalJSON() ([]byte, error)

type MacVerifyRequest added in v0.52.0

type MacVerifyRequest struct {
	// Data: Required. The data used previously as a MacSignRequest.data to
	// generate the MAC tag.
	Data string `json:"data,omitempty"`
	// DataCrc32c: Optional. An optional CRC32C checksum of the
	// MacVerifyRequest.data. If specified, KeyManagementService will verify the
	// integrity of the received MacVerifyRequest.data using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(MacVerifyRequest.data) is equal to MacVerifyRequest.data_crc32c, and
	// if so, perform a limited number of retries. A persistent mismatch may
	// indicate an issue in your computation of the CRC32C checksum. Note: This
	// field is defined as int64 for reasons of compatibility across different
	// languages. However, it is a non-negative integer, which will never exceed
	// 2^32-1, and can be safely downconverted to uint32 in languages that support
	// this type.
	DataCrc32c int64 `json:"dataCrc32c,omitempty,string"`
	// Mac: Required. The signature to verify.
	Mac string `json:"mac,omitempty"`
	// MacCrc32c: Optional. An optional CRC32C checksum of the
	// MacVerifyRequest.mac. If specified, KeyManagementService will verify the
	// integrity of the received MacVerifyRequest.mac using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(MacVerifyRequest.tag) is equal to MacVerifyRequest.mac_crc32c, and if
	// so, perform a limited number of retries. A persistent mismatch may indicate
	// an issue in your computation of the CRC32C checksum. Note: This field is
	// defined as int64 for reasons of compatibility across different languages.
	// However, it is a non-negative integer, which will never exceed 2^32-1, and
	// can be safely downconverted to uint32 in languages that support this type.
	MacCrc32c int64 `json:"macCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g. "Data") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Data") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

MacVerifyRequest: Request message for KeyManagementService.MacVerify.

func (MacVerifyRequest) MarshalJSON added in v0.52.0

func (s MacVerifyRequest) MarshalJSON() ([]byte, error)

type MacVerifyResponse added in v0.52.0

type MacVerifyResponse struct {
	// Name: The resource name of the CryptoKeyVersion used for verification. Check
	// this field to verify that the intended resource was used for verification.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used for
	// verification.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// Success: This field indicates whether or not the verification operation for
	// MacVerifyRequest.mac over MacVerifyRequest.data was successful.
	Success bool `json:"success,omitempty"`
	// VerifiedDataCrc32c: Integrity verification field. A flag indicating whether
	// MacVerifyRequest.data_crc32c was received by KeyManagementService and used
	// for the integrity verification of the data. A false value of this field
	// indicates either that MacVerifyRequest.data_crc32c was left unset or that it
	// was not delivered to KeyManagementService. If you've set
	// MacVerifyRequest.data_crc32c but this field is still false, discard the
	// response and perform a limited number of retries.
	VerifiedDataCrc32c bool `json:"verifiedDataCrc32c,omitempty"`
	// VerifiedMacCrc32c: Integrity verification field. A flag indicating whether
	// MacVerifyRequest.mac_crc32c was received by KeyManagementService and used
	// for the integrity verification of the data. A false value of this field
	// indicates either that MacVerifyRequest.mac_crc32c was left unset or that it
	// was not delivered to KeyManagementService. If you've set
	// MacVerifyRequest.mac_crc32c but this field is still false, discard the
	// response and perform a limited number of retries.
	VerifiedMacCrc32c bool `json:"verifiedMacCrc32c,omitempty"`
	// VerifiedSuccessIntegrity: Integrity verification field. This value is used
	// for the integrity verification of [MacVerifyResponse.success]. If the value
	// of this field contradicts the value of [MacVerifyResponse.success], discard
	// the response and perform a limited number of retries.
	VerifiedSuccessIntegrity bool `json:"verifiedSuccessIntegrity,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Name") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

MacVerifyResponse: Response message for KeyManagementService.MacVerify.

func (MacVerifyResponse) MarshalJSON added in v0.52.0

func (s MacVerifyResponse) MarshalJSON() ([]byte, error)

type Operation added in v0.178.0

type Operation struct {
	// Done: If the value is `false`, it means the operation is still in progress.
	// If `true`, the operation is completed, and either `error` or `response` is
	// available.
	Done bool `json:"done,omitempty"`
	// Error: The error result of the operation in case of failure or cancellation.
	Error *Status `json:"error,omitempty"`
	// Metadata: Service-specific metadata associated with the operation. It
	// typically contains progress information and common metadata such as create
	// time. Some services might not provide such metadata. Any method that returns
	// a long-running operation should document the metadata type, if any.
	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
	// Name: The server-assigned name, which is only unique within the same service
	// that originally returns it. If you use the default HTTP mapping, the `name`
	// should be a resource name ending with `operations/{unique_id}`.
	Name string `json:"name,omitempty"`
	// Response: The normal, successful response of the operation. If the original
	// method returns no data on success, such as `Delete`, the response is
	// `google.protobuf.Empty`. If the original method is standard
	// `Get`/`Create`/`Update`, the response should be the resource. For other
	// methods, the response should have the type `XxxResponse`, where `Xxx` is the
	// original method name. For example, if the original method name is
	// `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
	Response googleapi.RawMessage `json:"response,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Done") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Operation: This resource represents a long-running operation that is the result of a network API call.

func (Operation) MarshalJSON added in v0.178.0

func (s Operation) MarshalJSON() ([]byte, error)

type Policy

type Policy struct {
	// AuditConfigs: Specifies cloud audit logging configuration for this policy.
	AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
	// Bindings: Associates a list of `members`, or principals, with a `role`.
	// Optionally, may specify a `condition` that determines how and when the
	// `bindings` are applied. Each of the `bindings` must contain at least one
	// principal. The `bindings` in a `Policy` can refer to up to 1,500 principals;
	// up to 250 of these principals can be Google groups. Each occurrence of a
	// principal counts towards these limits. For example, if the `bindings` grant
	// 50 different roles to `user:alice@example.com`, and not to any other
	// principal, then you can add another 1,450 principals to the `bindings` in
	// the `Policy`.
	Bindings []*Binding `json:"bindings,omitempty"`
	// Etag: `etag` is used for optimistic concurrency control as a way to help
	// prevent simultaneous updates of a policy from overwriting each other. It is
	// strongly suggested that systems make use of the `etag` in the
	// read-modify-write cycle to perform policy updates in order to avoid race
	// conditions: An `etag` is returned in the response to `getIamPolicy`, and
	// systems are expected to put that etag in the request to `setIamPolicy` to
	// ensure that their change will be applied to the same version of the policy.
	// **Important:** If you use IAM Conditions, you must include the `etag` field
	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
	// you to overwrite a version `3` policy with a version `1` policy, and all of
	// the conditions in the version `3` policy are lost.
	Etag string `json:"etag,omitempty"`
	// Version: Specifies the format of the policy. Valid values are `0`, `1`, and
	// `3`. Requests that specify an invalid value are rejected. Any operation that
	// affects conditional role bindings must specify version `3`. This requirement
	// applies to the following operations: * Getting a policy that includes a
	// conditional role binding * Adding a conditional role binding to a policy *
	// Changing a conditional role binding in a policy * Removing any role binding,
	// with or without a condition, from a policy that includes conditions
	// **Important:** If you use IAM Conditions, you must include the `etag` field
	// whenever you call `setIamPolicy`. If you omit this field, then IAM allows
	// you to overwrite a version `3` policy with a version `1` policy, and all of
	// the conditions in the version `3` policy are lost. If a policy does not
	// include any conditions, operations on that policy may specify any valid
	// version or leave the field unset. To learn which resources support
	// conditions in their IAM policies, see the IAM documentation
	// (https://cloud.google.com/iam/help/conditions/resource-policies).
	Version int64 `json:"version,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "AuditConfigs") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AuditConfigs") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Policy: An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the IAM documentation (https://cloud.google.com/iam/docs/).

func (Policy) MarshalJSON

func (s Policy) MarshalJSON() ([]byte, error)

type ProjectsLocationsEkmConfigGetIamPolicyCall added in v0.98.0

type ProjectsLocationsEkmConfigGetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConfigGetIamPolicyCall) Context added in v0.98.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConfigGetIamPolicyCall) Do added in v0.98.0

Do executes the "cloudkms.projects.locations.ekmConfig.getIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConfigGetIamPolicyCall) Fields added in v0.98.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConfigGetIamPolicyCall) Header added in v0.98.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsEkmConfigGetIamPolicyCall) IfNoneMatch added in v0.98.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsEkmConfigGetIamPolicyCall) OptionsRequestedPolicyVersion added in v0.98.0

func (c *ProjectsLocationsEkmConfigGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsEkmConfigGetIamPolicyCall

OptionsRequestedPolicyVersion sets the optional parameter "options.requestedPolicyVersion": The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).

type ProjectsLocationsEkmConfigService added in v0.98.0

type ProjectsLocationsEkmConfigService struct {
	// contains filtered or unexported fields
}

func NewProjectsLocationsEkmConfigService added in v0.98.0

func NewProjectsLocationsEkmConfigService(s *Service) *ProjectsLocationsEkmConfigService

func (*ProjectsLocationsEkmConfigService) GetIamPolicy added in v0.98.0

GetIamPolicy: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

func (*ProjectsLocationsEkmConfigService) SetIamPolicy added in v0.98.0

SetIamPolicy: Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

func (*ProjectsLocationsEkmConfigService) TestIamPermissions added in v0.98.0

TestIamPermissions: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

type ProjectsLocationsEkmConfigSetIamPolicyCall added in v0.98.0

type ProjectsLocationsEkmConfigSetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConfigSetIamPolicyCall) Context added in v0.98.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConfigSetIamPolicyCall) Do added in v0.98.0

Do executes the "cloudkms.projects.locations.ekmConfig.setIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConfigSetIamPolicyCall) Fields added in v0.98.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConfigSetIamPolicyCall) Header added in v0.98.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsEkmConfigTestIamPermissionsCall added in v0.98.0

type ProjectsLocationsEkmConfigTestIamPermissionsCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConfigTestIamPermissionsCall) Context added in v0.98.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConfigTestIamPermissionsCall) Do added in v0.98.0

Do executes the "cloudkms.projects.locations.ekmConfig.testIamPermissions" call. Any non-2xx status code is an error. Response headers are in either *TestIamPermissionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConfigTestIamPermissionsCall) Fields added in v0.98.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConfigTestIamPermissionsCall) Header added in v0.98.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsEkmConnectionsCreateCall added in v0.67.0

type ProjectsLocationsEkmConnectionsCreateCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsCreateCall) Context added in v0.67.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsCreateCall) Do added in v0.67.0

Do executes the "cloudkms.projects.locations.ekmConnections.create" call. Any non-2xx status code is an error. Response headers are in either *EkmConnection.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsCreateCall) EkmConnectionId added in v0.67.0

EkmConnectionId sets the optional parameter "ekmConnectionId": Required. It must be unique within a location and match the regular expression `[a-zA-Z0-9_-]{1,63}`.

func (*ProjectsLocationsEkmConnectionsCreateCall) Fields added in v0.67.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsCreateCall) Header added in v0.67.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsEkmConnectionsGetCall added in v0.67.0

type ProjectsLocationsEkmConnectionsGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsGetCall) Context added in v0.67.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsGetCall) Do added in v0.67.0

Do executes the "cloudkms.projects.locations.ekmConnections.get" call. Any non-2xx status code is an error. Response headers are in either *EkmConnection.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsGetCall) Fields added in v0.67.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsGetCall) Header added in v0.67.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsEkmConnectionsGetCall) IfNoneMatch added in v0.67.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsEkmConnectionsGetIamPolicyCall added in v0.63.0

type ProjectsLocationsEkmConnectionsGetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsGetIamPolicyCall) Context added in v0.63.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsGetIamPolicyCall) Do added in v0.63.0

Do executes the "cloudkms.projects.locations.ekmConnections.getIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsGetIamPolicyCall) Fields added in v0.63.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsGetIamPolicyCall) Header added in v0.63.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsEkmConnectionsGetIamPolicyCall) IfNoneMatch added in v0.63.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsEkmConnectionsGetIamPolicyCall) OptionsRequestedPolicyVersion added in v0.63.0

func (c *ProjectsLocationsEkmConnectionsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsEkmConnectionsGetIamPolicyCall

OptionsRequestedPolicyVersion sets the optional parameter "options.requestedPolicyVersion": The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).

type ProjectsLocationsEkmConnectionsListCall added in v0.67.0

type ProjectsLocationsEkmConnectionsListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsListCall) Context added in v0.67.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsListCall) Do added in v0.67.0

Do executes the "cloudkms.projects.locations.ekmConnections.list" call. Any non-2xx status code is an error. Response headers are in either *ListEkmConnectionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsListCall) Fields added in v0.67.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsListCall) Filter added in v0.67.0

Filter sets the optional parameter "filter": Only include resources that match the filter in the response. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsEkmConnectionsListCall) Header added in v0.67.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsEkmConnectionsListCall) IfNoneMatch added in v0.67.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsEkmConnectionsListCall) OrderBy added in v0.67.0

OrderBy sets the optional parameter "orderBy": Specify how the results should be sorted. If not specified, the results will be sorted in the default order. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsEkmConnectionsListCall) PageSize added in v0.67.0

PageSize sets the optional parameter "pageSize": Optional limit on the number of EkmConnections to include in the response. Further EkmConnections can subsequently be obtained by including the ListEkmConnectionsResponse.next_page_token in a subsequent request. If unspecified, the server will pick an appropriate default.

func (*ProjectsLocationsEkmConnectionsListCall) PageToken added in v0.67.0

PageToken sets the optional parameter "pageToken": Optional pagination token, returned earlier via ListEkmConnectionsResponse.next_page_token.

func (*ProjectsLocationsEkmConnectionsListCall) Pages added in v0.67.0

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

type ProjectsLocationsEkmConnectionsPatchCall added in v0.67.0

type ProjectsLocationsEkmConnectionsPatchCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsPatchCall) Context added in v0.67.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsPatchCall) Do added in v0.67.0

Do executes the "cloudkms.projects.locations.ekmConnections.patch" call. Any non-2xx status code is an error. Response headers are in either *EkmConnection.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsPatchCall) Fields added in v0.67.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsPatchCall) Header added in v0.67.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsEkmConnectionsPatchCall) UpdateMask added in v0.67.0

UpdateMask sets the optional parameter "updateMask": Required. List of fields to be updated in this request.

type ProjectsLocationsEkmConnectionsService added in v0.63.0

type ProjectsLocationsEkmConnectionsService struct {
	// contains filtered or unexported fields
}

func NewProjectsLocationsEkmConnectionsService added in v0.63.0

func NewProjectsLocationsEkmConnectionsService(s *Service) *ProjectsLocationsEkmConnectionsService

func (*ProjectsLocationsEkmConnectionsService) Create added in v0.67.0

Create: Creates a new EkmConnection in a given Project and Location.

  • parent: The resource name of the location associated with the EkmConnection, in the format `projects/*/locations/*`.

func (*ProjectsLocationsEkmConnectionsService) Get added in v0.67.0

Get: Returns metadata for a given EkmConnection.

- name: The name of the EkmConnection to get.

func (*ProjectsLocationsEkmConnectionsService) GetIamPolicy added in v0.63.0

GetIamPolicy: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

func (*ProjectsLocationsEkmConnectionsService) List added in v0.67.0

List: Lists EkmConnections.

  • parent: The resource name of the location associated with the EkmConnections to list, in the format `projects/*/locations/*`.

func (*ProjectsLocationsEkmConnectionsService) Patch added in v0.67.0

Patch: Updates an EkmConnection's metadata.

  • name: Output only. The resource name for the EkmConnection in the format `projects/*/locations/*/ekmConnections/*`.

func (*ProjectsLocationsEkmConnectionsService) SetIamPolicy added in v0.63.0

SetIamPolicy: Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

func (*ProjectsLocationsEkmConnectionsService) TestIamPermissions added in v0.63.0

TestIamPermissions: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

func (*ProjectsLocationsEkmConnectionsService) VerifyConnectivity added in v0.119.0

VerifyConnectivity: Verifies that Cloud KMS can successfully connect to the external key manager specified by an EkmConnection. If there is an error connecting to the EKM, this method returns a FAILED_PRECONDITION status containing structured information as described at https://cloud.google.com/kms/docs/reference/ekm_errors.

- name: The name of the EkmConnection to verify.

type ProjectsLocationsEkmConnectionsSetIamPolicyCall added in v0.63.0

type ProjectsLocationsEkmConnectionsSetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsSetIamPolicyCall) Context added in v0.63.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsSetIamPolicyCall) Do added in v0.63.0

Do executes the "cloudkms.projects.locations.ekmConnections.setIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsSetIamPolicyCall) Fields added in v0.63.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsSetIamPolicyCall) Header added in v0.63.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsEkmConnectionsTestIamPermissionsCall added in v0.63.0

type ProjectsLocationsEkmConnectionsTestIamPermissionsCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsTestIamPermissionsCall) Context added in v0.63.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsTestIamPermissionsCall) Do added in v0.63.0

Do executes the "cloudkms.projects.locations.ekmConnections.testIamPermissions" call. Any non-2xx status code is an error. Response headers are in either *TestIamPermissionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsTestIamPermissionsCall) Fields added in v0.63.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsTestIamPermissionsCall) Header added in v0.63.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsEkmConnectionsVerifyConnectivityCall added in v0.119.0

type ProjectsLocationsEkmConnectionsVerifyConnectivityCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsEkmConnectionsVerifyConnectivityCall) Context added in v0.119.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsEkmConnectionsVerifyConnectivityCall) Do added in v0.119.0

Do executes the "cloudkms.projects.locations.ekmConnections.verifyConnectivity" call. Any non-2xx status code is an error. Response headers are in either *VerifyConnectivityResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsEkmConnectionsVerifyConnectivityCall) Fields added in v0.119.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsEkmConnectionsVerifyConnectivityCall) Header added in v0.119.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsEkmConnectionsVerifyConnectivityCall) IfNoneMatch added in v0.119.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsGenerateRandomBytesCall added in v0.53.0

type ProjectsLocationsGenerateRandomBytesCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsGenerateRandomBytesCall) Context added in v0.53.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsGenerateRandomBytesCall) Do added in v0.53.0

Do executes the "cloudkms.projects.locations.generateRandomBytes" call. Any non-2xx status code is an error. Response headers are in either *GenerateRandomBytesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsGenerateRandomBytesCall) Fields added in v0.53.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsGenerateRandomBytesCall) Header added in v0.53.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsGetCall

type ProjectsLocationsGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsGetCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsGetCall) Do

Do executes the "cloudkms.projects.locations.get" call. Any non-2xx status code is an error. Response headers are in either *Location.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsGetCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsGetCall) Header

func (c *ProjectsLocationsGetCall) Header() http.Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsGetCall) IfNoneMatch

func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsGetEkmConfigCall added in v0.114.0

type ProjectsLocationsGetEkmConfigCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsGetEkmConfigCall) Context added in v0.114.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsGetEkmConfigCall) Do added in v0.114.0

Do executes the "cloudkms.projects.locations.getEkmConfig" call. Any non-2xx status code is an error. Response headers are in either *EkmConfig.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsGetEkmConfigCall) Fields added in v0.114.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsGetEkmConfigCall) Header added in v0.114.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsGetEkmConfigCall) IfNoneMatch added in v0.114.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyHandlesCreateCall added in v0.178.0

type ProjectsLocationsKeyHandlesCreateCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyHandlesCreateCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyHandlesCreateCall) Do added in v0.178.0

Do executes the "cloudkms.projects.locations.keyHandles.create" call. Any non-2xx status code is an error. Response headers are in either *Operation.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyHandlesCreateCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyHandlesCreateCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyHandlesCreateCall) KeyHandleId added in v0.178.0

KeyHandleId sets the optional parameter "keyHandleId": Id of the KeyHandle. Must be unique to the resource project and location. If not provided by the caller, a new UUID is used.

type ProjectsLocationsKeyHandlesGetCall added in v0.178.0

type ProjectsLocationsKeyHandlesGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyHandlesGetCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyHandlesGetCall) Do added in v0.178.0

Do executes the "cloudkms.projects.locations.keyHandles.get" call. Any non-2xx status code is an error. Response headers are in either *KeyHandle.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyHandlesGetCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyHandlesGetCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyHandlesGetCall) IfNoneMatch added in v0.178.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyHandlesListCall added in v0.178.0

type ProjectsLocationsKeyHandlesListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyHandlesListCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyHandlesListCall) Do added in v0.178.0

Do executes the "cloudkms.projects.locations.keyHandles.list" call. Any non-2xx status code is an error. Response headers are in either *ListKeyHandlesResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyHandlesListCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyHandlesListCall) Filter added in v0.178.0

Filter sets the optional parameter "filter": Filter to apply when listing KeyHandles, e.g. `resource_type_selector="{SERVICE}.googleapis.com/{TYPE}".

func (*ProjectsLocationsKeyHandlesListCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyHandlesListCall) IfNoneMatch added in v0.178.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyHandlesService added in v0.178.0

type ProjectsLocationsKeyHandlesService struct {
	// contains filtered or unexported fields
}

func NewProjectsLocationsKeyHandlesService added in v0.178.0

func NewProjectsLocationsKeyHandlesService(s *Service) *ProjectsLocationsKeyHandlesService

func (*ProjectsLocationsKeyHandlesService) Create added in v0.178.0

Create: Creates a new KeyHandle, triggering the provisioning of a new CryptoKey for CMEK use with the given resource type in the configured key project and the same location. GetOperation should be used to resolve the resulting long-running operation and get the resulting KeyHandle and CryptoKey.

  • parent: Name of the resource project and location to create the KeyHandle in, e.g. `projects/{PROJECT_ID}/locations/{LOCATION}`.

func (*ProjectsLocationsKeyHandlesService) Get added in v0.178.0

Get: Returns the KeyHandle.

  • name: Name of the KeyHandle resource, e.g. `projects/{PROJECT_ID}/locations/{LOCATION}/keyHandles/{KEY_HANDLE_ID}`.

func (*ProjectsLocationsKeyHandlesService) List added in v0.178.0

List: Lists KeyHandles.

  • parent: Name of the resource project and location from which to list KeyHandles, e.g. `projects/{PROJECT_ID}/locations/{LOCATION}`.

type ProjectsLocationsKeyRingsCreateCall

type ProjectsLocationsKeyRingsCreateCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCreateCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCreateCall) Do

Do executes the "cloudkms.projects.locations.keyRings.create" call. Any non-2xx status code is an error. Response headers are in either *KeyRing.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCreateCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCreateCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCreateCall) KeyRingId

KeyRingId sets the optional parameter "keyRingId": Required. It must be unique within a location and match the regular expression `[a-zA-Z0-9_-]{1,63}`

type ProjectsLocationsKeyRingsCryptoKeysCreateCall

type ProjectsLocationsKeyRingsCryptoKeysCreateCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCreateCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCreateCall) CryptoKeyId

CryptoKeyId sets the optional parameter "cryptoKeyId": Required. It must be unique within a KeyRing and match the regular expression `[a-zA-Z0-9_-]{1,63}`

func (*ProjectsLocationsKeyRingsCryptoKeysCreateCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.create" call. Any non-2xx status code is an error. Response headers are in either *CryptoKey.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCreateCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCreateCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysCreateCall) SkipInitialVersionCreation added in v0.8.0

func (c *ProjectsLocationsKeyRingsCryptoKeysCreateCall) SkipInitialVersionCreation(skipInitialVersionCreation bool) *ProjectsLocationsKeyRingsCryptoKeysCreateCall

SkipInitialVersionCreation sets the optional parameter "skipInitialVersionCreation": If set to true, the request will create a CryptoKey without any CryptoKeyVersions. You must manually call CreateCryptoKeyVersion or ImportCryptoKeyVersion before you can use this CryptoKey.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricDecryptCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricDecryptCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricDecryptCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricDecryptCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.asymmetricDecrypt" call. Any non-2xx status code is an error. Response headers are in either *AsymmetricDecryptResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricDecryptCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricDecryptCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricSignCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricSignCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricSignCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricSignCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.asymmetricSign" call. Any non-2xx status code is an error. Response headers are in either *AsymmetricSignResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricSignCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsAsymmetricSignCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.create" call. Any non-2xx status code is an error. Response headers are in either *CryptoKeyVersion.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsCreateCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.destroy" call. Any non-2xx status code is an error. Response headers are in either *CryptoKeyVersion.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsDestroyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.get" call. Any non-2xx status code is an error. Response headers are in either *CryptoKeyVersion.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.getPublicKey" call. Any non-2xx status code is an error. Response headers are in either *PublicKey.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsGetPublicKeyCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsImportCall added in v0.8.0

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsImportCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsImportCall) Context added in v0.8.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsImportCall) Do added in v0.8.0

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.import" call. Any non-2xx status code is an error. Response headers are in either *CryptoKeyVersion.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsImportCall) Fields added in v0.8.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsImportCall) Header added in v0.8.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.list" call. Any non-2xx status code is an error. Response headers are in either *ListCryptoKeyVersionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) Filter added in v0.8.0

Filter sets the optional parameter "filter": Only include resources that match the filter in the response. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) OrderBy added in v0.8.0

OrderBy sets the optional parameter "orderBy": Specify how the results should be sorted. If not specified, the results will be sorted in the default order. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) PageSize

PageSize sets the optional parameter "pageSize": Optional limit on the number of CryptoKeyVersions to include in the response. Further CryptoKeyVersions can subsequently be obtained by including the ListCryptoKeyVersionsResponse.next_page_token in a subsequent request. If unspecified, the server will pick an appropriate default.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) PageToken

PageToken sets the optional parameter "pageToken": Optional pagination token, returned earlier via ListCryptoKeyVersionsResponse.next_page_token.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) Pages

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsListCall) View

View sets the optional parameter "view": The fields to include in the response.

Possible values:

"CRYPTO_KEY_VERSION_VIEW_UNSPECIFIED" - Default view for each

CryptoKeyVersion. Does not include the attestation field.

"FULL" - Provides all fields in each CryptoKeyVersion, including the

attestation.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacSignCall added in v0.52.0

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacSignCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacSignCall) Context added in v0.52.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacSignCall) Do added in v0.52.0

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.macSign" call. Any non-2xx status code is an error. Response headers are in either *MacSignResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacSignCall) Fields added in v0.52.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacSignCall) Header added in v0.52.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacVerifyCall added in v0.52.0

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacVerifyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacVerifyCall) Context added in v0.52.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacVerifyCall) Do added in v0.52.0

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.macVerify" call. Any non-2xx status code is an error. Response headers are in either *MacVerifyResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacVerifyCall) Fields added in v0.52.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsMacVerifyCall) Header added in v0.52.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.patch" call. Any non-2xx status code is an error. Response headers are in either *CryptoKeyVersion.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsPatchCall) UpdateMask

UpdateMask sets the optional parameter "updateMask": Required. List of fields to be updated in this request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall added in v0.130.0

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Context added in v0.130.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Do added in v0.130.0

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawDecrypt" call. Any non-2xx status code is an error. Response headers are in either *RawDecryptResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Fields added in v0.130.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawDecryptCall) Header added in v0.130.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall added in v0.130.0

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Context added in v0.130.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Do added in v0.130.0

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.rawEncrypt" call. Any non-2xx status code is an error. Response headers are in either *RawEncryptResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Fields added in v0.130.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRawEncryptCall) Header added in v0.130.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.restore" call. Any non-2xx status code is an error. Response headers are in either *CryptoKeyVersion.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsRestoreCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService

type ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) AsymmetricDecrypt

AsymmetricDecrypt: Decrypts data that was encrypted with a public key retrieved from GetPublicKey corresponding to a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_DECRYPT.

- name: The resource name of the CryptoKeyVersion to use for decryption.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) AsymmetricSign

AsymmetricSign: Signs data using a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_SIGN, producing a signature that can be verified with the public key retrieved from GetPublicKey.

- name: The resource name of the CryptoKeyVersion to use for signing.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) Create

Create: Create a new CryptoKeyVersion in a CryptoKey. The server will assign the next sequential id. If unset, state will be set to ENABLED.

- parent: The name of the CryptoKey associated with the CryptoKeyVersions.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) Destroy

Destroy: Schedule a CryptoKeyVersion for destruction. Upon calling this method, CryptoKeyVersion.state will be set to DESTROY_SCHEDULED, and destroy_time will be set to the time destroy_scheduled_duration in the future. At that time, the state will automatically change to DESTROYED, and the key material will be irrevocably destroyed. Before the destroy_time is reached, RestoreCryptoKeyVersion may be called to reverse the process.

- name: The resource name of the CryptoKeyVersion to destroy.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) Get

Get: Returns metadata for a given CryptoKeyVersion.

- name: The name of the CryptoKeyVersion to get.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) GetPublicKey

GetPublicKey: Returns the public key for the given CryptoKeyVersion. The CryptoKey.purpose must be ASYMMETRIC_SIGN or ASYMMETRIC_DECRYPT.

- name: The name of the CryptoKeyVersion public key to get.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) Import added in v0.8.0

Import: Import wrapped key material into a CryptoKeyVersion. All requests must specify a CryptoKey. If a CryptoKeyVersion is additionally specified in the request, key material will be reimported into that version. Otherwise, a new version will be created, and will be assigned the next sequential id within the CryptoKey.

  • parent: The name of the CryptoKey to be imported into. The create permission is only required on this key when creating a new CryptoKeyVersion.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) List

List: Lists CryptoKeyVersions.

  • parent: The resource name of the CryptoKey to list, in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*`.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) MacSign added in v0.52.0

MacSign: Signs data using a CryptoKeyVersion with CryptoKey.purpose MAC, producing a tag that can be verified by another source with the same key.

- name: The resource name of the CryptoKeyVersion to use for signing.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) MacVerify added in v0.52.0

MacVerify: Verifies MAC tag using a CryptoKeyVersion with CryptoKey.purpose MAC, and returns a response that indicates whether or not the verification was successful.

- name: The resource name of the CryptoKeyVersion to use for verification.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) Patch

Patch: Update a CryptoKeyVersion's metadata. state may be changed between ENABLED and DISABLED using this method. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion to move between other states.

  • name: Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) RawDecrypt added in v0.130.0

RawDecrypt: Decrypts data that was originally encrypted using a raw cryptographic mechanism. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.

- name: The resource name of the CryptoKeyVersion to use for decryption.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) RawEncrypt added in v0.130.0

RawEncrypt: Encrypts data using portable cryptographic primitives. Most users should choose Encrypt and Decrypt rather than their raw counterparts. The CryptoKey.purpose must be RAW_ENCRYPT_DECRYPT.

- name: The resource name of the CryptoKeyVersion to use for encryption.

func (*ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService) Restore

Restore: Restore a CryptoKeyVersion in the DESTROY_SCHEDULED state. Upon restoration of the CryptoKeyVersion, state will be set to DISABLED, and destroy_time will be cleared.

- name: The resource name of the CryptoKeyVersion to restore.

type ProjectsLocationsKeyRingsCryptoKeysDecryptCall

type ProjectsLocationsKeyRingsCryptoKeysDecryptCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysDecryptCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysDecryptCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.decrypt" call. Any non-2xx status code is an error. Response headers are in either *DecryptResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysDecryptCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysDecryptCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysEncryptCall

type ProjectsLocationsKeyRingsCryptoKeysEncryptCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysEncryptCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysEncryptCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.encrypt" call. Any non-2xx status code is an error. Response headers are in either *EncryptResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysEncryptCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysEncryptCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysGetCall

type ProjectsLocationsKeyRingsCryptoKeysGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysGetCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysGetCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.get" call. Any non-2xx status code is an error. Response headers are in either *CryptoKey.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysGetCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysGetCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysGetCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall

type ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.getIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) OptionsRequestedPolicyVersion added in v0.8.0

func (c *ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsKeyRingsCryptoKeysGetIamPolicyCall

OptionsRequestedPolicyVersion sets the optional parameter "options.requestedPolicyVersion": The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).

type ProjectsLocationsKeyRingsCryptoKeysListCall

type ProjectsLocationsKeyRingsCryptoKeysListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.list" call. Any non-2xx status code is an error. Response headers are in either *ListCryptoKeysResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) Filter added in v0.8.0

Filter sets the optional parameter "filter": Only include resources that match the filter in the response. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) OrderBy added in v0.8.0

OrderBy sets the optional parameter "orderBy": Specify how the results should be sorted. If not specified, the results will be sorted in the default order. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) PageSize

PageSize sets the optional parameter "pageSize": Optional limit on the number of CryptoKeys to include in the response. Further CryptoKeys can subsequently be obtained by including the ListCryptoKeysResponse.next_page_token in a subsequent request. If unspecified, the server will pick an appropriate default.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) PageToken

PageToken sets the optional parameter "pageToken": Optional pagination token, returned earlier via ListCryptoKeysResponse.next_page_token.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) Pages

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

func (*ProjectsLocationsKeyRingsCryptoKeysListCall) VersionView

VersionView sets the optional parameter "versionView": The fields of the primary version to include in the response.

Possible values:

"CRYPTO_KEY_VERSION_VIEW_UNSPECIFIED" - Default view for each

CryptoKeyVersion. Does not include the attestation field.

"FULL" - Provides all fields in each CryptoKeyVersion, including the

attestation.

type ProjectsLocationsKeyRingsCryptoKeysPatchCall

type ProjectsLocationsKeyRingsCryptoKeysPatchCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysPatchCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysPatchCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.patch" call. Any non-2xx status code is an error. Response headers are in either *CryptoKey.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysPatchCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysPatchCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsCryptoKeysPatchCall) UpdateMask

UpdateMask sets the optional parameter "updateMask": Required. List of fields to be updated in this request.

type ProjectsLocationsKeyRingsCryptoKeysService

type ProjectsLocationsKeyRingsCryptoKeysService struct {
	CryptoKeyVersions *ProjectsLocationsKeyRingsCryptoKeysCryptoKeyVersionsService
	// contains filtered or unexported fields
}

func NewProjectsLocationsKeyRingsCryptoKeysService

func NewProjectsLocationsKeyRingsCryptoKeysService(s *Service) *ProjectsLocationsKeyRingsCryptoKeysService

func (*ProjectsLocationsKeyRingsCryptoKeysService) Create

Create: Create a new CryptoKey within a KeyRing. CryptoKey.purpose and CryptoKey.version_template.algorithm are required.

- parent: The name of the KeyRing associated with the CryptoKeys.

func (*ProjectsLocationsKeyRingsCryptoKeysService) Decrypt

Decrypt: Decrypts data that was protected by Encrypt. The CryptoKey.purpose must be ENCRYPT_DECRYPT.

  • name: The resource name of the CryptoKey to use for decryption. The server will choose the appropriate version.

func (*ProjectsLocationsKeyRingsCryptoKeysService) Encrypt

Encrypt: Encrypts data, so that it can only be recovered by a call to Decrypt. The CryptoKey.purpose must be ENCRYPT_DECRYPT.

  • name: The resource name of the CryptoKey or CryptoKeyVersion to use for encryption. If a CryptoKey is specified, the server will use its primary version.

func (*ProjectsLocationsKeyRingsCryptoKeysService) Get

Get: Returns metadata for a given CryptoKey, as well as its primary CryptoKeyVersion.

- name: The name of the CryptoKey to get.

func (*ProjectsLocationsKeyRingsCryptoKeysService) GetIamPolicy

GetIamPolicy: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

func (*ProjectsLocationsKeyRingsCryptoKeysService) List

List: Lists CryptoKeys.

  • parent: The resource name of the KeyRing to list, in the format `projects/*/locations/*/keyRings/*`.

func (*ProjectsLocationsKeyRingsCryptoKeysService) Patch

Patch: Update a CryptoKey.

  • name: Output only. The resource name for this CryptoKey in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*`.

func (*ProjectsLocationsKeyRingsCryptoKeysService) SetIamPolicy

SetIamPolicy: Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

func (*ProjectsLocationsKeyRingsCryptoKeysService) TestIamPermissions

TestIamPermissions: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

func (*ProjectsLocationsKeyRingsCryptoKeysService) UpdatePrimaryVersion

UpdatePrimaryVersion: Update the version of a CryptoKey that will be used in Encrypt. Returns an error if called on a key whose purpose is not ENCRYPT_DECRYPT.

- name: The resource name of the CryptoKey to update.

type ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall

type ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.setIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysSetIamPolicyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall

type ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.testIamPermissions" call. Any non-2xx status code is an error. Response headers are in either *TestIamPermissionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysTestIamPermissionsCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall

type ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall) Do

Do executes the "cloudkms.projects.locations.keyRings.cryptoKeys.updatePrimaryVersion" call. Any non-2xx status code is an error. Response headers are in either *CryptoKey.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsCryptoKeysUpdatePrimaryVersionCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsGetCall

type ProjectsLocationsKeyRingsGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsGetCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsGetCall) Do

Do executes the "cloudkms.projects.locations.keyRings.get" call. Any non-2xx status code is an error. Response headers are in either *KeyRing.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsGetCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsGetCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsGetCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyRingsGetIamPolicyCall

type ProjectsLocationsKeyRingsGetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsGetIamPolicyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsGetIamPolicyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.getIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsGetIamPolicyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsGetIamPolicyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsGetIamPolicyCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsGetIamPolicyCall) OptionsRequestedPolicyVersion added in v0.8.0

func (c *ProjectsLocationsKeyRingsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsKeyRingsGetIamPolicyCall

OptionsRequestedPolicyVersion sets the optional parameter "options.requestedPolicyVersion": The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).

type ProjectsLocationsKeyRingsImportJobsCreateCall added in v0.8.0

type ProjectsLocationsKeyRingsImportJobsCreateCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsImportJobsCreateCall) Context added in v0.8.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsImportJobsCreateCall) Do added in v0.8.0

Do executes the "cloudkms.projects.locations.keyRings.importJobs.create" call. Any non-2xx status code is an error. Response headers are in either *ImportJob.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsImportJobsCreateCall) Fields added in v0.8.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsImportJobsCreateCall) Header added in v0.8.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsImportJobsCreateCall) ImportJobId added in v0.8.0

ImportJobId sets the optional parameter "importJobId": Required. It must be unique within a KeyRing and match the regular expression `[a-zA-Z0-9_-]{1,63}`

type ProjectsLocationsKeyRingsImportJobsGetCall added in v0.8.0

type ProjectsLocationsKeyRingsImportJobsGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsImportJobsGetCall) Context added in v0.8.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsImportJobsGetCall) Do added in v0.8.0

Do executes the "cloudkms.projects.locations.keyRings.importJobs.get" call. Any non-2xx status code is an error. Response headers are in either *ImportJob.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsImportJobsGetCall) Fields added in v0.8.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsImportJobsGetCall) Header added in v0.8.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsImportJobsGetCall) IfNoneMatch added in v0.8.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall

type ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.importJobs.getIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) OptionsRequestedPolicyVersion added in v0.8.0

func (c *ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsKeyRingsImportJobsGetIamPolicyCall

OptionsRequestedPolicyVersion sets the optional parameter "options.requestedPolicyVersion": The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the IAM documentation (https://cloud.google.com/iam/help/conditions/resource-policies).

type ProjectsLocationsKeyRingsImportJobsListCall added in v0.8.0

type ProjectsLocationsKeyRingsImportJobsListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsImportJobsListCall) Context added in v0.8.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsImportJobsListCall) Do added in v0.8.0

Do executes the "cloudkms.projects.locations.keyRings.importJobs.list" call. Any non-2xx status code is an error. Response headers are in either *ListImportJobsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsImportJobsListCall) Fields added in v0.8.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsImportJobsListCall) Filter added in v0.8.0

Filter sets the optional parameter "filter": Only include resources that match the filter in the response. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsImportJobsListCall) Header added in v0.8.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsImportJobsListCall) IfNoneMatch added in v0.8.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsImportJobsListCall) OrderBy added in v0.8.0

OrderBy sets the optional parameter "orderBy": Specify how the results should be sorted. If not specified, the results will be sorted in the default order. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsImportJobsListCall) PageSize added in v0.8.0

PageSize sets the optional parameter "pageSize": Optional limit on the number of ImportJobs to include in the response. Further ImportJobs can subsequently be obtained by including the ListImportJobsResponse.next_page_token in a subsequent request. If unspecified, the server will pick an appropriate default.

func (*ProjectsLocationsKeyRingsImportJobsListCall) PageToken added in v0.8.0

PageToken sets the optional parameter "pageToken": Optional pagination token, returned earlier via ListImportJobsResponse.next_page_token.

func (*ProjectsLocationsKeyRingsImportJobsListCall) Pages added in v0.8.0

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

type ProjectsLocationsKeyRingsImportJobsService

type ProjectsLocationsKeyRingsImportJobsService struct {
	// contains filtered or unexported fields
}

func NewProjectsLocationsKeyRingsImportJobsService

func NewProjectsLocationsKeyRingsImportJobsService(s *Service) *ProjectsLocationsKeyRingsImportJobsService

func (*ProjectsLocationsKeyRingsImportJobsService) Create added in v0.8.0

Create: Create a new ImportJob within a KeyRing. ImportJob.import_method is required.

- parent: The name of the KeyRing associated with the ImportJobs.

func (*ProjectsLocationsKeyRingsImportJobsService) Get added in v0.8.0

Get: Returns metadata for a given ImportJob.

- name: The name of the ImportJob to get.

func (*ProjectsLocationsKeyRingsImportJobsService) GetIamPolicy

GetIamPolicy: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

func (*ProjectsLocationsKeyRingsImportJobsService) List added in v0.8.0

List: Lists ImportJobs.

  • parent: The resource name of the KeyRing to list, in the format `projects/*/locations/*/keyRings/*`.

func (*ProjectsLocationsKeyRingsImportJobsService) SetIamPolicy

SetIamPolicy: Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

func (*ProjectsLocationsKeyRingsImportJobsService) TestIamPermissions

TestIamPermissions: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

type ProjectsLocationsKeyRingsImportJobsSetIamPolicyCall

type ProjectsLocationsKeyRingsImportJobsSetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsImportJobsSetIamPolicyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsImportJobsSetIamPolicyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.importJobs.setIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsImportJobsSetIamPolicyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsImportJobsSetIamPolicyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsImportJobsTestIamPermissionsCall

type ProjectsLocationsKeyRingsImportJobsTestIamPermissionsCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsImportJobsTestIamPermissionsCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsImportJobsTestIamPermissionsCall) Do

Do executes the "cloudkms.projects.locations.keyRings.importJobs.testIamPermissions" call. Any non-2xx status code is an error. Response headers are in either *TestIamPermissionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsImportJobsTestIamPermissionsCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsImportJobsTestIamPermissionsCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsListCall

type ProjectsLocationsKeyRingsListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsListCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsListCall) Do

Do executes the "cloudkms.projects.locations.keyRings.list" call. Any non-2xx status code is an error. Response headers are in either *ListKeyRingsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsListCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsListCall) Filter added in v0.8.0

Filter sets the optional parameter "filter": Only include resources that match the filter in the response. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsListCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsKeyRingsListCall) IfNoneMatch

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsKeyRingsListCall) OrderBy added in v0.8.0

OrderBy sets the optional parameter "orderBy": Specify how the results should be sorted. If not specified, the results will be sorted in the default order. For more information, see Sorting and filtering list results (https://cloud.google.com/kms/docs/sorting-and-filtering).

func (*ProjectsLocationsKeyRingsListCall) PageSize

PageSize sets the optional parameter "pageSize": Optional limit on the number of KeyRings to include in the response. Further KeyRings can subsequently be obtained by including the ListKeyRingsResponse.next_page_token in a subsequent request. If unspecified, the server will pick an appropriate default.

func (*ProjectsLocationsKeyRingsListCall) PageToken

PageToken sets the optional parameter "pageToken": Optional pagination token, returned earlier via ListKeyRingsResponse.next_page_token.

func (*ProjectsLocationsKeyRingsListCall) Pages

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

type ProjectsLocationsKeyRingsService

type ProjectsLocationsKeyRingsService struct {
	CryptoKeys *ProjectsLocationsKeyRingsCryptoKeysService

	ImportJobs *ProjectsLocationsKeyRingsImportJobsService
	// contains filtered or unexported fields
}

func NewProjectsLocationsKeyRingsService

func NewProjectsLocationsKeyRingsService(s *Service) *ProjectsLocationsKeyRingsService

func (*ProjectsLocationsKeyRingsService) Create

Create: Create a new KeyRing in a given Project and Location.

  • parent: The resource name of the location associated with the KeyRings, in the format `projects/*/locations/*`.

func (*ProjectsLocationsKeyRingsService) Get

Get: Returns metadata for a given KeyRing.

- name: The name of the KeyRing to get.

func (*ProjectsLocationsKeyRingsService) GetIamPolicy

GetIamPolicy: Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

func (*ProjectsLocationsKeyRingsService) List

List: Lists KeyRings.

  • parent: The resource name of the location associated with the KeyRings, in the format `projects/*/locations/*`.

func (*ProjectsLocationsKeyRingsService) SetIamPolicy

SetIamPolicy: Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.

func (*ProjectsLocationsKeyRingsService) TestIamPermissions

TestIamPermissions: Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

type ProjectsLocationsKeyRingsSetIamPolicyCall

type ProjectsLocationsKeyRingsSetIamPolicyCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsSetIamPolicyCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsSetIamPolicyCall) Do

Do executes the "cloudkms.projects.locations.keyRings.setIamPolicy" call. Any non-2xx status code is an error. Response headers are in either *Policy.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsSetIamPolicyCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsSetIamPolicyCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsKeyRingsTestIamPermissionsCall

type ProjectsLocationsKeyRingsTestIamPermissionsCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsKeyRingsTestIamPermissionsCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsKeyRingsTestIamPermissionsCall) Do

Do executes the "cloudkms.projects.locations.keyRings.testIamPermissions" call. Any non-2xx status code is an error. Response headers are in either *TestIamPermissionsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsKeyRingsTestIamPermissionsCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsKeyRingsTestIamPermissionsCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

type ProjectsLocationsListCall

type ProjectsLocationsListCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsListCall) Context

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsListCall) Do

Do executes the "cloudkms.projects.locations.list" call. Any non-2xx status code is an error. Response headers are in either *ListLocationsResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsListCall) Fields

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsListCall) Filter

Filter sets the optional parameter "filter": A filter to narrow down results to a preferred subset. The filtering language accepts strings like "displayName=tokyo", and is documented in more detail in AIP-160 (https://google.aip.dev/160).

func (*ProjectsLocationsListCall) Header

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsListCall) IfNoneMatch

func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

func (*ProjectsLocationsListCall) PageSize

PageSize sets the optional parameter "pageSize": The maximum number of results to return. If not set, the service selects a default.

func (*ProjectsLocationsListCall) PageToken

PageToken sets the optional parameter "pageToken": A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.

func (*ProjectsLocationsListCall) Pages

Pages invokes f for each page of results. A non-nil error returned from f will halt the iteration. The provided context supersedes any context provided to the Context method.

type ProjectsLocationsOperationsGetCall added in v0.178.0

type ProjectsLocationsOperationsGetCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsOperationsGetCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsOperationsGetCall) Do added in v0.178.0

Do executes the "cloudkms.projects.locations.operations.get" call. Any non-2xx status code is an error. Response headers are in either *Operation.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsOperationsGetCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsOperationsGetCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsOperationsGetCall) IfNoneMatch added in v0.178.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type ProjectsLocationsOperationsService added in v0.178.0

type ProjectsLocationsOperationsService struct {
	// contains filtered or unexported fields
}

func NewProjectsLocationsOperationsService added in v0.178.0

func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService

func (*ProjectsLocationsOperationsService) Get added in v0.178.0

Get: Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.

- name: The name of the operation resource.

type ProjectsLocationsService

type ProjectsLocationsService struct {
	EkmConfig *ProjectsLocationsEkmConfigService

	EkmConnections *ProjectsLocationsEkmConnectionsService

	KeyHandles *ProjectsLocationsKeyHandlesService

	KeyRings *ProjectsLocationsKeyRingsService

	Operations *ProjectsLocationsOperationsService
	// contains filtered or unexported fields
}

func NewProjectsLocationsService

func NewProjectsLocationsService(s *Service) *ProjectsLocationsService

func (*ProjectsLocationsService) GenerateRandomBytes added in v0.53.0

func (r *ProjectsLocationsService) GenerateRandomBytes(location string, generaterandombytesrequest *GenerateRandomBytesRequest) *ProjectsLocationsGenerateRandomBytesCall

GenerateRandomBytes: Generate random bytes using the Cloud KMS randomness source in the provided location.

  • location: The project-specific location in which to generate random bytes. For example, "projects/my-project/locations/us-central1".

func (*ProjectsLocationsService) Get

Get: Gets information about a location.

- name: Resource name for the location.

func (*ProjectsLocationsService) GetEkmConfig added in v0.114.0

GetEkmConfig: Returns the EkmConfig singleton resource for a given project and location.

- name: The name of the EkmConfig to get.

func (*ProjectsLocationsService) List

List: Lists information about the supported locations for this service.

- name: The resource that owns the locations collection, if applicable.

func (*ProjectsLocationsService) UpdateEkmConfig added in v0.114.0

func (r *ProjectsLocationsService) UpdateEkmConfig(name string, ekmconfig *EkmConfig) *ProjectsLocationsUpdateEkmConfigCall

UpdateEkmConfig: Updates the EkmConfig singleton resource for a given project and location.

  • name: Output only. The resource name for the EkmConfig in the format `projects/*/locations/*/ekmConfig`.

type ProjectsLocationsUpdateEkmConfigCall added in v0.114.0

type ProjectsLocationsUpdateEkmConfigCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsLocationsUpdateEkmConfigCall) Context added in v0.114.0

Context sets the context to be used in this call's Do method.

func (*ProjectsLocationsUpdateEkmConfigCall) Do added in v0.114.0

Do executes the "cloudkms.projects.locations.updateEkmConfig" call. Any non-2xx status code is an error. Response headers are in either *EkmConfig.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsLocationsUpdateEkmConfigCall) Fields added in v0.114.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsLocationsUpdateEkmConfigCall) Header added in v0.114.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsLocationsUpdateEkmConfigCall) UpdateMask added in v0.114.0

UpdateMask sets the optional parameter "updateMask": Required. List of fields to be updated in this request.

type ProjectsService

type ProjectsService struct {
	Locations *ProjectsLocationsService
	// contains filtered or unexported fields
}

func NewProjectsService

func NewProjectsService(s *Service) *ProjectsService

func (*ProjectsService) ShowEffectiveAutokeyConfig added in v0.178.0

func (r *ProjectsService) ShowEffectiveAutokeyConfig(parent string) *ProjectsShowEffectiveAutokeyConfigCall

ShowEffectiveAutokeyConfig: Returns the effective Cloud KMS Autokey configuration for a given project.

  • parent: Name of the resource project to the show effective Cloud KMS Autokey configuration for. This may be helpful for interrogating the effect of nested folder configurations on a given resource project.

type ProjectsShowEffectiveAutokeyConfigCall added in v0.178.0

type ProjectsShowEffectiveAutokeyConfigCall struct {
	// contains filtered or unexported fields
}

func (*ProjectsShowEffectiveAutokeyConfigCall) Context added in v0.178.0

Context sets the context to be used in this call's Do method.

func (*ProjectsShowEffectiveAutokeyConfigCall) Do added in v0.178.0

Do executes the "cloudkms.projects.showEffectiveAutokeyConfig" call. Any non-2xx status code is an error. Response headers are in either *ShowEffectiveAutokeyConfigResponse.ServerResponse.Header or (if a response was returned at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check whether the returned error was because http.StatusNotModified was returned.

func (*ProjectsShowEffectiveAutokeyConfigCall) Fields added in v0.178.0

Fields allows partial responses to be retrieved. See https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more details.

func (*ProjectsShowEffectiveAutokeyConfigCall) Header added in v0.178.0

Header returns a http.Header that can be modified by the caller to add headers to the request.

func (*ProjectsShowEffectiveAutokeyConfigCall) IfNoneMatch added in v0.178.0

IfNoneMatch sets an optional parameter which makes the operation fail if the object's ETag matches the given value. This is useful for getting updates only after the object has changed since the last request.

type PublicKey

type PublicKey struct {
	// Algorithm: The Algorithm associated with this key.
	//
	// Possible values:
	//   "CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED" - Not specified.
	//   "GOOGLE_SYMMETRIC_ENCRYPTION" - Creates symmetric encryption keys.
	//   "AES_128_GCM" - AES-GCM (Galois Counter Mode) using 128-bit keys.
	//   "AES_256_GCM" - AES-GCM (Galois Counter Mode) using 256-bit keys.
	//   "AES_128_CBC" - AES-CBC (Cipher Block Chaining Mode) using 128-bit keys.
	//   "AES_256_CBC" - AES-CBC (Cipher Block Chaining Mode) using 256-bit keys.
	//   "AES_128_CTR" - AES-CTR (Counter Mode) using 128-bit keys.
	//   "AES_256_CTR" - AES-CTR (Counter Mode) using 256-bit keys.
	//   "RSA_SIGN_PSS_2048_SHA256" - RSASSA-PSS 2048 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_3072_SHA256" - RSASSA-PSS 3072 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA256" - RSASSA-PSS 4096 bit key with a SHA256 digest.
	//   "RSA_SIGN_PSS_4096_SHA512" - RSASSA-PSS 4096 bit key with a SHA512 digest.
	//   "RSA_SIGN_PKCS1_2048_SHA256" - RSASSA-PKCS1-v1_5 with a 2048 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_3072_SHA256" - RSASSA-PKCS1-v1_5 with a 3072 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA256" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA256 digest.
	//   "RSA_SIGN_PKCS1_4096_SHA512" - RSASSA-PKCS1-v1_5 with a 4096 bit key and a
	// SHA512 digest.
	//   "RSA_SIGN_RAW_PKCS1_2048" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 2048 bit key.
	//   "RSA_SIGN_RAW_PKCS1_3072" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 3072 bit key.
	//   "RSA_SIGN_RAW_PKCS1_4096" - RSASSA-PKCS1-v1_5 signing without encoding,
	// with a 4096 bit key.
	//   "RSA_DECRYPT_OAEP_2048_SHA256" - RSAES-OAEP 2048 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA256" - RSAES-OAEP 3072 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA256" - RSAES-OAEP 4096 bit key with a SHA256
	// digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA512" - RSAES-OAEP 4096 bit key with a SHA512
	// digest.
	//   "RSA_DECRYPT_OAEP_2048_SHA1" - RSAES-OAEP 2048 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_3072_SHA1" - RSAES-OAEP 3072 bit key with a SHA1 digest.
	//   "RSA_DECRYPT_OAEP_4096_SHA1" - RSAES-OAEP 4096 bit key with a SHA1 digest.
	//   "EC_SIGN_P256_SHA256" - ECDSA on the NIST P-256 curve with a SHA256
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_P384_SHA384" - ECDSA on the NIST P-384 curve with a SHA384
	// digest. Other hash functions can also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_SECP256K1_SHA256" - ECDSA on the non-NIST secp256k1 curve. This
	// curve is only supported for HSM protection level. Other hash functions can
	// also be used:
	// https://cloud.google.com/kms/docs/create-validate-signatures#ecdsa_support_for_other_hash_algorithms
	//   "EC_SIGN_ED25519" - EdDSA on the Curve25519 in pure mode (taking data as
	// input).
	//   "HMAC_SHA256" - HMAC-SHA256 signing with a 256 bit key.
	//   "HMAC_SHA1" - HMAC-SHA1 signing with a 160 bit key.
	//   "HMAC_SHA384" - HMAC-SHA384 signing with a 384 bit key.
	//   "HMAC_SHA512" - HMAC-SHA512 signing with a 512 bit key.
	//   "HMAC_SHA224" - HMAC-SHA224 signing with a 224 bit key.
	//   "EXTERNAL_SYMMETRIC_ENCRYPTION" - Algorithm representing symmetric
	// encryption by an external key manager.
	Algorithm string `json:"algorithm,omitempty"`
	// Name: The name of the CryptoKeyVersion public key. Provided here for
	// verification. NOTE: This field is in Beta.
	Name string `json:"name,omitempty"`
	// Pem: The public key, encoded in PEM format. For more information, see the
	// RFC 7468 (https://tools.ietf.org/html/rfc7468) sections for General
	// Considerations (https://tools.ietf.org/html/rfc7468#section-2) and [Textual
	// Encoding of Subject Public Key Info]
	// (https://tools.ietf.org/html/rfc7468#section-13).
	Pem string `json:"pem,omitempty"`
	// PemCrc32c: Integrity verification field. A CRC32C checksum of the returned
	// PublicKey.pem. An integrity check of PublicKey.pem can be performed by
	// computing the CRC32C checksum of PublicKey.pem and comparing your results to
	// this field. Discard the response in case of non-matching checksum values,
	// and perform a limited number of retries. A persistent mismatch may indicate
	// an issue in your computation of the CRC32C checksum. Note: This field is
	// defined as int64 for reasons of compatibility across different languages.
	// However, it is a non-negative integer, which will never exceed 2^32-1, and
	// can be safely downconverted to uint32 in languages that support this type.
	// NOTE: This field is in Beta.
	PemCrc32c int64 `json:"pemCrc32c,omitempty,string"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion public key.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Algorithm") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Algorithm") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

PublicKey: The public keys for a given CryptoKeyVersion. Obtained via GetPublicKey.

func (PublicKey) MarshalJSON

func (s PublicKey) MarshalJSON() ([]byte, error)

type RawDecryptRequest added in v0.130.0

type RawDecryptRequest struct {
	// AdditionalAuthenticatedData: Optional. Optional data that must match the
	// data originally supplied in RawEncryptRequest.additional_authenticated_data.
	AdditionalAuthenticatedData string `json:"additionalAuthenticatedData,omitempty"`
	// AdditionalAuthenticatedDataCrc32c: Optional. An optional CRC32C checksum of
	// the RawDecryptRequest.additional_authenticated_data. If specified,
	// KeyManagementService will verify the integrity of the received
	// additional_authenticated_data using this checksum. KeyManagementService will
	// report an error if the checksum verification fails. If you receive a
	// checksum error, your client should verify that
	// CRC32C(additional_authenticated_data) is equal to
	// additional_authenticated_data_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	AdditionalAuthenticatedDataCrc32c int64 `json:"additionalAuthenticatedDataCrc32c,omitempty,string"`
	// Ciphertext: Required. The encrypted data originally returned in
	// RawEncryptResponse.ciphertext.
	Ciphertext string `json:"ciphertext,omitempty"`
	// CiphertextCrc32c: Optional. An optional CRC32C checksum of the
	// RawDecryptRequest.ciphertext. If specified, KeyManagementService will verify
	// the integrity of the received ciphertext using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(ciphertext) is equal to ciphertext_crc32c, and if so, perform a
	// limited number of retries. A persistent mismatch may indicate an issue in
	// your computation of the CRC32C checksum. Note: This field is defined as
	// int64 for reasons of compatibility across different languages. However, it
	// is a non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"`
	// InitializationVector: Required. The initialization vector (IV) used during
	// encryption, which must match the data originally provided in
	// RawEncryptResponse.initialization_vector.
	InitializationVector string `json:"initializationVector,omitempty"`
	// InitializationVectorCrc32c: Optional. An optional CRC32C checksum of the
	// RawDecryptRequest.initialization_vector. If specified, KeyManagementService
	// will verify the integrity of the received initialization_vector using this
	// checksum. KeyManagementService will report an error if the checksum
	// verification fails. If you receive a checksum error, your client should
	// verify that CRC32C(initialization_vector) is equal to
	// initialization_vector_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	InitializationVectorCrc32c int64 `json:"initializationVectorCrc32c,omitempty,string"`
	// TagLength: The length of the authentication tag that is appended to the end
	// of the ciphertext. If unspecified (0), the default value for the key's
	// algorithm will be used (for AES-GCM, the default value is 16).
	TagLength int64 `json:"tagLength,omitempty"`
	// ForceSendFields is a list of field names (e.g.
	// "AdditionalAuthenticatedData") to unconditionally include in API requests.
	// By default, fields with empty or default values are omitted from API
	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
	// for more details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalAuthenticatedData") to
	// include in API requests with the JSON null value. By default, fields with
	// empty values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RawDecryptRequest: Request message for KeyManagementService.RawDecrypt.

func (RawDecryptRequest) MarshalJSON added in v0.130.0

func (s RawDecryptRequest) MarshalJSON() ([]byte, error)

type RawDecryptResponse added in v0.130.0

type RawDecryptResponse struct {
	// Plaintext: The decrypted data.
	Plaintext string `json:"plaintext,omitempty"`
	// PlaintextCrc32c: Integrity verification field. A CRC32C checksum of the
	// returned RawDecryptResponse.plaintext. An integrity check of plaintext can
	// be performed by computing the CRC32C checksum of plaintext and comparing
	// your results to this field. Discard the response in case of non-matching
	// checksum values, and perform a limited number of retries. A persistent
	// mismatch may indicate an issue in your computation of the CRC32C checksum.
	// Note: receiving this response message indicates that KeyManagementService is
	// able to successfully decrypt the ciphertext. Note: This field is defined as
	// int64 for reasons of compatibility across different languages. However, it
	// is a non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in
	// decryption.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// VerifiedAdditionalAuthenticatedDataCrc32c: Integrity verification field. A
	// flag indicating whether
	// RawDecryptRequest.additional_authenticated_data_crc32c was received by
	// KeyManagementService and used for the integrity verification of
	// additional_authenticated_data. A false value of this field indicates either
	// that // RawDecryptRequest.additional_authenticated_data_crc32c was left
	// unset or that it was not delivered to KeyManagementService. If you've set
	// RawDecryptRequest.additional_authenticated_data_crc32c but this field is
	// still false, discard the response and perform a limited number of retries.
	VerifiedAdditionalAuthenticatedDataCrc32c bool `json:"verifiedAdditionalAuthenticatedDataCrc32c,omitempty"`
	// VerifiedCiphertextCrc32c: Integrity verification field. A flag indicating
	// whether RawDecryptRequest.ciphertext_crc32c was received by
	// KeyManagementService and used for the integrity verification of the
	// ciphertext. A false value of this field indicates either that
	// RawDecryptRequest.ciphertext_crc32c was left unset or that it was not
	// delivered to KeyManagementService. If you've set
	// RawDecryptRequest.ciphertext_crc32c but this field is still false, discard
	// the response and perform a limited number of retries.
	VerifiedCiphertextCrc32c bool `json:"verifiedCiphertextCrc32c,omitempty"`
	// VerifiedInitializationVectorCrc32c: Integrity verification field. A flag
	// indicating whether RawDecryptRequest.initialization_vector_crc32c was
	// received by KeyManagementService and used for the integrity verification of
	// initialization_vector. A false value of this field indicates either that
	// RawDecryptRequest.initialization_vector_crc32c was left unset or that it was
	// not delivered to KeyManagementService. If you've set
	// RawDecryptRequest.initialization_vector_crc32c but this field is still
	// false, discard the response and perform a limited number of retries.
	VerifiedInitializationVectorCrc32c bool `json:"verifiedInitializationVectorCrc32c,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Plaintext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Plaintext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RawDecryptResponse: Response message for KeyManagementService.RawDecrypt.

func (RawDecryptResponse) MarshalJSON added in v0.130.0

func (s RawDecryptResponse) MarshalJSON() ([]byte, error)

type RawEncryptRequest added in v0.130.0

type RawEncryptRequest struct {
	// AdditionalAuthenticatedData: Optional. Optional data that, if specified,
	// must also be provided during decryption through
	// RawDecryptRequest.additional_authenticated_data. This field may only be used
	// in conjunction with an algorithm that accepts additional authenticated data
	// (for example, AES-GCM). The maximum size depends on the key version's
	// protection_level. For SOFTWARE keys, the plaintext must be no larger than
	// 64KiB. For HSM keys, the combined length of the plaintext and
	// additional_authenticated_data fields must be no larger than 8KiB.
	AdditionalAuthenticatedData string `json:"additionalAuthenticatedData,omitempty"`
	// AdditionalAuthenticatedDataCrc32c: Optional. An optional CRC32C checksum of
	// the RawEncryptRequest.additional_authenticated_data. If specified,
	// KeyManagementService will verify the integrity of the received
	// additional_authenticated_data using this checksum. KeyManagementService will
	// report an error if the checksum verification fails. If you receive a
	// checksum error, your client should verify that
	// CRC32C(additional_authenticated_data) is equal to
	// additional_authenticated_data_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	AdditionalAuthenticatedDataCrc32c int64 `json:"additionalAuthenticatedDataCrc32c,omitempty,string"`
	// InitializationVector: Optional. A customer-supplied initialization vector
	// that will be used for encryption. If it is not provided for AES-CBC and
	// AES-CTR, one will be generated. It will be returned in
	// RawEncryptResponse.initialization_vector.
	InitializationVector string `json:"initializationVector,omitempty"`
	// InitializationVectorCrc32c: Optional. An optional CRC32C checksum of the
	// RawEncryptRequest.initialization_vector. If specified, KeyManagementService
	// will verify the integrity of the received initialization_vector using this
	// checksum. KeyManagementService will report an error if the checksum
	// verification fails. If you receive a checksum error, your client should
	// verify that CRC32C(initialization_vector) is equal to
	// initialization_vector_crc32c, and if so, perform a limited number of
	// retries. A persistent mismatch may indicate an issue in your computation of
	// the CRC32C checksum. Note: This field is defined as int64 for reasons of
	// compatibility across different languages. However, it is a non-negative
	// integer, which will never exceed 2^32-1, and can be safely downconverted to
	// uint32 in languages that support this type.
	InitializationVectorCrc32c int64 `json:"initializationVectorCrc32c,omitempty,string"`
	// Plaintext: Required. The data to encrypt. Must be no larger than 64KiB. The
	// maximum size depends on the key version's protection_level. For SOFTWARE
	// keys, the plaintext must be no larger than 64KiB. For HSM keys, the combined
	// length of the plaintext and additional_authenticated_data fields must be no
	// larger than 8KiB.
	Plaintext string `json:"plaintext,omitempty"`
	// PlaintextCrc32c: Optional. An optional CRC32C checksum of the
	// RawEncryptRequest.plaintext. If specified, KeyManagementService will verify
	// the integrity of the received plaintext using this checksum.
	// KeyManagementService will report an error if the checksum verification
	// fails. If you receive a checksum error, your client should verify that
	// CRC32C(plaintext) is equal to plaintext_crc32c, and if so, perform a limited
	// number of retries. A persistent mismatch may indicate an issue in your
	// computation of the CRC32C checksum. Note: This field is defined as int64 for
	// reasons of compatibility across different languages. However, it is a
	// non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	PlaintextCrc32c int64 `json:"plaintextCrc32c,omitempty,string"`
	// ForceSendFields is a list of field names (e.g.
	// "AdditionalAuthenticatedData") to unconditionally include in API requests.
	// By default, fields with empty or default values are omitted from API
	// requests. See https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields
	// for more details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "AdditionalAuthenticatedData") to
	// include in API requests with the JSON null value. By default, fields with
	// empty values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RawEncryptRequest: Request message for KeyManagementService.RawEncrypt.

func (RawEncryptRequest) MarshalJSON added in v0.130.0

func (s RawEncryptRequest) MarshalJSON() ([]byte, error)

type RawEncryptResponse added in v0.130.0

type RawEncryptResponse struct {
	// Ciphertext: The encrypted data. In the case of AES-GCM, the authentication
	// tag is the tag_length bytes at the end of this field.
	Ciphertext string `json:"ciphertext,omitempty"`
	// CiphertextCrc32c: Integrity verification field. A CRC32C checksum of the
	// returned RawEncryptResponse.ciphertext. An integrity check of ciphertext can
	// be performed by computing the CRC32C checksum of ciphertext and comparing
	// your results to this field. Discard the response in case of non-matching
	// checksum values, and perform a limited number of retries. A persistent
	// mismatch may indicate an issue in your computation of the CRC32C checksum.
	// Note: This field is defined as int64 for reasons of compatibility across
	// different languages. However, it is a non-negative integer, which will never
	// exceed 2^32-1, and can be safely downconverted to uint32 in languages that
	// support this type.
	CiphertextCrc32c int64 `json:"ciphertextCrc32c,omitempty,string"`
	// InitializationVector: The initialization vector (IV) generated by the
	// service during encryption. This value must be stored and provided in
	// RawDecryptRequest.initialization_vector at decryption time.
	InitializationVector string `json:"initializationVector,omitempty"`
	// InitializationVectorCrc32c: Integrity verification field. A CRC32C checksum
	// of the returned RawEncryptResponse.initialization_vector. An integrity check
	// of initialization_vector can be performed by computing the CRC32C checksum
	// of initialization_vector and comparing your results to this field. Discard
	// the response in case of non-matching checksum values, and perform a limited
	// number of retries. A persistent mismatch may indicate an issue in your
	// computation of the CRC32C checksum. Note: This field is defined as int64 for
	// reasons of compatibility across different languages. However, it is a
	// non-negative integer, which will never exceed 2^32-1, and can be safely
	// downconverted to uint32 in languages that support this type.
	InitializationVectorCrc32c int64 `json:"initializationVectorCrc32c,omitempty,string"`
	// Name: The resource name of the CryptoKeyVersion used in encryption. Check
	// this field to verify that the intended resource was used for encryption.
	Name string `json:"name,omitempty"`
	// ProtectionLevel: The ProtectionLevel of the CryptoKeyVersion used in
	// encryption.
	//
	// Possible values:
	//   "PROTECTION_LEVEL_UNSPECIFIED" - Not specified.
	//   "SOFTWARE" - Crypto operations are performed in software.
	//   "HSM" - Crypto operations are performed in a Hardware Security Module.
	//   "EXTERNAL" - Crypto operations are performed by an external key manager.
	//   "EXTERNAL_VPC" - Crypto operations are performed in an EKM-over-VPC
	// backend.
	ProtectionLevel string `json:"protectionLevel,omitempty"`
	// TagLength: The length of the authentication tag that is appended to the end
	// of the ciphertext.
	TagLength int64 `json:"tagLength,omitempty"`
	// VerifiedAdditionalAuthenticatedDataCrc32c: Integrity verification field. A
	// flag indicating whether
	// RawEncryptRequest.additional_authenticated_data_crc32c was received by
	// KeyManagementService and used for the integrity verification of
	// additional_authenticated_data. A false value of this field indicates either
	// that // RawEncryptRequest.additional_authenticated_data_crc32c was left
	// unset or that it was not delivered to KeyManagementService. If you've set
	// RawEncryptRequest.additional_authenticated_data_crc32c but this field is
	// still false, discard the response and perform a limited number of retries.
	VerifiedAdditionalAuthenticatedDataCrc32c bool `json:"verifiedAdditionalAuthenticatedDataCrc32c,omitempty"`
	// VerifiedInitializationVectorCrc32c: Integrity verification field. A flag
	// indicating whether RawEncryptRequest.initialization_vector_crc32c was
	// received by KeyManagementService and used for the integrity verification of
	// initialization_vector. A false value of this field indicates either that
	// RawEncryptRequest.initialization_vector_crc32c was left unset or that it was
	// not delivered to KeyManagementService. If you've set
	// RawEncryptRequest.initialization_vector_crc32c but this field is still
	// false, discard the response and perform a limited number of retries.
	VerifiedInitializationVectorCrc32c bool `json:"verifiedInitializationVectorCrc32c,omitempty"`
	// VerifiedPlaintextCrc32c: Integrity verification field. A flag indicating
	// whether RawEncryptRequest.plaintext_crc32c was received by
	// KeyManagementService and used for the integrity verification of the
	// plaintext. A false value of this field indicates either that
	// RawEncryptRequest.plaintext_crc32c was left unset or that it was not
	// delivered to KeyManagementService. If you've set
	// RawEncryptRequest.plaintext_crc32c but this field is still false, discard
	// the response and perform a limited number of retries.
	VerifiedPlaintextCrc32c bool `json:"verifiedPlaintextCrc32c,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Ciphertext") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Ciphertext") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

RawEncryptResponse: Response message for KeyManagementService.RawEncrypt.

func (RawEncryptResponse) MarshalJSON added in v0.130.0

func (s RawEncryptResponse) MarshalJSON() ([]byte, error)

type RestoreCryptoKeyVersionRequest

type RestoreCryptoKeyVersionRequest struct {
}

RestoreCryptoKeyVersionRequest: Request message for KeyManagementService.RestoreCryptoKeyVersion.

type Service

type Service struct {
	BasePath  string // API endpoint base URL
	UserAgent string // optional additional User-Agent fragment

	Folders *FoldersService

	Projects *ProjectsService
	// contains filtered or unexported fields
}

func New deprecated

func New(client *http.Client) (*Service, error)

New creates a new Service. It uses the provided http.Client for requests.

Deprecated: please use NewService instead. To provide a custom HTTP client, use option.WithHTTPClient. If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.

func NewService added in v0.3.0

func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error)

NewService creates a new Service.

type ServiceResolver added in v0.67.0

type ServiceResolver struct {
	// EndpointFilter: Optional. The filter applied to the endpoints of the
	// resolved service. If no filter is specified, all endpoints will be
	// considered. An endpoint will be chosen arbitrarily from the filtered list
	// for each request. For endpoint filter syntax and examples, see
	// https://cloud.google.com/service-directory/docs/reference/rpc/google.cloud.servicedirectory.v1#resolveservicerequest.
	EndpointFilter string `json:"endpointFilter,omitempty"`
	// Hostname: Required. The hostname of the EKM replica used at TLS and HTTP
	// layers.
	Hostname string `json:"hostname,omitempty"`
	// ServerCertificates: Required. A list of leaf server certificates used to
	// authenticate HTTPS connections to the EKM replica. Currently, a maximum of
	// 10 Certificate is supported.
	ServerCertificates []*Certificate `json:"serverCertificates,omitempty"`
	// ServiceDirectoryService: Required. The resource name of the Service
	// Directory service pointing to an EKM replica, in the format
	// `projects/*/locations/*/namespaces/*/services/*`.
	ServiceDirectoryService string `json:"serviceDirectoryService,omitempty"`
	// ForceSendFields is a list of field names (e.g. "EndpointFilter") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "EndpointFilter") to include in
	// API requests with the JSON null value. By default, fields with empty values
	// are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ServiceResolver: A ServiceResolver represents an EKM replica that can be reached within an EkmConnection.

func (ServiceResolver) MarshalJSON added in v0.67.0

func (s ServiceResolver) MarshalJSON() ([]byte, error)

type SetIamPolicyRequest

type SetIamPolicyRequest struct {
	// Policy: REQUIRED: The complete policy to be applied to the `resource`. The
	// size of the policy is limited to a few 10s of KB. An empty policy is a valid
	// policy but certain Google Cloud services (such as Projects) might reject
	// them.
	Policy *Policy `json:"policy,omitempty"`
	// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to
	// modify. Only the fields in the mask will be modified. If no mask is
	// provided, the following default mask is used: `paths: "bindings, etag"
	UpdateMask string `json:"updateMask,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Policy") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Policy") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

SetIamPolicyRequest: Request message for `SetIamPolicy` method.

func (SetIamPolicyRequest) MarshalJSON

func (s SetIamPolicyRequest) MarshalJSON() ([]byte, error)

type ShowEffectiveAutokeyConfigResponse added in v0.178.0

type ShowEffectiveAutokeyConfigResponse struct {
	// KeyProject: Name of the key project configured in the resource project's
	// folder ancestry.
	KeyProject string `json:"keyProject,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "KeyProject") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "KeyProject") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

ShowEffectiveAutokeyConfigResponse: Response message for ShowEffectiveAutokeyConfig.

func (ShowEffectiveAutokeyConfigResponse) MarshalJSON added in v0.178.0

func (s ShowEffectiveAutokeyConfigResponse) MarshalJSON() ([]byte, error)

type Status added in v0.178.0

type Status struct {
	// Code: The status code, which should be an enum value of google.rpc.Code.
	Code int64 `json:"code,omitempty"`
	// Details: A list of messages that carry the error details. There is a common
	// set of message types for APIs to use.
	Details []googleapi.RawMessage `json:"details,omitempty"`
	// Message: A developer-facing error message, which should be in English. Any
	// user-facing error message should be localized and sent in the
	// google.rpc.Status.details field, or localized by the client.
	Message string `json:"message,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Code") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

Status: The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors).

func (Status) MarshalJSON added in v0.178.0

func (s Status) MarshalJSON() ([]byte, error)

type TestIamPermissionsRequest

type TestIamPermissionsRequest struct {
	// Permissions: The set of permissions to check for the `resource`. Permissions
	// with wildcards (such as `*` or `storage.*`) are not allowed. For more
	// information see IAM Overview
	// (https://cloud.google.com/iam/docs/overview#permissions).
	Permissions []string `json:"permissions,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Permissions") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Permissions") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TestIamPermissionsRequest: Request message for `TestIamPermissions` method.

func (TestIamPermissionsRequest) MarshalJSON

func (s TestIamPermissionsRequest) MarshalJSON() ([]byte, error)

type TestIamPermissionsResponse

type TestIamPermissionsResponse struct {
	// Permissions: A subset of `TestPermissionsRequest.permissions` that the
	// caller is allowed.
	Permissions []string `json:"permissions,omitempty"`

	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
	// ForceSendFields is a list of field names (e.g. "Permissions") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Permissions") to include in API
	// requests with the JSON null value. By default, fields with empty values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

TestIamPermissionsResponse: Response message for `TestIamPermissions` method.

func (TestIamPermissionsResponse) MarshalJSON

func (s TestIamPermissionsResponse) MarshalJSON() ([]byte, error)

type UpdateCryptoKeyPrimaryVersionRequest

type UpdateCryptoKeyPrimaryVersionRequest struct {
	// CryptoKeyVersionId: Required. The id of the child CryptoKeyVersion to use as
	// primary.
	CryptoKeyVersionId string `json:"cryptoKeyVersionId,omitempty"`
	// ForceSendFields is a list of field names (e.g. "CryptoKeyVersionId") to
	// unconditionally include in API requests. By default, fields with empty or
	// default values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "CryptoKeyVersionId") to include
	// in API requests with the JSON null value. By default, fields with empty
	// values are omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

UpdateCryptoKeyPrimaryVersionRequest: Request message for KeyManagementService.UpdateCryptoKeyPrimaryVersion.

func (UpdateCryptoKeyPrimaryVersionRequest) MarshalJSON

func (s UpdateCryptoKeyPrimaryVersionRequest) MarshalJSON() ([]byte, error)

type VerifyConnectivityResponse added in v0.119.0

type VerifyConnectivityResponse struct {
	// ServerResponse contains the HTTP response code and headers from the server.
	googleapi.ServerResponse `json:"-"`
}

VerifyConnectivityResponse: Response message for EkmService.VerifyConnectivity.

type WrappingPublicKey added in v0.8.0

type WrappingPublicKey struct {
	// Pem: The public key, encoded in PEM format. For more information, see the
	// RFC 7468 (https://tools.ietf.org/html/rfc7468) sections for General
	// Considerations (https://tools.ietf.org/html/rfc7468#section-2) and [Textual
	// Encoding of Subject Public Key Info]
	// (https://tools.ietf.org/html/rfc7468#section-13).
	Pem string `json:"pem,omitempty"`
	// ForceSendFields is a list of field names (e.g. "Pem") to unconditionally
	// include in API requests. By default, fields with empty or default values are
	// omitted from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
	// details.
	ForceSendFields []string `json:"-"`
	// NullFields is a list of field names (e.g. "Pem") to include in API requests
	// with the JSON null value. By default, fields with empty values are omitted
	// from API requests. See
	// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
	NullFields []string `json:"-"`
}

WrappingPublicKey: The public key component of the wrapping key. For details of the type of key this public key corresponds to, see the ImportMethod.

func (WrappingPublicKey) MarshalJSON added in v0.8.0

func (s WrappingPublicKey) MarshalJSON() ([]byte, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL