Class: Google::Apis::BinaryauthorizationV1::AttestationOccurrence

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/binaryauthorization_v1/classes.rb,
generated/google/apis/binaryauthorization_v1/representations.rb,
generated/google/apis/binaryauthorization_v1/representations.rb

Overview

Occurrence that represents a single "attestation". The authenticity of an attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the authority to which this attestation is attached is primarily useful for lookup (how to find this attestation if you already know the authority and artifact to be verified) and intent (for which authority this attestation was intended to sign.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AttestationOccurrence

Returns a new instance of AttestationOccurrence.



121
122
123
# File 'generated/google/apis/binaryauthorization_v1/classes.rb', line 121

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#jwtsArray<Google::Apis::BinaryauthorizationV1::Jwt>

One or more JWTs encoding a self-contained attestation. Each JWT encodes the payload that it verifies within the JWT itself. Verifier implementation SHOULD ignore the serialized_payload field when verifying these JWTs. If only JWTs are present on this AttestationOccurrence, then the serialized_payload SHOULD be left empty. Each JWT SHOULD encode a claim specific to the resource_uri of this Occurrence, but this is not validated by Grafeas metadata API implementations. The JWT itself is opaque to Grafeas. Corresponds to the JSON property jwts



105
106
107
# File 'generated/google/apis/binaryauthorization_v1/classes.rb', line 105

def jwts
  @jwts
end

#serialized_payloadString

Required. The serialized payload that is verified by one or more signatures. Corresponds to the JSON property serializedPayload NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


111
112
113
# File 'generated/google/apis/binaryauthorization_v1/classes.rb', line 111

def serialized_payload
  @serialized_payload
end

#signaturesArray<Google::Apis::BinaryauthorizationV1::Signature>

One or more signatures over serialized_payload. Verifier implementations should consider this attestation message verified if at least one signature verifies serialized_payload. See Signature in common.proto for more details on signature structure and verification. Corresponds to the JSON property signatures



119
120
121
# File 'generated/google/apis/binaryauthorization_v1/classes.rb', line 119

def signatures
  @signatures
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



126
127
128
129
130
# File 'generated/google/apis/binaryauthorization_v1/classes.rb', line 126

def update!(**args)
  @jwts = args[:jwts] if args.key?(:jwts)
  @serialized_payload = args[:serialized_payload] if args.key?(:serialized_payload)
  @signatures = args[:signatures] if args.key?(:signatures)
end