Se utilizzi librerie gRPC create manualmente per effettuare chiamate a Cloud Key Management Service, devi specificare un valore x-google-request-params
nei metadati o nell'intestazione della chiamata. L'uso corretto di x-google-request-params
indirizzerà la chiamata alla regione appropriata per le tue risorse Cloud KMS.
Imposta il valore x-google-request-params
su un campo nella richiesta del metodo come mostrato nella tabella seguente.
Impostazione del campo della richiesta
Gli esempi seguenti mostrano dove specificare il nome della risorsa in vari metodi. Sostituisci il testo in stile place-holder con i valori effettivi utilizzati negli ID risorsa Cloud KMS.
Esempio di decrittografia
Se effettui una chiamata a Decripta, devi compilare i seguenti campi nella richiesta:
name: 'projects/project-id/locations/location/keyRings/key-ring/cryptoKeys/key-name/' ciphertext: 'iQALWM/r6alAxQm0VQe3...'
Il valore assegnato al campo name
è il nome della risorsa della tua CryptoKey.
Per instradare correttamente la chiamata, devi includere questo nome risorsa anche nei metadati della chiamata, nel seguente formato:
x-goog-request-params: 'name=projects/project-id/locations/location/keyRings/key-ring/cryptoKeys/key-name/'
Esempio di CreateKeyRing
Se effettui una chiamata a CreateKeyRing, devi compilare i seguenti campi nella richiesta:
parent: 'projects/project-id/locations/location/' key_ring_id: 'myKeyRing' ...
I metadati della chiamata devono contenere anche il nome della risorsa parent
:
x-goog-request-params: 'parent=projects/project-id/locations/location/'
Esempio di UpdateCryptoKey
Se effettui una chiamata a UpdateCryptoKey, devi compilare i seguenti campi nella richiesta:
name: 'projects/project-id/locations/location/keyRings/key-ring/cryptoKeys/key-name/' field_mask: ...
I metadati devono contenere anche il nome della risorsa name
. Tieni presente che il formato utilizza crypto_key.name=
, non name=
:
x-goog-request-params: 'crypto_key.name=projects/project-id/locations/location/keyRings/key-ring/cryptoKeys/key-name/'
Aggiunta di metadati utilizzando C++
Se utilizzi C++, chiama ClientContext::AddMetadata
prima di effettuare la chiamata RPC per aggiungere le informazioni appropriate ai metadati della chiamata.
Ad esempio, se aggiungi metadati per una chiamata a Decripta:
context.AddMetadata("x-goog-request-params", "name=projects/project-id/locations/location/keyRings/key-ring-name/cryptoKeys/key-name/");
Puoi quindi passare il contesto alla chiamata del metodo come di consueto, insieme ai buffer del protocollo di richiesta e risposta.