KMSKeyHandle


Property Value
Google Cloud Service Name Cloud Key Management Service
Google Cloud Service Documentation /kms/docs/
Google Cloud REST Resource Name v1.projects.locations.keyHandles
Google Cloud REST Resource Documentation /kms/docs/reference/rest/v1/projects.locations.keyHandles
Config Connector Resource Short Names gcpkmskeyhandle
gcpkmskeyhandles
kmskeyhandle
Config Connector Service Name cloudkms.googleapis.com
Config Connector Resource Fully Qualified Name kmskeyhandles.kms.cnrm.cloud.google.com
Can Be Referenced by IAMPolicy/IAMPolicyMember No
Config Connector Default Average Reconcile Interval In Seconds 600

Custom Resource Definition Properties

Spec

Schema

location: string
projectRef:
  external: string
  kind: string
  name: string
  namespace: string
resourceID: string
resourceTypeSelector: string
Fields

location

Optional

string

Location name to create KeyHandle

projectRef

Optional

object

Project hosting KMSKeyHandle

projectRef.external

Optional

string

The `projectID` field of a project, when not managed by Config Connector.

projectRef.kind

Optional

string

The kind of the Project resource; optional but must be `Project` if provided.

projectRef.name

Optional

string

The `name` field of a `Project` resource.

projectRef.namespace

Optional

string

The `namespace` field of a `Project` resource.

resourceID

Optional

string

Immutable. The KMS Key Handle ID used for resource creation or acquisition. For creation: If specified, this value is used as the key handle ID. If not provided, a UUID will be generated and assigned as the key handle ID. For acquisition: This field must be provided to identify the key handle resource to acquire.

resourceTypeSelector

Optional

string

Indicates the resource type that the resulting [CryptoKey][] is meant to protect, e.g. `{SERVICE}.googleapis.com/{TYPE}`. See documentation for supported resource types https://cloud.google.com/kms/docs/autokey-overview#compatible-services.

Status

Schema

conditions:
- lastTransitionTime: string
  message: string
  reason: string
  status: string
  type: string
externalRef: string
observedGeneration: integer
observedState:
  kmsKey: string
Fields
conditions

list (object)

Conditions represent the latest available observations of the object's current state.

conditions[]

object

conditions[].lastTransitionTime

string

Last time the condition transitioned from one status to another.

conditions[].message

string

Human-readable message indicating details about last transition.

conditions[].reason

string

Unique, one-word, CamelCase reason for the condition's last transition.

conditions[].status

string

Status is the status of the condition. Can be True, False, Unknown.

conditions[].type

string

Type is the type of the condition.

externalRef

string

A unique specifier for the KMSKeyHandle resource in GCP.

observedGeneration

integer

ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.

observedState

object

ObservedState is the state of the resource as most recently observed in GCP.

observedState.kmsKey

string

Sample YAML(s)

Typical Use Case

# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

apiVersion: kms.cnrm.cloud.google.com/v1beta1
kind: KMSKeyHandle
metadata:
  name: kmskeyhandle-sample
spec:
  projectRef:
    # Replace ${PROJECT_ID?} with resource project ID where you want to create resource like bucket, compute disk, etc. protected by autokey.
    external: "${PROJECT_ID?}"
  location: us-central1
  resourceTypeSelector: compute.googleapis.com/Disk