google-cloud-confidential_computing-v1 2.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/google/cloud/confidential_computing/v1/confidential_computing/client.rb +10 -3
- data/lib/google/cloud/confidential_computing/v1/confidential_computing/rest/client.rb +10 -3
- data/lib/google/cloud/confidential_computing/v1/version.rb +1 -1
- data/lib/google/cloud/confidentialcomputing/v1/service_pb.rb +9 -1
- data/proto_docs/google/cloud/confidentialcomputing/v1/service.rb +139 -0
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4d4e214f444ba28cc6a3fbbdd302b7f4c299a2790724c05693fb30c2f8bf6e59
|
|
4
|
+
data.tar.gz: 975488fa240926f1aab5fe5f56336fd05af8cbb0049a08496b633d8be1a08375
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cc59ff125e729c59088497d7bf5ad8dc927cac69a995b9b969ed25b80b04733dd9bd9b2677bce37201b98232989ed666cf9185e5f23ff15b1559f930f609ac1a
|
|
7
|
+
data.tar.gz: 881d1872cf1cd2b81355d4bbc09ba97d18bf5accbb7f57c714b67d93a1035bbb181a9da4b0fb2732b02d7042d9204f820d00e70a0bb8c534c99bb66639956c88
|
|
@@ -324,7 +324,7 @@ module Google
|
|
|
324
324
|
# @param options [::Gapic::CallOptions, ::Hash]
|
|
325
325
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
|
326
326
|
#
|
|
327
|
-
# @overload verify_attestation(td_ccel: nil, sev_snp_attestation: nil, challenge: nil, gcp_credentials: nil, tpm_attestation: nil, confidential_space_info: nil, token_options: nil, attester: nil)
|
|
327
|
+
# @overload verify_attestation(td_ccel: nil, sev_snp_attestation: nil, nvidia_attestation: nil, challenge: nil, gcp_credentials: nil, tpm_attestation: nil, confidential_space_info: nil, token_options: nil, attester: nil)
|
|
328
328
|
# Pass arguments to `verify_attestation` via keyword arguments. Note that at
|
|
329
329
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
|
330
330
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
|
@@ -337,6 +337,8 @@ module Google
|
|
|
337
337
|
# Optional. An SEV-SNP Attestation Report.
|
|
338
338
|
#
|
|
339
339
|
# Note: The following parameters are mutually exclusive: `sev_snp_attestation`, `td_ccel`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
|
|
340
|
+
# @param nvidia_attestation [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation, ::Hash]
|
|
341
|
+
# Optional. An Nvidia attestation report for GPU and NVSwitch devices.
|
|
340
342
|
# @param challenge [::String]
|
|
341
343
|
# Required. The name of the Challenge whose nonce was used to generate the
|
|
342
344
|
# attestation, in the format `projects/*/locations/*/challenges/*`. The
|
|
@@ -434,7 +436,7 @@ module Google
|
|
|
434
436
|
# @param options [::Gapic::CallOptions, ::Hash]
|
|
435
437
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
|
436
438
|
#
|
|
437
|
-
# @overload verify_confidential_space(td_ccel: nil, tpm_attestation: nil, challenge: nil, gcp_credentials: nil, signed_entities: nil, gce_shielded_identity: nil, options: nil)
|
|
439
|
+
# @overload verify_confidential_space(td_ccel: nil, tpm_attestation: nil, challenge: nil, gcp_credentials: nil, signed_entities: nil, gce_shielded_identity: nil, options: nil, nvidia_attestation: nil)
|
|
438
440
|
# Pass arguments to `verify_confidential_space` via keyword arguments. Note that at
|
|
439
441
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
|
440
442
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
|
@@ -464,6 +466,9 @@ module Google
|
|
|
464
466
|
# this information in the attestation.
|
|
465
467
|
# @param options [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialSpaceRequest::ConfidentialSpaceOptions, ::Hash]
|
|
466
468
|
# Optional. A collection of fields that modify the token output.
|
|
469
|
+
# @param nvidia_attestation [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation, ::Hash]
|
|
470
|
+
# Optional. An optional Nvidia attestation report, used to populate hardware
|
|
471
|
+
# rooted claims for Nvidia devices.
|
|
467
472
|
#
|
|
468
473
|
# @yield [response, operation] Access the result along with the RPC operation
|
|
469
474
|
# @yieldparam response [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialSpaceResponse]
|
|
@@ -543,7 +548,7 @@ module Google
|
|
|
543
548
|
# @param options [::Gapic::CallOptions, ::Hash]
|
|
544
549
|
# Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
|
|
545
550
|
#
|
|
546
|
-
# @overload verify_confidential_gke(tpm_attestation: nil, challenge: nil)
|
|
551
|
+
# @overload verify_confidential_gke(tpm_attestation: nil, challenge: nil, options: nil)
|
|
547
552
|
# Pass arguments to `verify_confidential_gke` via keyword arguments. Note that at
|
|
548
553
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
|
549
554
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
|
@@ -555,6 +560,8 @@ module Google
|
|
|
555
560
|
# Required. The name of the Challenge whose nonce was used to generate the
|
|
556
561
|
# attestation, in the format projects/*/locations/*/challenges/*. The
|
|
557
562
|
# provided Challenge will be consumed, and cannot be used again.
|
|
563
|
+
# @param options [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialGkeRequest::ConfidentialGkeOptions, ::Hash]
|
|
564
|
+
# Optional. A collection of fields that modify the token output.
|
|
558
565
|
#
|
|
559
566
|
# @yield [response, operation] Access the result along with the RPC operation
|
|
560
567
|
# @yieldparam response [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialGkeResponse]
|
|
@@ -311,7 +311,7 @@ module Google
|
|
|
311
311
|
# @param options [::Gapic::CallOptions, ::Hash]
|
|
312
312
|
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
|
|
313
313
|
#
|
|
314
|
-
# @overload verify_attestation(td_ccel: nil, sev_snp_attestation: nil, challenge: nil, gcp_credentials: nil, tpm_attestation: nil, confidential_space_info: nil, token_options: nil, attester: nil)
|
|
314
|
+
# @overload verify_attestation(td_ccel: nil, sev_snp_attestation: nil, nvidia_attestation: nil, challenge: nil, gcp_credentials: nil, tpm_attestation: nil, confidential_space_info: nil, token_options: nil, attester: nil)
|
|
315
315
|
# Pass arguments to `verify_attestation` via keyword arguments. Note that at
|
|
316
316
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
|
317
317
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
|
@@ -324,6 +324,8 @@ module Google
|
|
|
324
324
|
# Optional. An SEV-SNP Attestation Report.
|
|
325
325
|
#
|
|
326
326
|
# Note: The following parameters are mutually exclusive: `sev_snp_attestation`, `td_ccel`. At most one of these parameters can be set. If more than one is set, only one will be used, and it is not defined which one.
|
|
327
|
+
# @param nvidia_attestation [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation, ::Hash]
|
|
328
|
+
# Optional. An Nvidia attestation report for GPU and NVSwitch devices.
|
|
327
329
|
# @param challenge [::String]
|
|
328
330
|
# Required. The name of the Challenge whose nonce was used to generate the
|
|
329
331
|
# attestation, in the format `projects/*/locations/*/challenges/*`. The
|
|
@@ -414,7 +416,7 @@ module Google
|
|
|
414
416
|
# @param options [::Gapic::CallOptions, ::Hash]
|
|
415
417
|
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
|
|
416
418
|
#
|
|
417
|
-
# @overload verify_confidential_space(td_ccel: nil, tpm_attestation: nil, challenge: nil, gcp_credentials: nil, signed_entities: nil, gce_shielded_identity: nil, options: nil)
|
|
419
|
+
# @overload verify_confidential_space(td_ccel: nil, tpm_attestation: nil, challenge: nil, gcp_credentials: nil, signed_entities: nil, gce_shielded_identity: nil, options: nil, nvidia_attestation: nil)
|
|
418
420
|
# Pass arguments to `verify_confidential_space` via keyword arguments. Note that at
|
|
419
421
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
|
420
422
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
|
@@ -444,6 +446,9 @@ module Google
|
|
|
444
446
|
# this information in the attestation.
|
|
445
447
|
# @param options [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialSpaceRequest::ConfidentialSpaceOptions, ::Hash]
|
|
446
448
|
# Optional. A collection of fields that modify the token output.
|
|
449
|
+
# @param nvidia_attestation [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation, ::Hash]
|
|
450
|
+
# Optional. An optional Nvidia attestation report, used to populate hardware
|
|
451
|
+
# rooted claims for Nvidia devices.
|
|
447
452
|
# @yield [result, operation] Access the result along with the TransportOperation object
|
|
448
453
|
# @yieldparam result [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialSpaceResponse]
|
|
449
454
|
# @yieldparam operation [::Gapic::Rest::TransportOperation]
|
|
@@ -516,7 +521,7 @@ module Google
|
|
|
516
521
|
# @param options [::Gapic::CallOptions, ::Hash]
|
|
517
522
|
# Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
|
|
518
523
|
#
|
|
519
|
-
# @overload verify_confidential_gke(tpm_attestation: nil, challenge: nil)
|
|
524
|
+
# @overload verify_confidential_gke(tpm_attestation: nil, challenge: nil, options: nil)
|
|
520
525
|
# Pass arguments to `verify_confidential_gke` via keyword arguments. Note that at
|
|
521
526
|
# least one keyword argument is required. To specify no parameters, or to keep all
|
|
522
527
|
# the default parameter values, pass an empty Hash as a request object (see above).
|
|
@@ -528,6 +533,8 @@ module Google
|
|
|
528
533
|
# Required. The name of the Challenge whose nonce was used to generate the
|
|
529
534
|
# attestation, in the format projects/*/locations/*/challenges/*. The
|
|
530
535
|
# provided Challenge will be consumed, and cannot be used again.
|
|
536
|
+
# @param options [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialGkeRequest::ConfidentialGkeOptions, ::Hash]
|
|
537
|
+
# Optional. A collection of fields that modify the token output.
|
|
531
538
|
# @yield [result, operation] Access the result along with the TransportOperation object
|
|
532
539
|
# @yieldparam result [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialGkeResponse]
|
|
533
540
|
# @yieldparam operation [::Gapic::Rest::TransportOperation]
|
|
@@ -12,7 +12,7 @@ require 'google/protobuf/timestamp_pb'
|
|
|
12
12
|
require 'google/rpc/status_pb'
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
descriptor_data = "\n3google/cloud/confidentialcomputing/v1/service.proto\x12%google.cloud.confidentialcomputing.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\xa5\x02\n\tChallenge\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0b\x65xpire_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x11\n\x04used\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x16\n\ttpm_nonce\x18\x06 \x01(\tB\x03\xe0\x41\x03:n\xea\x41k\n.confidentialcomputing.googleapis.com/Challenge\x12\x39projects/{project}/locations/{location}/challenges/{uuid}\"\x9d\x01\n\x16\x43reateChallengeRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12H\n\tchallenge\x18\x02 \x01(\x0b\x32\x30.google.cloud.confidentialcomputing.v1.ChallengeB\x03\xe0\x41\x02\"\x9f\x05\n\x18VerifyAttestationRequest\x12Q\n\x07td_ccel\x18\x06 \x01(\x0b\x32\x39.google.cloud.confidentialcomputing.v1.TdxCcelAttestationB\x03\xe0\x41\x01H\x00\x12\\\n\x13sev_snp_attestation\x18\x07 \x01(\x0b\x32\x38.google.cloud.confidentialcomputing.v1.SevSnpAttestationB\x03\xe0\x41\x01H\x00\x12I\n\tchallenge\x18\x01 \x01(\tB6\xe0\x41\x02\xfa\x41\x30\n.confidentialcomputing.googleapis.com/Challenge\x12S\n\x0fgcp_credentials\x18\x02 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.GcpCredentialsB\x03\xe0\x41\x01\x12S\n\x0ftpm_attestation\x18\x03 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.TpmAttestationB\x03\xe0\x41\x02\x12\x62\n\x17\x63onfidential_space_info\x18\x04 \x01(\x0b\x32<.google.cloud.confidentialcomputing.v1.ConfidentialSpaceInfoB\x03\xe0\x41\x01\x12O\n\rtoken_options\x18\x05 \x01(\x0b\x32\x33.google.cloud.confidentialcomputing.v1.TokenOptionsB\x03\xe0\x41\x01\x12\x15\n\x08\x61ttester\x18\x08 \x01(\tB\x03\xe0\x41\x01\x42\x11\n\x0ftee_attestation\"\x83\x01\n\x12TdxCcelAttestation\x12\x1c\n\x0f\x63\x63\x65l_acpi_table\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x16\n\tccel_data\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12 \n\x13\x63\x61nonical_event_log\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x15\n\x08td_quote\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x01\"?\n\x11SevSnpAttestation\x12\x13\n\x06report\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x15\n\x08\x61ux_blob\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\"l\n\x19VerifyAttestationResponse\x12\x1e\n\x11oidc_claims_token\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12/\n\x0epartial_errors\x18\x03 \x03(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\"3\n\x0eGcpCredentials\x12!\n\x19service_account_id_tokens\x18\x02 \x03(\t\"\x85\x02\n\x0cTokenOptions\x12i\n\x1a\x61ws_principal_tags_options\x18\x04 \x01(\x0b\x32>.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptionsB\x03\xe0\x41\x01H\x00\x12\x15\n\x08\x61udience\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05nonce\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12I\n\ntoken_type\x18\x03 \x01(\x0e\x32\x30.google.cloud.confidentialcomputing.v1.TokenTypeB\x03\xe0\x41\x01\x42\x14\n\x12token_type_options\"\xf6\x02\n\x17\x41wsPrincipalTagsOptions\x12x\n\x16\x61llowed_principal_tags\x18\x01 \x01(\x0b\x32S.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptions.AllowedPrincipalTagsB\x03\xe0\x41\x01\x1a\xe0\x01\n\x14\x41llowedPrincipalTags\x12\x95\x01\n\x1a\x63ontainer_image_signatures\x18\x01 \x01(\x0b\x32l.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptions.AllowedPrincipalTags.ContainerImageSignaturesB\x03\xe0\x41\x01\x1a\x30\n\x18\x43ontainerImageSignatures\x12\x14\n\x07key_ids\x18\x01 \x03(\tB\x03\xe0\x41\x01\"\x8f\x03\n\x0eTpmAttestation\x12K\n\x06quotes\x18\x01 \x03(\x0b\x32;.google.cloud.confidentialcomputing.v1.TpmAttestation.Quote\x12\x15\n\rtcg_event_log\x18\x02 \x01(\x0c\x12\x1b\n\x13\x63\x61nonical_event_log\x18\x03 \x01(\x0c\x12\x0f\n\x07\x61k_cert\x18\x04 \x01(\x0c\x12\x12\n\ncert_chain\x18\x05 \x03(\x0c\x1a\xd6\x01\n\x05Quote\x12\x11\n\thash_algo\x18\x01 \x01(\x05\x12^\n\npcr_values\x18\x02 \x03(\x0b\x32J.google.cloud.confidentialcomputing.v1.TpmAttestation.Quote.PcrValuesEntry\x12\x11\n\traw_quote\x18\x03 \x01(\x0c\x12\x15\n\rraw_signature\x18\x04 \x01(\x0c\x1a\x30\n\x0ePcrValuesEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x0c:\x02\x38\x01\"j\n\x15\x43onfidentialSpaceInfo\x12Q\n\x0fsigned_entities\x18\x01 \x03(\x0b\x32\x33.google.cloud.confidentialcomputing.v1.SignedEntityB\x03\xe0\x41\x01\"w\n\x0cSignedEntity\x12g\n\x1a\x63ontainer_image_signatures\x18\x01 \x03(\x0b\x32>.google.cloud.confidentialcomputing.v1.ContainerImageSignatureB\x03\xe0\x41\x01\"\xaf\x01\n\x17\x43ontainerImageSignature\x12\x14\n\x07payload\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x16\n\tsignature\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x17\n\npublic_key\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\x12M\n\x07sig_alg\x18\x04 \x01(\x0e\x32\x37.google.cloud.confidentialcomputing.v1.SigningAlgorithmB\x03\xe0\x41\x01\"\x96\x08\n\x1eVerifyConfidentialSpaceRequest\x12Q\n\x07td_ccel\x18\x03 \x01(\x0b\x32\x39.google.cloud.confidentialcomputing.v1.TdxCcelAttestationB\x03\xe0\x41\x04H\x00\x12U\n\x0ftpm_attestation\x18\x04 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.TpmAttestationB\x03\xe0\x41\x04H\x00\x12I\n\tchallenge\x18\x01 \x01(\tB6\xe0\x41\x02\xfa\x41\x30\n.confidentialcomputing.googleapis.com/Challenge\x12S\n\x0fgcp_credentials\x18\x02 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.GcpCredentialsB\x03\xe0\x41\x01\x12Q\n\x0fsigned_entities\x18\x05 \x03(\x0b\x32\x33.google.cloud.confidentialcomputing.v1.SignedEntityB\x03\xe0\x41\x01\x12^\n\x15gce_shielded_identity\x18\x06 \x01(\x0b\x32:.google.cloud.confidentialcomputing.v1.GceShieldedIdentityB\x03\xe0\x41\x01\x12t\n\x07options\x18\x07 \x01(\x0b\x32^.google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceRequest.ConfidentialSpaceOptionsB\x03\xe0\x41\x01\x1a\xed\x02\n\x18\x43onfidentialSpaceOptions\x12i\n\x1a\x61ws_principal_tags_options\x18\x05 \x01(\x0b\x32>.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptionsB\x03\xe0\x41\x01H\x00\x12\x15\n\x08\x61udience\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12O\n\rtoken_profile\x18\x02 \x01(\x0e\x32\x33.google.cloud.confidentialcomputing.v1.TokenProfileB\x03\xe0\x41\x01\x12\x12\n\x05nonce\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12Q\n\x0esignature_type\x18\x04 \x01(\x0e\x32\x34.google.cloud.confidentialcomputing.v1.SignatureTypeB\x03\xe0\x41\x01\x42\x17\n\x15token_profile_optionsB\x11\n\x0ftee_attestation\"G\n\x13GceShieldedIdentity\x12\x14\n\x07\x61k_cert\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x1a\n\rak_cert_chain\x18\x02 \x03(\x0c\x42\x03\xe0\x41\x01\"r\n\x1fVerifyConfidentialSpaceResponse\x12\x1e\n\x11\x61ttestation_token\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12/\n\x0epartial_errors\x18\x02 \x03(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\"\xce\x01\n\x1cVerifyConfidentialGkeRequest\x12P\n\x0ftpm_attestation\x18\x02 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.TpmAttestationH\x00\x12I\n\tchallenge\x18\x01 \x01(\tB6\xe0\x41\x02\xfa\x41\x30\n.confidentialcomputing.googleapis.com/ChallengeB\x11\n\x0ftee_attestation\"?\n\x1dVerifyConfidentialGkeResponse\x12\x1e\n\x11\x61ttestation_token\x18\x01 \x01(\tB\x03\xe0\x41\x03*\x7f\n\x10SigningAlgorithm\x12!\n\x1dSIGNING_ALGORITHM_UNSPECIFIED\x10\x00\x12\x15\n\x11RSASSA_PSS_SHA256\x10\x01\x12\x1a\n\x16RSASSA_PKCS1V15_SHA256\x10\x02\x12\x15\n\x11\x45\x43\x44SA_P256_SHA256\x10\x03*\x8e\x01\n\tTokenType\x12\x1a\n\x16TOKEN_TYPE_UNSPECIFIED\x10\x00\x12\x13\n\x0fTOKEN_TYPE_OIDC\x10\x01\x12\x12\n\x0eTOKEN_TYPE_PKI\x10\x02\x12\x1a\n\x16TOKEN_TYPE_LIMITED_AWS\x10\x03\x12 \n\x1cTOKEN_TYPE_AWS_PRINCIPALTAGS\x10\x04*`\n\rSignatureType\x12\x1e\n\x1aSIGNATURE_TYPE_UNSPECIFIED\x10\x00\x12\x17\n\x13SIGNATURE_TYPE_OIDC\x10\x01\x12\x16\n\x12SIGNATURE_TYPE_PKI\x10\x02*c\n\x0cTokenProfile\x12\x1d\n\x19TOKEN_PROFILE_UNSPECIFIED\x10\x00\x12\x1d\n\x19TOKEN_PROFILE_DEFAULT_EAT\x10\x01\x12\x15\n\x11TOKEN_PROFILE_AWS\x10\x02\x32\xb5\x08\n\x15\x43onfidentialComputing\x12\xd8\x01\n\x0f\x43reateChallenge\x12=.google.cloud.confidentialcomputing.v1.CreateChallengeRequest\x1a\x30.google.cloud.confidentialcomputing.v1.Challenge\"T\xda\x41\x10parent,challenge\x82\xd3\xe4\x93\x02;\"./v1/{parent=projects/*/locations/*}/challenges:\tchallenge\x12\xe8\x01\n\x11VerifyAttestation\x12?.google.cloud.confidentialcomputing.v1.VerifyAttestationRequest\x1a@.google.cloud.confidentialcomputing.v1.VerifyAttestationResponse\"P\x82\xd3\xe4\x93\x02J\"E/v1/{challenge=projects/*/locations/*/challenges/*}:verifyAttestation:\x01*\x12\x80\x02\n\x17VerifyConfidentialSpace\x12\x45.google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceRequest\x1a\x46.google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceResponse\"V\x82\xd3\xe4\x93\x02P\"K/v1/{challenge=projects/*/locations/*/challenges/*}:verifyConfidentialSpace:\x01*\x12\xf8\x01\n\x15VerifyConfidentialGke\x12\x43.google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeRequest\x1a\x44.google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeResponse\"T\x82\xd3\xe4\x93\x02N\"I/v1/{challenge=projects/*/locations/*/challenges/*}:verifyConfidentialGke:\x01*\x1aX\xca\x41$confidentialcomputing.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x97\x02\n)com.google.cloud.confidentialcomputing.v1B\x0cServiceProtoP\x01Z_cloud.google.com/go/confidentialcomputing/apiv1/confidentialcomputingpb;confidentialcomputingpb\xaa\x02%Google.Cloud.ConfidentialComputing.V1\xca\x02%Google\\Cloud\\ConfidentialComputing\\V1\xea\x02(Google::Cloud::ConfidentialComputing::V1b\x06proto3"
|
|
15
|
+
descriptor_data = "\n3google/cloud/confidentialcomputing/v1/service.proto\x12%google.cloud.confidentialcomputing.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\xa5\x02\n\tChallenge\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0b\x65xpire_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x11\n\x04used\x18\x04 \x01(\x08\x42\x03\xe0\x41\x03\x12\x16\n\ttpm_nonce\x18\x06 \x01(\tB\x03\xe0\x41\x03:n\xea\x41k\n.confidentialcomputing.googleapis.com/Challenge\x12\x39projects/{project}/locations/{location}/challenges/{uuid}\"\x9d\x01\n\x16\x43reateChallengeRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12H\n\tchallenge\x18\x02 \x01(\x0b\x32\x30.google.cloud.confidentialcomputing.v1.ChallengeB\x03\xe0\x41\x02\"\x92\x06\n\x18VerifyAttestationRequest\x12Q\n\x07td_ccel\x18\x06 \x01(\x0b\x32\x39.google.cloud.confidentialcomputing.v1.TdxCcelAttestationB\x03\xe0\x41\x01H\x00\x12\\\n\x13sev_snp_attestation\x18\x07 \x01(\x0b\x32\x38.google.cloud.confidentialcomputing.v1.SevSnpAttestationB\x03\xe0\x41\x01H\x00\x12[\n\x12nvidia_attestation\x18\t \x01(\x0b\x32\x38.google.cloud.confidentialcomputing.v1.NvidiaAttestationB\x03\xe0\x41\x01H\x01\x12I\n\tchallenge\x18\x01 \x01(\tB6\xe0\x41\x02\xfa\x41\x30\n.confidentialcomputing.googleapis.com/Challenge\x12S\n\x0fgcp_credentials\x18\x02 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.GcpCredentialsB\x03\xe0\x41\x01\x12S\n\x0ftpm_attestation\x18\x03 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.TpmAttestationB\x03\xe0\x41\x02\x12\x62\n\x17\x63onfidential_space_info\x18\x04 \x01(\x0b\x32<.google.cloud.confidentialcomputing.v1.ConfidentialSpaceInfoB\x03\xe0\x41\x01\x12O\n\rtoken_options\x18\x05 \x01(\x0b\x32\x33.google.cloud.confidentialcomputing.v1.TokenOptionsB\x03\xe0\x41\x01\x12\x15\n\x08\x61ttester\x18\x08 \x01(\tB\x03\xe0\x41\x01\x42\x11\n\x0ftee_attestationB\x14\n\x12\x64\x65vice_attestation\"\xbb\n\n\x11NvidiaAttestation\x12\x64\n\x03spt\x18\x01 \x01(\x0b\x32U.google.cloud.confidentialcomputing.v1.NvidiaAttestation.SinglePassthroughAttestationH\x00\x12\x62\n\x05ppcie\x18\x02 \x01(\x0b\x32Q.google.cloud.confidentialcomputing.v1.NvidiaAttestation.ProtectedPcieAttestationH\x00\x12l\n\x03mpt\x18\x03 \x01(\x0b\x32].google.cloud.confidentialcomputing.v1.NvidiaAttestation.MultiGpuSecurePassthroughAttestationH\x00\x1a\x94\x02\n\x07GpuInfo\x12\x11\n\x04uuid\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0e\x64river_version\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rvbios_version\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12p\n\x15gpu_architecture_type\x18\x04 \x01(\x0e\x32L.google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuArchitectureTypeB\x03\xe0\x41\x01\x12*\n\x1d\x61ttestation_certificate_chain\x18\x05 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x1f\n\x12\x61ttestation_report\x18\x06 \x01(\x0c\x42\x03\xe0\x41\x01\x1al\n\nSwitchInfo\x12\x11\n\x04uuid\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12*\n\x1d\x61ttestation_certificate_chain\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x1f\n\x12\x61ttestation_report\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\x1ax\n\x1cSinglePassthroughAttestation\x12X\n\tgpu_quote\x18\x01 \x01(\x0b\x32@.google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfoB\x03\xe0\x41\x01\x1a\xd6\x01\n\x18ProtectedPcieAttestation\x12Y\n\ngpu_quotes\x18\x01 \x03(\x0b\x32@.google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfoB\x03\xe0\x41\x01\x12_\n\rswitch_quotes\x18\x02 \x03(\x0b\x32\x43.google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfoB\x03\xe0\x41\x01\x1a\x81\x01\n$MultiGpuSecurePassthroughAttestation\x12Y\n\ngpu_quotes\x18\x01 \x03(\x0b\x32@.google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfoB\x03\xe0\x41\x01\"\x83\x01\n\x13GpuArchitectureType\x12%\n!GPU_ARCHITECTURE_TYPE_UNSPECIFIED\x10\x00\x12 \n\x1cGPU_ARCHITECTURE_TYPE_HOPPER\x10\x08\x12#\n\x1fGPU_ARCHITECTURE_TYPE_BLACKWELL\x10\nB\x0c\n\ncc_feature\"\x83\x01\n\x12TdxCcelAttestation\x12\x1c\n\x0f\x63\x63\x65l_acpi_table\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x16\n\tccel_data\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12 \n\x13\x63\x61nonical_event_log\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x15\n\x08td_quote\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x01\"?\n\x11SevSnpAttestation\x12\x13\n\x06report\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x15\n\x08\x61ux_blob\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\"l\n\x19VerifyAttestationResponse\x12\x1e\n\x11oidc_claims_token\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12/\n\x0epartial_errors\x18\x03 \x03(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\"3\n\x0eGcpCredentials\x12!\n\x19service_account_id_tokens\x18\x02 \x03(\t\"\x85\x02\n\x0cTokenOptions\x12i\n\x1a\x61ws_principal_tags_options\x18\x04 \x01(\x0b\x32>.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptionsB\x03\xe0\x41\x01H\x00\x12\x15\n\x08\x61udience\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05nonce\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12I\n\ntoken_type\x18\x03 \x01(\x0e\x32\x30.google.cloud.confidentialcomputing.v1.TokenTypeB\x03\xe0\x41\x01\x42\x14\n\x12token_type_options\"\xf6\x02\n\x17\x41wsPrincipalTagsOptions\x12x\n\x16\x61llowed_principal_tags\x18\x01 \x01(\x0b\x32S.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptions.AllowedPrincipalTagsB\x03\xe0\x41\x01\x1a\xe0\x01\n\x14\x41llowedPrincipalTags\x12\x95\x01\n\x1a\x63ontainer_image_signatures\x18\x01 \x01(\x0b\x32l.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptions.AllowedPrincipalTags.ContainerImageSignaturesB\x03\xe0\x41\x01\x1a\x30\n\x18\x43ontainerImageSignatures\x12\x14\n\x07key_ids\x18\x01 \x03(\tB\x03\xe0\x41\x01\"\x8f\x03\n\x0eTpmAttestation\x12K\n\x06quotes\x18\x01 \x03(\x0b\x32;.google.cloud.confidentialcomputing.v1.TpmAttestation.Quote\x12\x15\n\rtcg_event_log\x18\x02 \x01(\x0c\x12\x1b\n\x13\x63\x61nonical_event_log\x18\x03 \x01(\x0c\x12\x0f\n\x07\x61k_cert\x18\x04 \x01(\x0c\x12\x12\n\ncert_chain\x18\x05 \x03(\x0c\x1a\xd6\x01\n\x05Quote\x12\x11\n\thash_algo\x18\x01 \x01(\x05\x12^\n\npcr_values\x18\x02 \x03(\x0b\x32J.google.cloud.confidentialcomputing.v1.TpmAttestation.Quote.PcrValuesEntry\x12\x11\n\traw_quote\x18\x03 \x01(\x0c\x12\x15\n\rraw_signature\x18\x04 \x01(\x0c\x1a\x30\n\x0ePcrValuesEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x0c:\x02\x38\x01\"j\n\x15\x43onfidentialSpaceInfo\x12Q\n\x0fsigned_entities\x18\x01 \x03(\x0b\x32\x33.google.cloud.confidentialcomputing.v1.SignedEntityB\x03\xe0\x41\x01\"w\n\x0cSignedEntity\x12g\n\x1a\x63ontainer_image_signatures\x18\x01 \x03(\x0b\x32>.google.cloud.confidentialcomputing.v1.ContainerImageSignatureB\x03\xe0\x41\x01\"\xaf\x01\n\x17\x43ontainerImageSignature\x12\x14\n\x07payload\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x16\n\tsignature\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x17\n\npublic_key\x18\x03 \x01(\x0c\x42\x03\xe0\x41\x01\x12M\n\x07sig_alg\x18\x04 \x01(\x0e\x32\x37.google.cloud.confidentialcomputing.v1.SigningAlgorithmB\x03\xe0\x41\x01\"\xf1\x08\n\x1eVerifyConfidentialSpaceRequest\x12Q\n\x07td_ccel\x18\x03 \x01(\x0b\x32\x39.google.cloud.confidentialcomputing.v1.TdxCcelAttestationB\x03\xe0\x41\x04H\x00\x12U\n\x0ftpm_attestation\x18\x04 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.TpmAttestationB\x03\xe0\x41\x04H\x00\x12I\n\tchallenge\x18\x01 \x01(\tB6\xe0\x41\x02\xfa\x41\x30\n.confidentialcomputing.googleapis.com/Challenge\x12S\n\x0fgcp_credentials\x18\x02 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.GcpCredentialsB\x03\xe0\x41\x01\x12Q\n\x0fsigned_entities\x18\x05 \x03(\x0b\x32\x33.google.cloud.confidentialcomputing.v1.SignedEntityB\x03\xe0\x41\x01\x12^\n\x15gce_shielded_identity\x18\x06 \x01(\x0b\x32:.google.cloud.confidentialcomputing.v1.GceShieldedIdentityB\x03\xe0\x41\x01\x12t\n\x07options\x18\x07 \x01(\x0b\x32^.google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceRequest.ConfidentialSpaceOptionsB\x03\xe0\x41\x01\x12Y\n\x12nvidia_attestation\x18\x08 \x01(\x0b\x32\x38.google.cloud.confidentialcomputing.v1.NvidiaAttestationB\x03\xe0\x41\x01\x1a\xed\x02\n\x18\x43onfidentialSpaceOptions\x12i\n\x1a\x61ws_principal_tags_options\x18\x05 \x01(\x0b\x32>.google.cloud.confidentialcomputing.v1.AwsPrincipalTagsOptionsB\x03\xe0\x41\x01H\x00\x12\x15\n\x08\x61udience\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12O\n\rtoken_profile\x18\x02 \x01(\x0e\x32\x33.google.cloud.confidentialcomputing.v1.TokenProfileB\x03\xe0\x41\x01\x12\x12\n\x05nonce\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12Q\n\x0esignature_type\x18\x04 \x01(\x0e\x32\x34.google.cloud.confidentialcomputing.v1.SignatureTypeB\x03\xe0\x41\x01\x42\x17\n\x15token_profile_optionsB\x11\n\x0ftee_attestation\"G\n\x13GceShieldedIdentity\x12\x14\n\x07\x61k_cert\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x01\x12\x1a\n\rak_cert_chain\x18\x02 \x03(\x0c\x42\x03\xe0\x41\x01\"r\n\x1fVerifyConfidentialSpaceResponse\x12\x1e\n\x11\x61ttestation_token\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12/\n\x0epartial_errors\x18\x02 \x03(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\"\xd9\x03\n\x1cVerifyConfidentialGkeRequest\x12P\n\x0ftpm_attestation\x18\x02 \x01(\x0b\x32\x35.google.cloud.confidentialcomputing.v1.TpmAttestationH\x00\x12I\n\tchallenge\x18\x01 \x01(\tB6\xe0\x41\x02\xfa\x41\x30\n.confidentialcomputing.googleapis.com/Challenge\x12p\n\x07options\x18\x03 \x01(\x0b\x32Z.google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeRequest.ConfidentialGkeOptionsB\x03\xe0\x41\x01\x1a\x96\x01\n\x16\x43onfidentialGkeOptions\x12\x15\n\x08\x61udience\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05nonce\x18\x03 \x03(\tB\x03\xe0\x41\x01\x12Q\n\x0esignature_type\x18\x04 \x01(\x0e\x32\x34.google.cloud.confidentialcomputing.v1.SignatureTypeB\x03\xe0\x41\x01\x42\x11\n\x0ftee_attestation\"?\n\x1dVerifyConfidentialGkeResponse\x12\x1e\n\x11\x61ttestation_token\x18\x01 \x01(\tB\x03\xe0\x41\x03*\x7f\n\x10SigningAlgorithm\x12!\n\x1dSIGNING_ALGORITHM_UNSPECIFIED\x10\x00\x12\x15\n\x11RSASSA_PSS_SHA256\x10\x01\x12\x1a\n\x16RSASSA_PKCS1V15_SHA256\x10\x02\x12\x15\n\x11\x45\x43\x44SA_P256_SHA256\x10\x03*\x8e\x01\n\tTokenType\x12\x1a\n\x16TOKEN_TYPE_UNSPECIFIED\x10\x00\x12\x13\n\x0fTOKEN_TYPE_OIDC\x10\x01\x12\x12\n\x0eTOKEN_TYPE_PKI\x10\x02\x12\x1a\n\x16TOKEN_TYPE_LIMITED_AWS\x10\x03\x12 \n\x1cTOKEN_TYPE_AWS_PRINCIPALTAGS\x10\x04*`\n\rSignatureType\x12\x1e\n\x1aSIGNATURE_TYPE_UNSPECIFIED\x10\x00\x12\x17\n\x13SIGNATURE_TYPE_OIDC\x10\x01\x12\x16\n\x12SIGNATURE_TYPE_PKI\x10\x02*c\n\x0cTokenProfile\x12\x1d\n\x19TOKEN_PROFILE_UNSPECIFIED\x10\x00\x12\x1d\n\x19TOKEN_PROFILE_DEFAULT_EAT\x10\x01\x12\x15\n\x11TOKEN_PROFILE_AWS\x10\x02\x32\xb5\x08\n\x15\x43onfidentialComputing\x12\xd8\x01\n\x0f\x43reateChallenge\x12=.google.cloud.confidentialcomputing.v1.CreateChallengeRequest\x1a\x30.google.cloud.confidentialcomputing.v1.Challenge\"T\xda\x41\x10parent,challenge\x82\xd3\xe4\x93\x02;\"./v1/{parent=projects/*/locations/*}/challenges:\tchallenge\x12\xe8\x01\n\x11VerifyAttestation\x12?.google.cloud.confidentialcomputing.v1.VerifyAttestationRequest\x1a@.google.cloud.confidentialcomputing.v1.VerifyAttestationResponse\"P\x82\xd3\xe4\x93\x02J\"E/v1/{challenge=projects/*/locations/*/challenges/*}:verifyAttestation:\x01*\x12\x80\x02\n\x17VerifyConfidentialSpace\x12\x45.google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceRequest\x1a\x46.google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceResponse\"V\x82\xd3\xe4\x93\x02P\"K/v1/{challenge=projects/*/locations/*/challenges/*}:verifyConfidentialSpace:\x01*\x12\xf8\x01\n\x15VerifyConfidentialGke\x12\x43.google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeRequest\x1a\x44.google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeResponse\"T\x82\xd3\xe4\x93\x02N\"I/v1/{challenge=projects/*/locations/*/challenges/*}:verifyConfidentialGke:\x01*\x1aX\xca\x41$confidentialcomputing.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x97\x02\n)com.google.cloud.confidentialcomputing.v1B\x0cServiceProtoP\x01Z_cloud.google.com/go/confidentialcomputing/apiv1/confidentialcomputingpb;confidentialcomputingpb\xaa\x02%Google.Cloud.ConfidentialComputing.V1\xca\x02%Google\\Cloud\\ConfidentialComputing\\V1\xea\x02(Google::Cloud::ConfidentialComputing::V1b\x06proto3"
|
|
16
16
|
|
|
17
17
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
|
18
18
|
|
|
@@ -47,6 +47,13 @@ module Google
|
|
|
47
47
|
Challenge = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.Challenge").msgclass
|
|
48
48
|
CreateChallengeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.CreateChallengeRequest").msgclass
|
|
49
49
|
VerifyAttestationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.VerifyAttestationRequest").msgclass
|
|
50
|
+
NvidiaAttestation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation").msgclass
|
|
51
|
+
NvidiaAttestation::GpuInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuInfo").msgclass
|
|
52
|
+
NvidiaAttestation::SwitchInfo = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation.SwitchInfo").msgclass
|
|
53
|
+
NvidiaAttestation::SinglePassthroughAttestation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation.SinglePassthroughAttestation").msgclass
|
|
54
|
+
NvidiaAttestation::ProtectedPcieAttestation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation.ProtectedPcieAttestation").msgclass
|
|
55
|
+
NvidiaAttestation::MultiGpuSecurePassthroughAttestation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation.MultiGpuSecurePassthroughAttestation").msgclass
|
|
56
|
+
NvidiaAttestation::GpuArchitectureType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.NvidiaAttestation.GpuArchitectureType").enummodule
|
|
50
57
|
TdxCcelAttestation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.TdxCcelAttestation").msgclass
|
|
51
58
|
SevSnpAttestation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.SevSnpAttestation").msgclass
|
|
52
59
|
VerifyAttestationResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.VerifyAttestationResponse").msgclass
|
|
@@ -65,6 +72,7 @@ module Google
|
|
|
65
72
|
GceShieldedIdentity = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.GceShieldedIdentity").msgclass
|
|
66
73
|
VerifyConfidentialSpaceResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.VerifyConfidentialSpaceResponse").msgclass
|
|
67
74
|
VerifyConfidentialGkeRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeRequest").msgclass
|
|
75
|
+
VerifyConfidentialGkeRequest::ConfidentialGkeOptions = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeRequest.ConfidentialGkeOptions").msgclass
|
|
68
76
|
VerifyConfidentialGkeResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.VerifyConfidentialGkeResponse").msgclass
|
|
69
77
|
SigningAlgorithm = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.SigningAlgorithm").enummodule
|
|
70
78
|
TokenType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.confidentialcomputing.v1.TokenType").enummodule
|
|
@@ -70,6 +70,9 @@ module Google
|
|
|
70
70
|
# Optional. An SEV-SNP Attestation Report.
|
|
71
71
|
#
|
|
72
72
|
# Note: The following fields are mutually exclusive: `sev_snp_attestation`, `td_ccel`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
73
|
+
# @!attribute [rw] nvidia_attestation
|
|
74
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation]
|
|
75
|
+
# Optional. An Nvidia attestation report for GPU and NVSwitch devices.
|
|
73
76
|
# @!attribute [rw] challenge
|
|
74
77
|
# @return [::String]
|
|
75
78
|
# Required. The name of the Challenge whose nonce was used to generate the
|
|
@@ -99,6 +102,116 @@ module Google
|
|
|
99
102
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
100
103
|
end
|
|
101
104
|
|
|
105
|
+
# An Nvidia attestation report for GPU and NVSwitch devices.
|
|
106
|
+
# Contains necessary attestation evidence that the client collects for
|
|
107
|
+
# verification.
|
|
108
|
+
# @!attribute [rw] spt
|
|
109
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::SinglePassthroughAttestation]
|
|
110
|
+
# Single GPU Passthrough (SPT) attestation.
|
|
111
|
+
#
|
|
112
|
+
# Note: The following fields are mutually exclusive: `spt`, `ppcie`, `mpt`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
113
|
+
# @!attribute [rw] ppcie
|
|
114
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::ProtectedPcieAttestation]
|
|
115
|
+
# Protected PCIe (PPCIE) attestation.
|
|
116
|
+
#
|
|
117
|
+
# Note: The following fields are mutually exclusive: `ppcie`, `spt`, `mpt`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
118
|
+
# @!attribute [rw] mpt
|
|
119
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::MultiGpuSecurePassthroughAttestation]
|
|
120
|
+
# Multi-GPU Secure Passthrough (MPT) attestation.
|
|
121
|
+
#
|
|
122
|
+
# Note: The following fields are mutually exclusive: `mpt`, `spt`, `ppcie`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
123
|
+
class NvidiaAttestation
|
|
124
|
+
include ::Google::Protobuf::MessageExts
|
|
125
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
126
|
+
|
|
127
|
+
# GpuInfo contains the attestation evidence for a GPU device.
|
|
128
|
+
# @!attribute [rw] uuid
|
|
129
|
+
# @return [::String]
|
|
130
|
+
# Optional. The UUID of the GPU device.
|
|
131
|
+
# @!attribute [rw] driver_version
|
|
132
|
+
# @return [::String]
|
|
133
|
+
# Optional. The driver version of the GPU.
|
|
134
|
+
# @!attribute [rw] vbios_version
|
|
135
|
+
# @return [::String]
|
|
136
|
+
# Optional. The vBIOS version of the GPU.
|
|
137
|
+
# @!attribute [rw] gpu_architecture_type
|
|
138
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::GpuArchitectureType]
|
|
139
|
+
# Optional. The GPU architecture type.
|
|
140
|
+
# @!attribute [rw] attestation_certificate_chain
|
|
141
|
+
# @return [::String]
|
|
142
|
+
# Optional. The raw attestation certificate chain for the GPU device.
|
|
143
|
+
# @!attribute [rw] attestation_report
|
|
144
|
+
# @return [::String]
|
|
145
|
+
# Optional. The raw attestation report for the GPU device.
|
|
146
|
+
# This field contains SPDM request/response defined in
|
|
147
|
+
# https://www.dmtf.org/sites/default/files/standards/documents/DSP0274_1.1.0.pdf
|
|
148
|
+
class GpuInfo
|
|
149
|
+
include ::Google::Protobuf::MessageExts
|
|
150
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
# SwitchInfo contains the attestation evidence for a NVSwitch device.
|
|
154
|
+
# @!attribute [rw] uuid
|
|
155
|
+
# @return [::String]
|
|
156
|
+
# Optional. The UUID of the NVSwitch device.
|
|
157
|
+
# @!attribute [rw] attestation_certificate_chain
|
|
158
|
+
# @return [::String]
|
|
159
|
+
# Optional. The raw attestation certificate chain for the NVSwitch device.
|
|
160
|
+
# @!attribute [rw] attestation_report
|
|
161
|
+
# @return [::String]
|
|
162
|
+
# Optional. The raw attestation report for the NvSwitch device.
|
|
163
|
+
# This field contains SPDM request/response defined in
|
|
164
|
+
# https://www.dmtf.org/sites/default/files/standards/documents/DSP0274_1.1.0.pdf
|
|
165
|
+
class SwitchInfo
|
|
166
|
+
include ::Google::Protobuf::MessageExts
|
|
167
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
# Single GPU Passthrough (SPT) attestation.
|
|
171
|
+
# @!attribute [rw] gpu_quote
|
|
172
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::GpuInfo]
|
|
173
|
+
# Optional. Single GPU quote.
|
|
174
|
+
class SinglePassthroughAttestation
|
|
175
|
+
include ::Google::Protobuf::MessageExts
|
|
176
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
# Protected PCIe (PPCIE) attestation.
|
|
180
|
+
# Eight Hopper GPUs with Four NVSwitch Passthrough.
|
|
181
|
+
# @!attribute [rw] gpu_quotes
|
|
182
|
+
# @return [::Array<::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::GpuInfo>]
|
|
183
|
+
# Optional. A list of GPU infos.
|
|
184
|
+
# @!attribute [rw] switch_quotes
|
|
185
|
+
# @return [::Array<::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::SwitchInfo>]
|
|
186
|
+
# Optional. A list of SWITCH infos.
|
|
187
|
+
class ProtectedPcieAttestation
|
|
188
|
+
include ::Google::Protobuf::MessageExts
|
|
189
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
# MultiGpuSecurePassthroughAttestation contains the attestation evidence
|
|
193
|
+
# for a Multi-GPU Secure Passthrough (MPT) attestation.
|
|
194
|
+
# @!attribute [rw] gpu_quotes
|
|
195
|
+
# @return [::Array<::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation::GpuInfo>]
|
|
196
|
+
# Optional. A list of GPU quotes.
|
|
197
|
+
class MultiGpuSecurePassthroughAttestation
|
|
198
|
+
include ::Google::Protobuf::MessageExts
|
|
199
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
# GpuArchitectureType enumerates the supported GPU architecture types.
|
|
203
|
+
module GpuArchitectureType
|
|
204
|
+
# Unspecified GPU architecture type.
|
|
205
|
+
GPU_ARCHITECTURE_TYPE_UNSPECIFIED = 0
|
|
206
|
+
|
|
207
|
+
# Hopper GPU architecture type.
|
|
208
|
+
GPU_ARCHITECTURE_TYPE_HOPPER = 8
|
|
209
|
+
|
|
210
|
+
# Blackwell GPU architecture type.
|
|
211
|
+
GPU_ARCHITECTURE_TYPE_BLACKWELL = 10
|
|
212
|
+
end
|
|
213
|
+
end
|
|
214
|
+
|
|
102
215
|
# A TDX Attestation quote.
|
|
103
216
|
# @!attribute [rw] ccel_acpi_table
|
|
104
217
|
# @return [::String]
|
|
@@ -355,6 +468,10 @@ module Google
|
|
|
355
468
|
# @!attribute [rw] options
|
|
356
469
|
# @return [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialSpaceRequest::ConfidentialSpaceOptions]
|
|
357
470
|
# Optional. A collection of fields that modify the token output.
|
|
471
|
+
# @!attribute [rw] nvidia_attestation
|
|
472
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::NvidiaAttestation]
|
|
473
|
+
# Optional. An optional Nvidia attestation report, used to populate hardware
|
|
474
|
+
# rooted claims for Nvidia devices.
|
|
358
475
|
class VerifyConfidentialSpaceRequest
|
|
359
476
|
include ::Google::Protobuf::MessageExts
|
|
360
477
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
@@ -431,9 +548,31 @@ module Google
|
|
|
431
548
|
# Required. The name of the Challenge whose nonce was used to generate the
|
|
432
549
|
# attestation, in the format projects/*/locations/*/challenges/*. The
|
|
433
550
|
# provided Challenge will be consumed, and cannot be used again.
|
|
551
|
+
# @!attribute [rw] options
|
|
552
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::VerifyConfidentialGkeRequest::ConfidentialGkeOptions]
|
|
553
|
+
# Optional. A collection of fields that modify the token output.
|
|
434
554
|
class VerifyConfidentialGkeRequest
|
|
435
555
|
include ::Google::Protobuf::MessageExts
|
|
436
556
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
557
|
+
|
|
558
|
+
# Token options for Confidential GKE attestation.
|
|
559
|
+
# @!attribute [rw] audience
|
|
560
|
+
# @return [::String]
|
|
561
|
+
# Optional. Optional string to issue the token with a custom audience
|
|
562
|
+
# claim. Required if custom nonces are specified.
|
|
563
|
+
# @!attribute [rw] nonce
|
|
564
|
+
# @return [::Array<::String>]
|
|
565
|
+
# Optional. Optional parameter to place one or more nonces in the eat_nonce
|
|
566
|
+
# claim in the output token. The minimum size for JSON-encoded EATs is 10
|
|
567
|
+
# bytes and the maximum size is 74 bytes.
|
|
568
|
+
# @!attribute [rw] signature_type
|
|
569
|
+
# @return [::Google::Cloud::ConfidentialComputing::V1::SignatureType]
|
|
570
|
+
# Optional. Optional specification for how to sign the attestation token.
|
|
571
|
+
# Defaults to SIGNATURE_TYPE_OIDC if unspecified.
|
|
572
|
+
class ConfidentialGkeOptions
|
|
573
|
+
include ::Google::Protobuf::MessageExts
|
|
574
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
575
|
+
end
|
|
437
576
|
end
|
|
438
577
|
|
|
439
578
|
# VerifyConfidentialGkeResponse response is returened once a Confidential GKE
|