google-cloud-cloud_controls_partner-v1 0.a → 0.1.1
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/.yardopts +12 -0
- data/AUTHENTICATION.md +122 -0
- data/README.md +144 -8
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core/client.rb +1171 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core/credentials.rb +47 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core/paths.rb +149 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core/rest/client.rb +1084 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core/rest/service_stub.rb +541 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core/rest.rb +52 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_core.rb +55 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring/client.rb +556 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring/credentials.rb +47 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring/paths.rb +77 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring/rest/client.rb +515 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring/rest/service_stub.rb +187 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring/rest.rb +52 -0
- data/lib/google/cloud/cloud_controls_partner/v1/cloud_controls_partner_monitoring.rb +55 -0
- data/lib/google/cloud/cloud_controls_partner/v1/rest.rb +38 -0
- data/lib/google/cloud/cloud_controls_partner/v1/version.rb +7 -2
- data/lib/google/cloud/cloud_controls_partner/v1.rb +46 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/access_approval_requests_pb.rb +51 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/completion_state_pb.rb +42 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/core_pb.rb +55 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/core_services_pb.rb +60 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/customer_workloads_pb.rb +55 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/customers_pb.rb +54 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/ekm_connections_pb.rb +49 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/monitoring_pb.rb +45 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/monitoring_services_pb.rb +53 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/partner_permissions_pb.rb +47 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/partners_pb.rb +51 -0
- data/lib/google/cloud/cloudcontrolspartner/v1/violations_pb.rb +58 -0
- data/lib/google-cloud-cloud_controls_partner-v1.rb +21 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/client.rb +399 -0
- data/proto_docs/google/api/field_behavior.rb +85 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/api/resource.rb +222 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/access_approval_requests.rb +143 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/completion_state.rb +44 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/core.rb +57 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/customer_workloads.rb +177 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/customers.rb +134 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/ekm_connections.rb +96 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/partner_permissions.rb +66 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/partners.rb +117 -0
- data/proto_docs/google/cloud/cloudcontrolspartner/v1/violations.rb +229 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/timestamp.rb +127 -0
- data/proto_docs/google/type/interval.rb +45 -0
- metadata +93 -10
@@ -0,0 +1,134 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2024 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module CloudControlsPartner
|
23
|
+
module V1
|
24
|
+
# Contains metadata around a Cloud Controls Partner Customer
|
25
|
+
# @!attribute [rw] name
|
26
|
+
# @return [::String]
|
27
|
+
# Identifier. Format:
|
28
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}`
|
29
|
+
# @!attribute [rw] display_name
|
30
|
+
# @return [::String]
|
31
|
+
# The customer organization's display name. E.g. "google.com".
|
32
|
+
# @!attribute [rw] customer_onboarding_state
|
33
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::CustomerOnboardingState]
|
34
|
+
# Container for customer onboarding steps
|
35
|
+
# @!attribute [rw] is_onboarded
|
36
|
+
# @return [::Boolean]
|
37
|
+
# Indicates whether a customer is fully onboarded
|
38
|
+
class Customer
|
39
|
+
include ::Google::Protobuf::MessageExts
|
40
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
41
|
+
end
|
42
|
+
|
43
|
+
# Request to list customers
|
44
|
+
# @!attribute [rw] parent
|
45
|
+
# @return [::String]
|
46
|
+
# Required. Parent resource
|
47
|
+
# Format: `organizations/{organization}/locations/{location}`
|
48
|
+
# @!attribute [rw] page_size
|
49
|
+
# @return [::Integer]
|
50
|
+
# The maximum number of Customers to return. The service may return fewer
|
51
|
+
# than this value. If unspecified, at most 500 Customers will be returned.
|
52
|
+
# @!attribute [rw] page_token
|
53
|
+
# @return [::String]
|
54
|
+
# A page token, received from a previous `ListCustomers` call.
|
55
|
+
# Provide this to retrieve the subsequent page.
|
56
|
+
# @!attribute [rw] filter
|
57
|
+
# @return [::String]
|
58
|
+
# Optional. Filtering results
|
59
|
+
# @!attribute [rw] order_by
|
60
|
+
# @return [::String]
|
61
|
+
# Optional. Hint for how to order the results
|
62
|
+
class ListCustomersRequest
|
63
|
+
include ::Google::Protobuf::MessageExts
|
64
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
65
|
+
end
|
66
|
+
|
67
|
+
# Response message for list customer Customers requests
|
68
|
+
# @!attribute [rw] customers
|
69
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::Customer>]
|
70
|
+
# List of customers
|
71
|
+
# @!attribute [rw] next_page_token
|
72
|
+
# @return [::String]
|
73
|
+
# A token that can be sent as `page_token` to retrieve the next page.
|
74
|
+
# If this field is omitted, there are no subsequent pages.
|
75
|
+
# @!attribute [rw] unreachable
|
76
|
+
# @return [::Array<::String>]
|
77
|
+
# Locations that could not be reached.
|
78
|
+
class ListCustomersResponse
|
79
|
+
include ::Google::Protobuf::MessageExts
|
80
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
81
|
+
end
|
82
|
+
|
83
|
+
# Message for getting a customer
|
84
|
+
# @!attribute [rw] name
|
85
|
+
# @return [::String]
|
86
|
+
# Required. Format:
|
87
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}`
|
88
|
+
class GetCustomerRequest
|
89
|
+
include ::Google::Protobuf::MessageExts
|
90
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
91
|
+
end
|
92
|
+
|
93
|
+
# Container for customer onboarding steps
|
94
|
+
# @!attribute [rw] onboarding_steps
|
95
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::CustomerOnboardingStep>]
|
96
|
+
# List of customer onboarding steps
|
97
|
+
class CustomerOnboardingState
|
98
|
+
include ::Google::Protobuf::MessageExts
|
99
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
100
|
+
end
|
101
|
+
|
102
|
+
# Container for customer onboarding information
|
103
|
+
# @!attribute [rw] step
|
104
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::CustomerOnboardingStep::Step]
|
105
|
+
# The onboarding step
|
106
|
+
# @!attribute [rw] start_time
|
107
|
+
# @return [::Google::Protobuf::Timestamp]
|
108
|
+
# The starting time of the onboarding step
|
109
|
+
# @!attribute [rw] completion_time
|
110
|
+
# @return [::Google::Protobuf::Timestamp]
|
111
|
+
# The completion time of the onboarding step
|
112
|
+
# @!attribute [r] completion_state
|
113
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::CompletionState]
|
114
|
+
# Output only. Current state of the step
|
115
|
+
class CustomerOnboardingStep
|
116
|
+
include ::Google::Protobuf::MessageExts
|
117
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
118
|
+
|
119
|
+
# Enum for possible onboarding steps
|
120
|
+
module Step
|
121
|
+
# Unspecified step
|
122
|
+
STEP_UNSPECIFIED = 0
|
123
|
+
|
124
|
+
# KAJ Enrollment
|
125
|
+
KAJ_ENROLLMENT = 1
|
126
|
+
|
127
|
+
# Customer Environment
|
128
|
+
CUSTOMER_ENVIRONMENT = 2
|
129
|
+
end
|
130
|
+
end
|
131
|
+
end
|
132
|
+
end
|
133
|
+
end
|
134
|
+
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2024 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module CloudControlsPartner
|
23
|
+
module V1
|
24
|
+
# The EKM connections associated with a workload
|
25
|
+
# @!attribute [rw] name
|
26
|
+
# @return [::String]
|
27
|
+
# Identifier. Format:
|
28
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/ekmConnections`
|
29
|
+
# @!attribute [rw] ekm_connections
|
30
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::EkmConnection>]
|
31
|
+
# The EKM connections associated with the workload
|
32
|
+
class EkmConnections
|
33
|
+
include ::Google::Protobuf::MessageExts
|
34
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
35
|
+
end
|
36
|
+
|
37
|
+
# Request for getting the EKM connections associated with a workload
|
38
|
+
# @!attribute [rw] name
|
39
|
+
# @return [::String]
|
40
|
+
# Required. Format:
|
41
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/ekmConnections`
|
42
|
+
class GetEkmConnectionsRequest
|
43
|
+
include ::Google::Protobuf::MessageExts
|
44
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
45
|
+
end
|
46
|
+
|
47
|
+
# Details about the EKM connection
|
48
|
+
# @!attribute [rw] connection_name
|
49
|
+
# @return [::String]
|
50
|
+
# Resource name of the EKM connection in the format:
|
51
|
+
# projects/\\{project}/locations/\\{location}/ekmConnections/\\{ekm_connection}
|
52
|
+
# @!attribute [r] connection_state
|
53
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::EkmConnection::ConnectionState]
|
54
|
+
# Output only. The connection state
|
55
|
+
# @!attribute [rw] connection_error
|
56
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::EkmConnection::ConnectionError]
|
57
|
+
# The connection error that occurred if any
|
58
|
+
class EkmConnection
|
59
|
+
include ::Google::Protobuf::MessageExts
|
60
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
61
|
+
|
62
|
+
# Information around the error that occurred if the connection state is
|
63
|
+
# anything other than available or unspecified
|
64
|
+
# @!attribute [rw] error_domain
|
65
|
+
# @return [::String]
|
66
|
+
# The error domain for the error
|
67
|
+
# @!attribute [rw] error_message
|
68
|
+
# @return [::String]
|
69
|
+
# The error message for the error
|
70
|
+
class ConnectionError
|
71
|
+
include ::Google::Protobuf::MessageExts
|
72
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
73
|
+
end
|
74
|
+
|
75
|
+
# The EKM connection state.
|
76
|
+
module ConnectionState
|
77
|
+
# Unspecified EKM connection state
|
78
|
+
CONNECTION_STATE_UNSPECIFIED = 0
|
79
|
+
|
80
|
+
# Available EKM connection state
|
81
|
+
AVAILABLE = 1
|
82
|
+
|
83
|
+
# Not available EKM connection state
|
84
|
+
NOT_AVAILABLE = 2
|
85
|
+
|
86
|
+
# Error EKM connection state
|
87
|
+
ERROR = 3
|
88
|
+
|
89
|
+
# Permission denied EKM connection state
|
90
|
+
PERMISSION_DENIED = 4
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2024 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module CloudControlsPartner
|
23
|
+
module V1
|
24
|
+
# The permissions granted to the partner for a workload
|
25
|
+
# @!attribute [rw] name
|
26
|
+
# @return [::String]
|
27
|
+
# Identifier. Format:
|
28
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/partnerPermissions`
|
29
|
+
# @!attribute [rw] partner_permissions
|
30
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::PartnerPermissions::Permission>]
|
31
|
+
# The partner permissions granted for the workload
|
32
|
+
class PartnerPermissions
|
33
|
+
include ::Google::Protobuf::MessageExts
|
34
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
35
|
+
|
36
|
+
module Permission
|
37
|
+
# Unspecified partner permission
|
38
|
+
PERMISSION_UNSPECIFIED = 0
|
39
|
+
|
40
|
+
# Permission for Access Transparency and emergency logs
|
41
|
+
ACCESS_TRANSPARENCY_AND_EMERGENCY_ACCESS_LOGS = 1
|
42
|
+
|
43
|
+
# Permission for Assured Workloads monitoring violations
|
44
|
+
ASSURED_WORKLOADS_MONITORING = 2
|
45
|
+
|
46
|
+
# Permission for Access Approval requests
|
47
|
+
ACCESS_APPROVAL_REQUESTS = 3
|
48
|
+
|
49
|
+
# Permission for External Key Manager connection status
|
50
|
+
ASSURED_WORKLOADS_EKM_CONNECTION_STATUS = 4
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
# Request for getting the partner permissions granted for a workload
|
55
|
+
# @!attribute [rw] name
|
56
|
+
# @return [::String]
|
57
|
+
# Required. Name of the resource to get in the format:
|
58
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/partnerPermissions`
|
59
|
+
class GetPartnerPermissionsRequest
|
60
|
+
include ::Google::Protobuf::MessageExts
|
61
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,117 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2024 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module CloudControlsPartner
|
23
|
+
module V1
|
24
|
+
# Message describing Partner resource
|
25
|
+
# @!attribute [rw] name
|
26
|
+
# @return [::String]
|
27
|
+
# Identifier. The resource name of the partner.
|
28
|
+
# Format: `organizations/{organization}/locations/{location}/partner`
|
29
|
+
# Example: "organizations/123456/locations/us-central1/partner"
|
30
|
+
# @!attribute [rw] skus
|
31
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::Sku>]
|
32
|
+
# List of SKUs the partner is offering
|
33
|
+
# @!attribute [rw] ekm_solutions
|
34
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::EkmMetadata>]
|
35
|
+
# List of Google Cloud supported EKM partners supported by the partner
|
36
|
+
# @!attribute [rw] operated_cloud_regions
|
37
|
+
# @return [::Array<::String>]
|
38
|
+
# List of Google Cloud regions that the partner sells services to customers.
|
39
|
+
# Valid Google Cloud regions found here:
|
40
|
+
# https://cloud.google.com/compute/docs/regions-zones
|
41
|
+
# @!attribute [rw] partner_project_id
|
42
|
+
# @return [::String]
|
43
|
+
# Google Cloud project ID in the partner's Google Cloud organization for
|
44
|
+
# receiving enhanced Logs for Partners.
|
45
|
+
# @!attribute [r] create_time
|
46
|
+
# @return [::Google::Protobuf::Timestamp]
|
47
|
+
# Output only. Time the resource was created
|
48
|
+
# @!attribute [r] update_time
|
49
|
+
# @return [::Google::Protobuf::Timestamp]
|
50
|
+
# Output only. The last time the resource was updated
|
51
|
+
class Partner
|
52
|
+
include ::Google::Protobuf::MessageExts
|
53
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
54
|
+
end
|
55
|
+
|
56
|
+
# Message for getting a Partner
|
57
|
+
# @!attribute [rw] name
|
58
|
+
# @return [::String]
|
59
|
+
# Required. Format:
|
60
|
+
# `organizations/{organization}/locations/{location}/partner`
|
61
|
+
class GetPartnerRequest
|
62
|
+
include ::Google::Protobuf::MessageExts
|
63
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
64
|
+
end
|
65
|
+
|
66
|
+
# Represents the SKU a partner owns inside Google Cloud to sell to customers.
|
67
|
+
# @!attribute [rw] id
|
68
|
+
# @return [::String]
|
69
|
+
# Argentum product SKU, that is associated with the partner offerings to
|
70
|
+
# customers used by Syntro for billing purposes. SKUs can represent resold
|
71
|
+
# Google products or support services.
|
72
|
+
# @!attribute [rw] display_name
|
73
|
+
# @return [::String]
|
74
|
+
# Display name of the product identified by the SKU. A partner may want to
|
75
|
+
# show partner branded names for their offerings such as local sovereign
|
76
|
+
# cloud solutions.
|
77
|
+
class Sku
|
78
|
+
include ::Google::Protobuf::MessageExts
|
79
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
80
|
+
end
|
81
|
+
|
82
|
+
# Holds information needed by Mudbray to use partner EKMs for workloads.
|
83
|
+
# @!attribute [rw] ekm_solution
|
84
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::EkmMetadata::EkmSolution]
|
85
|
+
# The Cloud EKM partner.
|
86
|
+
# @!attribute [rw] ekm_endpoint_uri
|
87
|
+
# @return [::String]
|
88
|
+
# Endpoint for sending requests to the EKM for key provisioning during
|
89
|
+
# Assured Workload creation.
|
90
|
+
class EkmMetadata
|
91
|
+
include ::Google::Protobuf::MessageExts
|
92
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
93
|
+
|
94
|
+
# Represents Google Cloud supported external key management partners
|
95
|
+
# [Google Cloud EKM partners
|
96
|
+
# docs](https://cloud.google.com/kms/docs/ekm#supported_partners).
|
97
|
+
module EkmSolution
|
98
|
+
# Unspecified EKM solution
|
99
|
+
EKM_SOLUTION_UNSPECIFIED = 0
|
100
|
+
|
101
|
+
# EKM Partner Fortanix
|
102
|
+
FORTANIX = 1
|
103
|
+
|
104
|
+
# EKM Partner FutureX
|
105
|
+
FUTUREX = 2
|
106
|
+
|
107
|
+
# EKM Partner Thales
|
108
|
+
THALES = 3
|
109
|
+
|
110
|
+
# EKM Partner Virtu
|
111
|
+
VIRTRU = 4
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
@@ -0,0 +1,229 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2024 Google LLC
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
|
17
|
+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
|
18
|
+
|
19
|
+
|
20
|
+
module Google
|
21
|
+
module Cloud
|
22
|
+
module CloudControlsPartner
|
23
|
+
module V1
|
24
|
+
# Details of resource Violation
|
25
|
+
# @!attribute [rw] name
|
26
|
+
# @return [::String]
|
27
|
+
# Identifier. Format:
|
28
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/violations/{violation}`
|
29
|
+
# @!attribute [r] description
|
30
|
+
# @return [::String]
|
31
|
+
# Output only. Description for the Violation.
|
32
|
+
# e.g. OrgPolicy gcp.resourceLocations has non compliant value.
|
33
|
+
# @!attribute [r] begin_time
|
34
|
+
# @return [::Google::Protobuf::Timestamp]
|
35
|
+
# Output only. Time of the event which triggered the Violation.
|
36
|
+
# @!attribute [r] update_time
|
37
|
+
# @return [::Google::Protobuf::Timestamp]
|
38
|
+
# Output only. The last time when the Violation record was updated.
|
39
|
+
# @!attribute [r] resolve_time
|
40
|
+
# @return [::Google::Protobuf::Timestamp]
|
41
|
+
# Output only. Time of the event which fixed the Violation.
|
42
|
+
# If the violation is ACTIVE this will be empty.
|
43
|
+
# @!attribute [r] category
|
44
|
+
# @return [::String]
|
45
|
+
# Output only. Category under which this violation is mapped.
|
46
|
+
# e.g. Location, Service Usage, Access, Encryption, etc.
|
47
|
+
# @!attribute [r] state
|
48
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::Violation::State]
|
49
|
+
# Output only. State of the violation
|
50
|
+
# @!attribute [r] non_compliant_org_policy
|
51
|
+
# @return [::String]
|
52
|
+
# Output only. Immutable. Name of the OrgPolicy which was modified with
|
53
|
+
# non-compliant change and resulted this violation. Format:
|
54
|
+
# `projects/{project_number}/policies/{constraint_name}`
|
55
|
+
# `folders/{folder_id}/policies/{constraint_name}`
|
56
|
+
# `organizations/{organization_id}/policies/{constraint_name}`
|
57
|
+
# @!attribute [rw] folder_id
|
58
|
+
# @return [::Integer]
|
59
|
+
# The folder_id of the violation
|
60
|
+
# @!attribute [r] remediation
|
61
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::Violation::Remediation]
|
62
|
+
# Output only. Compliance violation remediation
|
63
|
+
class Violation
|
64
|
+
include ::Google::Protobuf::MessageExts
|
65
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
66
|
+
|
67
|
+
# Represents remediation guidance to resolve compliance violation for
|
68
|
+
# AssuredWorkload
|
69
|
+
# @!attribute [rw] instructions
|
70
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::Violation::Remediation::Instructions]
|
71
|
+
# Required. Remediation instructions to resolve violations
|
72
|
+
# @!attribute [rw] compliant_values
|
73
|
+
# @return [::Array<::String>]
|
74
|
+
# Values that can resolve the violation
|
75
|
+
# For example: for list org policy violations, this will either be the list
|
76
|
+
# of allowed or denied values
|
77
|
+
# @!attribute [r] remediation_type
|
78
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::Violation::Remediation::RemediationType]
|
79
|
+
# Output only. Remediation type based on the type of org policy values
|
80
|
+
# violated
|
81
|
+
class Remediation
|
82
|
+
include ::Google::Protobuf::MessageExts
|
83
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
84
|
+
|
85
|
+
# Instructions to remediate violation
|
86
|
+
# @!attribute [rw] gcloud_instructions
|
87
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::Violation::Remediation::Instructions::Gcloud]
|
88
|
+
# Remediation instructions to resolve violation via gcloud cli
|
89
|
+
# @!attribute [rw] console_instructions
|
90
|
+
# @return [::Google::Cloud::CloudControlsPartner::V1::Violation::Remediation::Instructions::Console]
|
91
|
+
# Remediation instructions to resolve violation via cloud console
|
92
|
+
class Instructions
|
93
|
+
include ::Google::Protobuf::MessageExts
|
94
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
95
|
+
|
96
|
+
# Remediation instructions to resolve violation via gcloud cli
|
97
|
+
# @!attribute [rw] gcloud_commands
|
98
|
+
# @return [::Array<::String>]
|
99
|
+
# Gcloud command to resolve violation
|
100
|
+
# @!attribute [rw] steps
|
101
|
+
# @return [::Array<::String>]
|
102
|
+
# Steps to resolve violation via gcloud cli
|
103
|
+
# @!attribute [rw] additional_links
|
104
|
+
# @return [::Array<::String>]
|
105
|
+
# Additional urls for more information about steps
|
106
|
+
class Gcloud
|
107
|
+
include ::Google::Protobuf::MessageExts
|
108
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
109
|
+
end
|
110
|
+
|
111
|
+
# Remediation instructions to resolve violation via cloud console
|
112
|
+
# @!attribute [rw] console_uris
|
113
|
+
# @return [::Array<::String>]
|
114
|
+
# Link to console page where violations can be resolved
|
115
|
+
# @!attribute [rw] steps
|
116
|
+
# @return [::Array<::String>]
|
117
|
+
# Steps to resolve violation via cloud console
|
118
|
+
# @!attribute [rw] additional_links
|
119
|
+
# @return [::Array<::String>]
|
120
|
+
# Additional urls for more information about steps
|
121
|
+
class Console
|
122
|
+
include ::Google::Protobuf::MessageExts
|
123
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
# Classifying remediation into various types based on the kind of
|
128
|
+
# violation. For example, violations caused due to changes in boolean org
|
129
|
+
# policy requires different remediation instructions compared to violation
|
130
|
+
# caused due to changes in allowed values of list org policy.
|
131
|
+
module RemediationType
|
132
|
+
# Unspecified remediation type
|
133
|
+
REMEDIATION_TYPE_UNSPECIFIED = 0
|
134
|
+
|
135
|
+
# Remediation type for boolean org policy
|
136
|
+
REMEDIATION_BOOLEAN_ORG_POLICY_VIOLATION = 1
|
137
|
+
|
138
|
+
# Remediation type for list org policy which have allowed values in the
|
139
|
+
# monitoring rule
|
140
|
+
REMEDIATION_LIST_ALLOWED_VALUES_ORG_POLICY_VIOLATION = 2
|
141
|
+
|
142
|
+
# Remediation type for list org policy which have denied values in the
|
143
|
+
# monitoring rule
|
144
|
+
REMEDIATION_LIST_DENIED_VALUES_ORG_POLICY_VIOLATION = 3
|
145
|
+
|
146
|
+
# Remediation type for gcp.restrictCmekCryptoKeyProjects
|
147
|
+
REMEDIATION_RESTRICT_CMEK_CRYPTO_KEY_PROJECTS_ORG_POLICY_VIOLATION = 4
|
148
|
+
|
149
|
+
# Remediation type for resource violation.
|
150
|
+
REMEDIATION_RESOURCE_VIOLATION = 5
|
151
|
+
end
|
152
|
+
end
|
153
|
+
|
154
|
+
# Violation State Values
|
155
|
+
module State
|
156
|
+
# Unspecified state.
|
157
|
+
STATE_UNSPECIFIED = 0
|
158
|
+
|
159
|
+
# Violation is resolved.
|
160
|
+
RESOLVED = 1
|
161
|
+
|
162
|
+
# Violation is Unresolved
|
163
|
+
UNRESOLVED = 2
|
164
|
+
|
165
|
+
# Violation is Exception
|
166
|
+
EXCEPTION = 3
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
170
|
+
# Message for requesting list of Violations
|
171
|
+
# @!attribute [rw] parent
|
172
|
+
# @return [::String]
|
173
|
+
# Required. Parent resource
|
174
|
+
# Format
|
175
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}`
|
176
|
+
# @!attribute [rw] page_size
|
177
|
+
# @return [::Integer]
|
178
|
+
# Optional. The maximum number of customers row to return. The service may
|
179
|
+
# return fewer than this value. If unspecified, at most 10 customers will be
|
180
|
+
# returned.
|
181
|
+
# @!attribute [rw] page_token
|
182
|
+
# @return [::String]
|
183
|
+
# Optional. A page token, received from a previous `ListViolations` call.
|
184
|
+
# Provide this to retrieve the subsequent page.
|
185
|
+
# @!attribute [rw] filter
|
186
|
+
# @return [::String]
|
187
|
+
# Optional. Filtering results
|
188
|
+
# @!attribute [rw] order_by
|
189
|
+
# @return [::String]
|
190
|
+
# Optional. Hint for how to order the results
|
191
|
+
# @!attribute [rw] interval
|
192
|
+
# @return [::Google::Type::Interval]
|
193
|
+
# Optional. Specifies the interval for retrieving violations.
|
194
|
+
# if unspecified, all violations will be returned.
|
195
|
+
class ListViolationsRequest
|
196
|
+
include ::Google::Protobuf::MessageExts
|
197
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
198
|
+
end
|
199
|
+
|
200
|
+
# Response message for list customer violation requests
|
201
|
+
# @!attribute [rw] violations
|
202
|
+
# @return [::Array<::Google::Cloud::CloudControlsPartner::V1::Violation>]
|
203
|
+
# List of violation
|
204
|
+
# @!attribute [rw] next_page_token
|
205
|
+
# @return [::String]
|
206
|
+
# A token that can be sent as `page_token` to retrieve the next page.
|
207
|
+
# If this field is omitted, there are no subsequent pages.
|
208
|
+
# @!attribute [rw] unreachable
|
209
|
+
# @return [::Array<::String>]
|
210
|
+
# Workloads that could not be reached due to permission errors or any other
|
211
|
+
# error. Ref: https://google.aip.dev/217
|
212
|
+
class ListViolationsResponse
|
213
|
+
include ::Google::Protobuf::MessageExts
|
214
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
215
|
+
end
|
216
|
+
|
217
|
+
# Message for getting a Violation
|
218
|
+
# @!attribute [rw] name
|
219
|
+
# @return [::String]
|
220
|
+
# Required. Format:
|
221
|
+
# `organizations/{organization}/locations/{location}/customers/{customer}/workloads/{workload}/violations/{violation}`
|
222
|
+
class GetViolationRequest
|
223
|
+
include ::Google::Protobuf::MessageExts
|
224
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
225
|
+
end
|
226
|
+
end
|
227
|
+
end
|
228
|
+
end
|
229
|
+
end
|