1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.cloudcontrolspartner.v1beta; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 22*d5c09012SAndroid Build Coastguard Worker 23*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.CloudControlsPartner.V1Beta"; 24*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/cloudcontrolspartner/apiv1beta/cloudcontrolspartnerpb;cloudcontrolspartnerpb"; 25*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 26*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "PartnersProto"; 27*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.cloudcontrolspartner.v1beta"; 28*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\CloudControlsPartner\\V1beta"; 29*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::CloudControlsPartner::V1beta"; 30*d5c09012SAndroid Build Coastguard Worker 31*d5c09012SAndroid Build Coastguard Worker// Message describing Partner resource 32*d5c09012SAndroid Build Coastguard Workermessage Partner { 33*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 34*d5c09012SAndroid Build Coastguard Worker type: "cloudcontrolspartner.googleapis.com/Partner" 35*d5c09012SAndroid Build Coastguard Worker pattern: "organizations/{organization}/locations/{location}/partner" 36*d5c09012SAndroid Build Coastguard Worker singular: "partner" 37*d5c09012SAndroid Build Coastguard Worker }; 38*d5c09012SAndroid Build Coastguard Worker 39*d5c09012SAndroid Build Coastguard Worker // Identifier. The resource name of the partner. 40*d5c09012SAndroid Build Coastguard Worker // Format: organizations/{organization}/locations/{location}/partner 41*d5c09012SAndroid Build Coastguard Worker // Example: "organizations/123456/locations/us-central1/partner" 42*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IDENTIFIER]; 43*d5c09012SAndroid Build Coastguard Worker 44*d5c09012SAndroid Build Coastguard Worker // List of SKUs the partner is offering 45*d5c09012SAndroid Build Coastguard Worker repeated Sku skus = 3; 46*d5c09012SAndroid Build Coastguard Worker 47*d5c09012SAndroid Build Coastguard Worker // List of Google Cloud supported EKM partners supported by the partner 48*d5c09012SAndroid Build Coastguard Worker repeated EkmMetadata ekm_solutions = 4; 49*d5c09012SAndroid Build Coastguard Worker 50*d5c09012SAndroid Build Coastguard Worker // List of Google Cloud regions that the partner sells services to customers. 51*d5c09012SAndroid Build Coastguard Worker // Valid Google Cloud regions found here: 52*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/regions-zones 53*d5c09012SAndroid Build Coastguard Worker repeated string operated_cloud_regions = 5; 54*d5c09012SAndroid Build Coastguard Worker 55*d5c09012SAndroid Build Coastguard Worker // Google Cloud project ID in the partner's Google Cloud organization for 56*d5c09012SAndroid Build Coastguard Worker // receiving enhanced Logs for Partners. 57*d5c09012SAndroid Build Coastguard Worker string partner_project_id = 7; 58*d5c09012SAndroid Build Coastguard Worker 59*d5c09012SAndroid Build Coastguard Worker // Output only. Time the resource was created 60*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 9 61*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 62*d5c09012SAndroid Build Coastguard Worker 63*d5c09012SAndroid Build Coastguard Worker // Output only. The last time the resource was updated 64*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 10 65*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 66*d5c09012SAndroid Build Coastguard Worker} 67*d5c09012SAndroid Build Coastguard Worker 68*d5c09012SAndroid Build Coastguard Worker// Message for getting a Partner 69*d5c09012SAndroid Build Coastguard Workermessage GetPartnerRequest { 70*d5c09012SAndroid Build Coastguard Worker // Required. Format: organizations/{organization}/locations/{location}/partner 71*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 72*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 73*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 74*d5c09012SAndroid Build Coastguard Worker type: "cloudcontrolspartner.googleapis.com/Partner" 75*d5c09012SAndroid Build Coastguard Worker } 76*d5c09012SAndroid Build Coastguard Worker ]; 77*d5c09012SAndroid Build Coastguard Worker} 78*d5c09012SAndroid Build Coastguard Worker 79*d5c09012SAndroid Build Coastguard Worker// Represents the SKU a partner owns inside Google Cloud to sell to customers. 80*d5c09012SAndroid Build Coastguard Workermessage Sku { 81*d5c09012SAndroid Build Coastguard Worker // Argentum product SKU, that is associated with the partner offerings to 82*d5c09012SAndroid Build Coastguard Worker // customers used by Syntro for billing purposes. SKUs can represent resold 83*d5c09012SAndroid Build Coastguard Worker // Google products or support services. 84*d5c09012SAndroid Build Coastguard Worker string id = 1; 85*d5c09012SAndroid Build Coastguard Worker 86*d5c09012SAndroid Build Coastguard Worker // Display name of the product identified by the SKU. A partner may want to 87*d5c09012SAndroid Build Coastguard Worker // show partner branded names for their offerings such as local sovereign 88*d5c09012SAndroid Build Coastguard Worker // cloud solutions. 89*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 90*d5c09012SAndroid Build Coastguard Worker} 91*d5c09012SAndroid Build Coastguard Worker 92*d5c09012SAndroid Build Coastguard Worker// Holds information needed by Mudbray to use partner EKMs for workloads. 93*d5c09012SAndroid Build Coastguard Workermessage EkmMetadata { 94*d5c09012SAndroid Build Coastguard Worker // Represents Google Cloud supported external key management partners 95*d5c09012SAndroid Build Coastguard Worker // [Google Cloud EKM partners 96*d5c09012SAndroid Build Coastguard Worker // docs](https://cloud.google.com/kms/docs/ekm#supported_partners). 97*d5c09012SAndroid Build Coastguard Worker enum EkmSolution { 98*d5c09012SAndroid Build Coastguard Worker // Unspecified EKM solution 99*d5c09012SAndroid Build Coastguard Worker EKM_SOLUTION_UNSPECIFIED = 0; 100*d5c09012SAndroid Build Coastguard Worker 101*d5c09012SAndroid Build Coastguard Worker // EKM Partner Fortanix 102*d5c09012SAndroid Build Coastguard Worker FORTANIX = 1; 103*d5c09012SAndroid Build Coastguard Worker 104*d5c09012SAndroid Build Coastguard Worker // EKM Partner FutureX 105*d5c09012SAndroid Build Coastguard Worker FUTUREX = 2; 106*d5c09012SAndroid Build Coastguard Worker 107*d5c09012SAndroid Build Coastguard Worker // EKM Partner Thales 108*d5c09012SAndroid Build Coastguard Worker THALES = 3; 109*d5c09012SAndroid Build Coastguard Worker 110*d5c09012SAndroid Build Coastguard Worker // EKM Partner Virtu 111*d5c09012SAndroid Build Coastguard Worker VIRTRU = 4; 112*d5c09012SAndroid Build Coastguard Worker } 113*d5c09012SAndroid Build Coastguard Worker 114*d5c09012SAndroid Build Coastguard Worker // The Cloud EKM partner. 115*d5c09012SAndroid Build Coastguard Worker EkmSolution ekm_solution = 1; 116*d5c09012SAndroid Build Coastguard Worker 117*d5c09012SAndroid Build Coastguard Worker // Endpoint for sending requests to the EKM for key provisioning during 118*d5c09012SAndroid Build Coastguard Worker // Assured Workload creation. 119*d5c09012SAndroid Build Coastguard Worker string ekm_endpoint_uri = 2; 120*d5c09012SAndroid Build Coastguard Worker} 121