blob: 266bb2edfbfb6b8d0f0a8ffc4a7c2bea59137a78 [file] [log] [blame]
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -04001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070075<h1><a href="cloudkms_v1.html">Cloud Key Management Service (KMS) API</a> . <a href="cloudkms_v1.projects.html">projects</a> . <a href="cloudkms_v1.projects.locations.html">locations</a> . <a href="cloudkms_v1.projects.locations.keyRings.html">keyRings</a> . <a href="cloudkms_v1.projects.locations.keyRings.cryptoKeys.html">cryptoKeys</a> . <a href="cloudkms_v1.projects.locations.keyRings.cryptoKeys.cryptoKeyVersions.html">cryptoKeyVersions</a></h1>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040076<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#asymmetricDecrypt">asymmetricDecrypt(name, body=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -070079<p class="firstline">Decrypts data that was encrypted with a public key retrieved from GetPublicKey corresponding to a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_DECRYPT.</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070080<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070081 <code><a href="#asymmetricSign">asymmetricSign(name, body=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -070082<p class="firstline">Signs data using a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_SIGN, producing a signature that can be verified with the public key retrieved from GetPublicKey.</p>
83<p class="toc_element">
84 <code><a href="#close">close()</a></code></p>
85<p class="firstline">Close httplib2 connections.</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070086<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070087 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -070088<p class="firstline">Create a new CryptoKeyVersion in a CryptoKey. The server will assign the next sequential id. If unset, state will be set to ENABLED.</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040089<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070090 <code><a href="#destroy">destroy(name, body=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -070091<p class="firstline">Schedule a CryptoKeyVersion for destruction. Upon calling this method, CryptoKeyVersion.state will be set to DESTROY_SCHEDULED and destroy_time will be set to a time 24 hours in the future, at which point the state will be changed to DESTROYED, and the key material will be irrevocably destroyed. Before the destroy_time is reached, RestoreCryptoKeyVersion may be called to reverse the process.</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -040092<p class="toc_element">
93 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
94<p class="firstline">Returns metadata for a given CryptoKeyVersion.</p>
95<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070096 <code><a href="#getPublicKey">getPublicKey(name, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -070097<p class="firstline">Returns the public key for the given CryptoKeyVersion. The CryptoKey.purpose must be ASYMMETRIC_SIGN or ASYMMETRIC_DECRYPT.</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070098<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070099 <code><a href="#import_">import_(parent, body=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700100<p class="firstline">Imports a new CryptoKeyVersion into an existing CryptoKey using the wrapped key material provided in the request. The version ID will be assigned the next sequential id within the CryptoKey.</p>
Dan O'Mearadd494642020-05-01 07:42:23 -0700101<p class="toc_element">
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800102 <code><a href="#list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)</a></code></p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400103<p class="firstline">Lists CryptoKeyVersions.</p>
104<p class="toc_element">
105 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
106<p class="firstline">Retrieves the next page of results.</p>
107<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -0700108 <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700109<p class="firstline">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.</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400110<p class="toc_element">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700111 <code><a href="#restore">restore(name, body=None, x__xgafv=None)</a></code></p>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700112<p class="firstline">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.</p>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400113<h3>Method Details</h3>
114<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700115 <code class="details" id="asymmetricDecrypt">asymmetricDecrypt(name, body=None, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700116 <pre>Decrypts data that was encrypted with a public key retrieved from GetPublicKey corresponding to a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_DECRYPT.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700117
118Args:
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700119 name: string, Required. The resource name of the CryptoKeyVersion to use for decryption. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700120 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700121 The object takes the form of:
122
123{ # Request message for KeyManagementService.AsymmetricDecrypt.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800124 &quot;ciphertext&quot;: &quot;A String&quot;, # Required. The data encrypted with the named CryptoKeyVersion&#x27;s public key using OAEP.
125 &quot;ciphertextCrc32c&quot;: &quot;A String&quot;, # 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. NOTE: This field is in Beta.
126}
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700127
128 x__xgafv: string, V1 error format.
129 Allowed values
130 1 - v1 error format
131 2 - v2 error format
132
133Returns:
134 An object of the form:
135
136 { # Response message for KeyManagementService.AsymmetricDecrypt.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800137 &quot;plaintext&quot;: &quot;A String&quot;, # The decrypted data originally encrypted with the matching public key.
138 &quot;plaintextCrc32c&quot;: &quot;A String&quot;, # 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. NOTE: This field is in Beta.
yoshi-code-botb6dc1b92021-03-02 11:49:08 -0800139 &quot;protectionLevel&quot;: &quot;A String&quot;, # The ProtectionLevel of the CryptoKeyVersion used in decryption.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800140 &quot;verifiedCiphertextCrc32c&quot;: True or False, # 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&#x27;ve set AsymmetricDecryptRequest.ciphertext_crc32c but this field is still false, discard the response and perform a limited number of retries. NOTE: This field is in Beta.
141}</pre>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700142</div>
143
144<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700145 <code class="details" id="asymmetricSign">asymmetricSign(name, body=None, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700146 <pre>Signs data using a CryptoKeyVersion with CryptoKey.purpose ASYMMETRIC_SIGN, producing a signature that can be verified with the public key retrieved from GetPublicKey.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700147
148Args:
149 name: string, Required. The resource name of the CryptoKeyVersion to use for signing. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700150 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700151 The object takes the form of:
152
153{ # Request message for KeyManagementService.AsymmetricSign.
yoshi-code-botb6dc1b92021-03-02 11:49:08 -0800154 &quot;digest&quot;: { # A Digest holds a cryptographic message 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&#x27;s algorithm.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800155 &quot;sha256&quot;: &quot;A String&quot;, # A message digest produced with the SHA-256 algorithm.
156 &quot;sha384&quot;: &quot;A String&quot;, # A message digest produced with the SHA-384 algorithm.
157 &quot;sha512&quot;: &quot;A String&quot;, # A message digest produced with the SHA-512 algorithm.
158 },
159 &quot;digestCrc32c&quot;: &quot;A String&quot;, # 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. NOTE: This field is in Beta.
160}
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700161
162 x__xgafv: string, V1 error format.
163 Allowed values
164 1 - v1 error format
165 2 - v2 error format
166
167Returns:
168 An object of the form:
169
170 { # Response message for KeyManagementService.AsymmetricSign.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800171 &quot;name&quot;: &quot;A String&quot;, # The resource name of the CryptoKeyVersion used for signing. Check this field to verify that the intended resource was used for signing. NOTE: This field is in Beta.
yoshi-code-botb6dc1b92021-03-02 11:49:08 -0800172 &quot;protectionLevel&quot;: &quot;A String&quot;, # The ProtectionLevel of the CryptoKeyVersion used for signing.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800173 &quot;signature&quot;: &quot;A String&quot;, # The created signature.
174 &quot;signatureCrc32c&quot;: &quot;A String&quot;, # 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. NOTE: This field is in Beta.
175 &quot;verifiedDigestCrc32c&quot;: True or False, # 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&#x27;ve set AsymmetricSignRequest.digest_crc32c but this field is still false, discard the response and perform a limited number of retries. NOTE: This field is in Beta.
176}</pre>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700177</div>
178
179<div class="method">
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700180 <code class="details" id="close">close()</code>
181 <pre>Close httplib2 connections.</pre>
182</div>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400183
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700184<div class="method">
185 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
186 <pre>Create a new CryptoKeyVersion in a CryptoKey. The server will assign the next sequential id. If unset, state will be set to ENABLED.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400187
188Args:
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700189 parent: string, Required. The name of the CryptoKey associated with the CryptoKeyVersions. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700190 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400191 The object takes the form of:
192
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700193{ # 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.
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800194 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700195 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700196 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800197 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
Bu Sun Kim673ec5c2020-11-16 11:05:03 -0700198 &quot;A String&quot;,
199 ],
Yoshi Automation Botc2228be2020-11-24 15:48:03 -0800200 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
201 &quot;A String&quot;,
202 ],
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800203 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
204 &quot;A String&quot;,
205 ],
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700206 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800207 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
208 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700209 },
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800210 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800211 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
212 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800213 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
214 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
215 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800216 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800217 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800218 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
219 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
220 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
221 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
222 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400223}
224
225 x__xgafv: string, V1 error format.
226 Allowed values
227 1 - v1 error format
228 2 - v2 error format
229
230Returns:
231 An object of the form:
232
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700233 { # 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800234 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
235 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
236 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
237 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
238 &quot;A String&quot;,
239 ],
240 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
241 &quot;A String&quot;,
242 ],
243 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
244 &quot;A String&quot;,
245 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700246 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800247 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
248 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
249 },
250 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
251 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
252 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
253 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
254 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
255 },
256 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
257 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
258 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
259 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
260 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
261 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
262 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
263}</pre>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400264</div>
265
266<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700267 <code class="details" id="destroy">destroy(name, body=None, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700268 <pre>Schedule a CryptoKeyVersion for destruction. Upon calling this method, CryptoKeyVersion.state will be set to DESTROY_SCHEDULED and destroy_time will be set to a time 24 hours in the future, at which point the state will be changed to DESTROYED, and the key material will be irrevocably destroyed. Before the destroy_time is reached, RestoreCryptoKeyVersion may be called to reverse the process.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400269
270Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700271 name: string, Required. The resource name of the CryptoKeyVersion to destroy. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700272 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400273 The object takes the form of:
274
275{ # Request message for KeyManagementService.DestroyCryptoKeyVersion.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800276}
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400277
278 x__xgafv: string, V1 error format.
279 Allowed values
280 1 - v1 error format
281 2 - v2 error format
282
283Returns:
284 An object of the form:
285
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700286 { # 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800287 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
288 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
289 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
290 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
291 &quot;A String&quot;,
292 ],
293 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
294 &quot;A String&quot;,
295 ],
296 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
297 &quot;A String&quot;,
298 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700299 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800300 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
301 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
302 },
303 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
304 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
305 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
306 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
307 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
308 },
309 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
310 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
311 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
312 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
313 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
314 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
315 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
316}</pre>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400317</div>
318
319<div class="method">
320 <code class="details" id="get">get(name, x__xgafv=None)</code>
321 <pre>Returns metadata for a given CryptoKeyVersion.
322
323Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700324 name: string, Required. The name of the CryptoKeyVersion to get. (required)
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400325 x__xgafv: string, V1 error format.
326 Allowed values
327 1 - v1 error format
328 2 - v2 error format
329
330Returns:
331 An object of the form:
332
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700333 { # 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800334 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
335 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
336 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
337 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
338 &quot;A String&quot;,
339 ],
340 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
341 &quot;A String&quot;,
342 ],
343 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
344 &quot;A String&quot;,
345 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700346 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800347 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
348 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
349 },
350 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
351 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
352 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
353 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
354 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
355 },
356 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
357 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
358 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
359 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
360 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
361 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
362 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
363}</pre>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400364</div>
365
366<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700367 <code class="details" id="getPublicKey">getPublicKey(name, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700368 <pre>Returns the public key for the given CryptoKeyVersion. The CryptoKey.purpose must be ASYMMETRIC_SIGN or ASYMMETRIC_DECRYPT.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700369
370Args:
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700371 name: string, Required. The name of the CryptoKeyVersion public key to get. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700372 x__xgafv: string, V1 error format.
373 Allowed values
374 1 - v1 error format
375 2 - v2 error format
376
377Returns:
378 An object of the form:
379
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700380 { # The public key for a given CryptoKeyVersion. Obtained via GetPublicKey.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800381 &quot;algorithm&quot;: &quot;A String&quot;, # The Algorithm associated with this key.
382 &quot;name&quot;: &quot;A String&quot;, # The name of the CryptoKeyVersion public key. Provided here for verification. NOTE: This field is in Beta.
383 &quot;pem&quot;: &quot;A String&quot;, # 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).
384 &quot;pemCrc32c&quot;: &quot;A String&quot;, # 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.
yoshi-code-botb6dc1b92021-03-02 11:49:08 -0800385 &quot;protectionLevel&quot;: &quot;A String&quot;, # The ProtectionLevel of the CryptoKeyVersion public key.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800386}</pre>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700387</div>
388
389<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700390 <code class="details" id="import_">import_(parent, body=None, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700391 <pre>Imports a new CryptoKeyVersion into an existing CryptoKey using the wrapped key material provided in the request. The version ID will be assigned the next sequential id within the CryptoKey.
Dan O'Mearadd494642020-05-01 07:42:23 -0700392
393Args:
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700394 parent: string, Required. The name of the CryptoKey to be imported into. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700395 body: object, The request body.
396 The object takes the form of:
397
398{ # Request message for KeyManagementService.ImportCryptoKeyVersion.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800399 &quot;algorithm&quot;: &quot;A String&quot;, # Required. The algorithm of the key being imported. This does not need to match the version_template of the CryptoKey this version imports into.
400 &quot;importJob&quot;: &quot;A String&quot;, # Required. The name of the ImportJob that was used to wrap this key material.
401 &quot;rsaAesWrappedKey&quot;: &quot;A String&quot;, # Wrapped key material produced with RSA_OAEP_3072_SHA1_AES_256 or RSA_OAEP_4096_SHA1_AES_256. This field contains the concatenation of two wrapped keys: 1. An ephemeral AES-256 wrapping key wrapped with the public_key using RSAES-OAEP with SHA-1, MGF1 with SHA-1, and an empty label. 2. The key to be imported, wrapped with the ephemeral AES-256 key using AES-KWP (RFC 5649). If importing symmetric key material, it is expected that the unwrapped key contains plain bytes. If importing asymmetric key material, it is expected that the unwrapped key is in PKCS#8-encoded DER format (the PrivateKeyInfo structure from RFC 5208). This format is the same as the format produced by PKCS#11 mechanism CKM_RSA_AES_KEY_WRAP.
402}
Dan O'Mearadd494642020-05-01 07:42:23 -0700403
404 x__xgafv: string, V1 error format.
405 Allowed values
406 1 - v1 error format
407 2 - v2 error format
408
409Returns:
410 An object of the form:
411
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700412 { # 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800413 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
414 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
415 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
416 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
417 &quot;A String&quot;,
418 ],
419 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
420 &quot;A String&quot;,
421 ],
422 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
423 &quot;A String&quot;,
424 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700425 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800426 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
427 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
428 },
429 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
430 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
431 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
432 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
433 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
434 },
435 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
436 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
437 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
438 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
439 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
440 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
441 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
442}</pre>
Dan O'Mearadd494642020-05-01 07:42:23 -0700443</div>
444
445<div class="method">
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800446 <code class="details" id="list">list(parent, filter=None, orderBy=None, pageSize=None, pageToken=None, view=None, x__xgafv=None)</code>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400447 <pre>Lists CryptoKeyVersions.
448
449Args:
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700450 parent: string, Required. The resource name of the CryptoKey to list, in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*`. (required)
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800451 filter: string, Optional. 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).
452 orderBy: string, Optional. 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).
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800453 pageSize: integer, Optional. 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800454 pageToken: string, Optional. Optional pagination token, returned earlier via ListCryptoKeyVersionsResponse.next_page_token.
Bu Sun Kim65020912020-05-20 12:08:20 -0700455 view: string, The fields to include in the response.
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700456 Allowed values
457 CRYPTO_KEY_VERSION_VIEW_UNSPECIFIED - Default view for each CryptoKeyVersion. Does not include the attestation field.
458 FULL - Provides all fields in each CryptoKeyVersion, including the attestation.
Bu Sun Kim65020912020-05-20 12:08:20 -0700459 x__xgafv: string, V1 error format.
460 Allowed values
461 1 - v1 error format
462 2 - v2 error format
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400463
464Returns:
465 An object of the form:
466
467 { # Response message for KeyManagementService.ListCryptoKeyVersions.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800468 &quot;cryptoKeyVersions&quot;: [ # The list of CryptoKeyVersions.
469 { # 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.
470 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
471 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
472 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
473 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
474 &quot;A String&quot;,
475 ],
476 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
477 &quot;A String&quot;,
478 ],
479 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
480 &quot;A String&quot;,
481 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700482 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800483 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
484 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400485 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800486 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
487 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
488 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
489 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
490 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
491 },
492 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
493 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
494 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
495 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
496 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
497 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
498 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
499 },
500 ],
501 &quot;nextPageToken&quot;: &quot;A String&quot;, # A token to retrieve next page of results. Pass this value in ListCryptoKeyVersionsRequest.page_token to retrieve the next page of results.
502 &quot;totalSize&quot;: 42, # The total number of CryptoKeyVersions that matched the query.
503}</pre>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400504</div>
505
506<div class="method">
507 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
508 <pre>Retrieves the next page of results.
509
510Args:
511 previous_request: The request for the previous page. (required)
512 previous_response: The response from the request for the previous page. (required)
513
514Returns:
Bu Sun Kim65020912020-05-20 12:08:20 -0700515 A request object that you can call &#x27;execute()&#x27; on to request the next
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400516 page. Returns None if there are no more items in the collection.
517 </pre>
518</div>
519
520<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700521 <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700522 <pre>Update a CryptoKeyVersion&#x27;s metadata. state may be changed between ENABLED and DISABLED using this method. See DestroyCryptoKeyVersion and RestoreCryptoKeyVersion to move between other states.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400523
524Args:
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700525 name: string, Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700526 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400527 The object takes the form of:
528
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700529{ # 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.
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800530 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700531 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700532 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800533 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
Bu Sun Kim673ec5c2020-11-16 11:05:03 -0700534 &quot;A String&quot;,
535 ],
Yoshi Automation Botc2228be2020-11-24 15:48:03 -0800536 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
537 &quot;A String&quot;,
538 ],
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800539 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
540 &quot;A String&quot;,
541 ],
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700542 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800543 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
544 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700545 },
Yoshi Automation Bot0bf565c2020-12-09 08:56:03 -0800546 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800547 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
548 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800549 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
550 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
551 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800552 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
Yoshi Automation Botb6971b02020-11-26 17:16:03 -0800553 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800554 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
555 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
556 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
557 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
558 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400559}
560
Dan O'Mearadd494642020-05-01 07:42:23 -0700561 updateMask: string, Required. List of fields to be updated in this request.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400562 x__xgafv: string, V1 error format.
563 Allowed values
564 1 - v1 error format
565 2 - v2 error format
566
567Returns:
568 An object of the form:
569
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700570 { # 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800571 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
572 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
573 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
574 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
575 &quot;A String&quot;,
576 ],
577 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
578 &quot;A String&quot;,
579 ],
580 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
581 &quot;A String&quot;,
582 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700583 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800584 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
585 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
586 },
587 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
588 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
589 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
590 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
591 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
592 },
593 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
594 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
595 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
596 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
597 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
598 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
599 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
600}</pre>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400601</div>
602
603<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700604 <code class="details" id="restore">restore(name, body=None, x__xgafv=None)</code>
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700605 <pre>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.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400606
607Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700608 name: string, Required. The resource name of the CryptoKeyVersion to restore. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700609 body: object, The request body.
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400610 The object takes the form of:
611
612{ # Request message for KeyManagementService.RestoreCryptoKeyVersion.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800613}
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400614
615 x__xgafv: string, V1 error format.
616 Allowed values
617 1 - v1 error format
618 2 - v2 error format
619
620Returns:
621 An object of the form:
622
Dmitry Frenkel3e17f892020-10-06 16:46:05 -0700623 { # 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.
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800624 &quot;algorithm&quot;: &quot;A String&quot;, # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
625 &quot;attestation&quot;: { # Contains an HSM-generated attestation about a key operation. For more information, see [Verifying attestations] (https://cloud.google.com/kms/docs/attest-key). # 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.
626 &quot;certChains&quot;: { # 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. # Output only. The certificate chains needed to validate the attestation
627 &quot;caviumCerts&quot;: [ # Cavium certificate chain corresponding to the attestation.
628 &quot;A String&quot;,
629 ],
630 &quot;googleCardCerts&quot;: [ # Google card certificate chain corresponding to the attestation.
631 &quot;A String&quot;,
632 ],
633 &quot;googlePartitionCerts&quot;: [ # Google partition certificate chain corresponding to the attestation.
634 &quot;A String&quot;,
635 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700636 },
Yoshi Automation Botcc94ec82021-01-15 07:10:04 -0800637 &quot;content&quot;: &quot;A String&quot;, # Output only. The attestation data provided by the HSM when the key operation was performed.
638 &quot;format&quot;: &quot;A String&quot;, # Output only. The format of the attestation data.
639 },
640 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion was created.
641 &quot;destroyEventTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was destroyed. Only present if state is DESTROYED.
642 &quot;destroyTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material is scheduled for destruction. Only present if state is DESTROY_SCHEDULED.
643 &quot;externalProtectionLevelOptions&quot;: { # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level. # ExternalProtectionLevelOptions stores a group of additional fields for configuring a CryptoKeyVersion that are specific to the EXTERNAL protection level.
644 &quot;externalKeyUri&quot;: &quot;A String&quot;, # The URI for an external resource that this CryptoKeyVersion represents.
645 },
646 &quot;generateTime&quot;: &quot;A String&quot;, # Output only. The time this CryptoKeyVersion&#x27;s key material was generated.
647 &quot;importFailureReason&quot;: &quot;A String&quot;, # Output only. The root cause of an import failure. Only present if state is IMPORT_FAILED.
648 &quot;importJob&quot;: &quot;A String&quot;, # Output only. The name of the ImportJob used to import this CryptoKeyVersion. Only present if the underlying key material was imported.
649 &quot;importTime&quot;: &quot;A String&quot;, # Output only. The time at which this CryptoKeyVersion&#x27;s key material was imported.
650 &quot;name&quot;: &quot;A String&quot;, # Output only. The resource name for this CryptoKeyVersion in the format `projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
651 &quot;protectionLevel&quot;: &quot;A String&quot;, # Output only. The ProtectionLevel describing how crypto operations are performed with this CryptoKeyVersion.
652 &quot;state&quot;: &quot;A String&quot;, # The current state of the CryptoKeyVersion.
653}</pre>
Sai Cheemalapatic30d2b52017-03-13 12:12:03 -0400654</div>
655
656</body></html>