A API Key Management Service (KMS) usa recursos personalizados do Kubernetes para gerir o ciclo de vida das chaves criptográficas.
Para usar a API KMS, use a consola GDC. Se a sua aplicação usar as suas próprias bibliotecas para chamar a API, adote o ponto final do serviço de exemplo na secção seguinte e as definições completas da API para criar os seus pedidos:
Ponto final do serviço e documento de descoberta
As APIs KMS são fornecidas em dois pacotes, consoante a implementação zonal ou a implementação global.
Os pontos finais da API para as APIs KMS zonais e globais são os seguintes, respectivamente:
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/kms.gdc.goog/v1
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/kms.global.gdc.goog/v1
A variável MANAGEMENT_API_SERVER_ENDPOINT
é o ponto final do servidor da API Management.
Use o comando kubectl proxy
para aceder ao URL no seu navegador para obter o documento de descoberta da API KMS. O comando kubectl proxy
abre
um proxy em 127.0.0.1:8001
para o servidor da API Kubernetes na sua máquina
local. Depois de executar esse comando, aceda aos documentos nos seguintes URLs:
http://127.0.0.1:8001/apis/kms.gdc.goog/v1
http://127.0.0.1:8001/apis/kms.global.gdc.goog/v1
Exemplos de recursos
Seguem-se exemplos de recursos. O espaço de nomes é um espaço de nomes do projeto. Consulte a secção Crie uma chave na página Crie e elimine chaves para mais informações sobre a criação de chaves.
Recurso AEADKey
apiVersion: "kms.gdc.goog/v1"
kind: AEADKey
metadata:
name: my-test-key
namespace: user-kms-project
spec:
algorithm: AES_256_GCM
Recurso SigningKey
apiVersion: "kms.gdc.goog/v1"
kind: SigningKey
metadata:
name: my-test-key
namespace: user-kms-project
spec:
algorithm: EC_SIGN_P384_SHA384
Recurso KeyImport
apiVersion: "kms.gdc.goog/v1"
kind: KeyImport
metadata:
name: my-test-key-import
namespace: user-kms-project
spec:
context:
mechanism: ECDH_P521_AES256
Recurso KeyExport
apiVersion: "kms.gdc.goog/v1"
kind: KeyExport
metadata:
name: my-test-key-export
namespace: user-kms-project
spec:
context:
mechanism: ECDH_P521_AES256
publicKey: pub_key_from_import
keyToExport:
kind: AEADKey
name: key_name_to_export
Recurso RotationJob
apiVersion: "kms.gdc.goog/v1"
kind: RotationJob
metadata:
name: my-test-rotate-job
spec:
rootKeyResourceName: namespaces/kms-system/secrets/kms-key-ctm-root
Recurso MZAEADKey
apiVersion: "kms.global.gdc.goog/v1"
kind: MZAEADKey
metadata:
name: my-test-mz-key
namespace: user-kms-project
spec:
algorithm: AES_256_GCM