xref: /aosp_15_r20/external/google-cloud-java/java-grafeas/src/main/proto/grafeas/v1/dsse_attestation.proto (revision 55e87721aa1bc457b326496a7ca40f3ea1a63287)
1// Copyright 2021 The Grafeas Authors. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//    http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14syntax = "proto3";
15
16package grafeas.v1;
17
18import "grafeas/v1/common.proto";
19import "grafeas/v1/intoto_statement.proto";
20
21option go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
22option java_multiple_files = true;
23option java_package = "io.grafeas.v1";
24option objc_class_prefix = "GRA";
25
26message DSSEAttestationNote {
27  // This submessage provides human-readable hints about the purpose of the
28  // authority. Because the name of a note acts as its resource reference, it is
29  // important to disambiguate the canonical name of the Note (which might be a
30  // UUID for security purposes) from "readable" names more suitable for debug
31  // output. Note that these hints should not be used to look up authorities in
32  // security sensitive contexts, such as when looking up attestations to
33  // verify.
34  message DSSEHint {
35    // Required. The human readable name of this attestation authority, for
36    // example "cloudbuild-prod".
37    string human_readable_name = 1;
38  }
39  // DSSEHint hints at the purpose of the attestation authority.
40  DSSEHint hint = 1;
41}
42
43// Deprecated. Prefer to use a regular Occurrence, and populate the
44// Envelope at the top level of the Occurrence.
45message DSSEAttestationOccurrence {
46  // If doing something security critical, make sure to verify the signatures in
47  // this metadata.
48  Envelope envelope = 1;
49  oneof decoded_payload {
50    InTotoStatement statement = 2;
51  }
52}
53