google-cloud-network_security-v1 0.a → 0.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.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/network_security/v1/address_group_service/client.rb +1457 -0
  6. data/lib/google/cloud/network_security/v1/address_group_service/credentials.rb +47 -0
  7. data/lib/google/cloud/network_security/v1/address_group_service/operations.rb +843 -0
  8. data/lib/google/cloud/network_security/v1/address_group_service/paths.rb +110 -0
  9. data/lib/google/cloud/network_security/v1/address_group_service.rb +52 -0
  10. data/lib/google/cloud/network_security/v1/dns_threat_detector_service/client.rb +900 -0
  11. data/lib/google/cloud/network_security/v1/dns_threat_detector_service/credentials.rb +47 -0
  12. data/lib/google/cloud/network_security/v1/dns_threat_detector_service/paths.rb +86 -0
  13. data/lib/google/cloud/network_security/v1/dns_threat_detector_service.rb +49 -0
  14. data/lib/google/cloud/network_security/v1/firewall_activation/client.rb +2098 -0
  15. data/lib/google/cloud/network_security/v1/firewall_activation/credentials.rb +47 -0
  16. data/lib/google/cloud/network_security/v1/firewall_activation/operations.rb +843 -0
  17. data/lib/google/cloud/network_security/v1/firewall_activation/paths.rb +165 -0
  18. data/lib/google/cloud/network_security/v1/firewall_activation.rb +50 -0
  19. data/lib/google/cloud/network_security/v1/intercept/client.rb +2599 -0
  20. data/lib/google/cloud/network_security/v1/intercept/credentials.rb +47 -0
  21. data/lib/google/cloud/network_security/v1/intercept/operations.rb +843 -0
  22. data/lib/google/cloud/network_security/v1/intercept/paths.rb +160 -0
  23. data/lib/google/cloud/network_security/v1/intercept.rb +51 -0
  24. data/lib/google/cloud/network_security/v1/mirroring/client.rb +2598 -0
  25. data/lib/google/cloud/network_security/v1/mirroring/credentials.rb +47 -0
  26. data/lib/google/cloud/network_security/v1/mirroring/operations.rb +843 -0
  27. data/lib/google/cloud/network_security/v1/mirroring/paths.rb +160 -0
  28. data/lib/google/cloud/network_security/v1/mirroring.rb +50 -0
  29. data/lib/google/cloud/network_security/v1/network_security/client.rb +5161 -0
  30. data/lib/google/cloud/network_security/v1/network_security/credentials.rb +47 -0
  31. data/lib/google/cloud/network_security/v1/network_security/operations.rb +843 -0
  32. data/lib/google/cloud/network_security/v1/network_security/paths.rb +280 -0
  33. data/lib/google/cloud/network_security/v1/network_security.rb +52 -0
  34. data/lib/google/cloud/network_security/v1/organization_address_group_service/client.rb +1457 -0
  35. data/lib/google/cloud/network_security/v1/organization_address_group_service/credentials.rb +47 -0
  36. data/lib/google/cloud/network_security/v1/organization_address_group_service/operations.rb +843 -0
  37. data/lib/google/cloud/network_security/v1/organization_address_group_service/paths.rb +110 -0
  38. data/lib/google/cloud/network_security/v1/organization_address_group_service.rb +52 -0
  39. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/client.rb +1471 -0
  40. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/credentials.rb +47 -0
  41. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/operations.rb +843 -0
  42. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/paths.rb +191 -0
  43. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service.rb +50 -0
  44. data/lib/google/cloud/network_security/v1/security_profile_group_service/client.rb +1472 -0
  45. data/lib/google/cloud/network_security/v1/security_profile_group_service/credentials.rb +47 -0
  46. data/lib/google/cloud/network_security/v1/security_profile_group_service/operations.rb +843 -0
  47. data/lib/google/cloud/network_security/v1/security_profile_group_service/paths.rb +191 -0
  48. data/lib/google/cloud/network_security/v1/security_profile_group_service.rb +51 -0
  49. data/lib/google/cloud/network_security/v1/sse_realm_service/client.rb +1316 -0
  50. data/lib/google/cloud/network_security/v1/sse_realm_service/credentials.rb +47 -0
  51. data/lib/google/cloud/network_security/v1/sse_realm_service/operations.rb +843 -0
  52. data/lib/google/cloud/network_security/v1/sse_realm_service/paths.rb +88 -0
  53. data/lib/google/cloud/network_security/v1/sse_realm_service.rb +50 -0
  54. data/lib/google/cloud/network_security/v1/version.rb +7 -2
  55. data/lib/google/cloud/network_security/v1.rb +49 -0
  56. data/lib/google/cloud/networksecurity/v1/address_group_pb.rb +46 -0
  57. data/lib/google/cloud/networksecurity/v1/address_group_services_pb.rb +97 -0
  58. data/lib/google/cloud/networksecurity/v1/authorization_policy_pb.rb +37 -0
  59. data/lib/google/cloud/networksecurity/v1/authz_policy_pb.rb +56 -0
  60. data/lib/google/cloud/networksecurity/v1/backend_authentication_config_pb.rb +33 -0
  61. data/lib/google/cloud/networksecurity/v1/client_tls_policy_pb.rb +33 -0
  62. data/lib/google/cloud/networksecurity/v1/common_pb.rb +24 -0
  63. data/lib/google/cloud/networksecurity/v1/dns_threat_detector_pb.rb +36 -0
  64. data/lib/google/cloud/networksecurity/v1/dns_threat_detector_services_pb.rb +53 -0
  65. data/lib/google/cloud/networksecurity/v1/firewall_activation_pb.rb +48 -0
  66. data/lib/google/cloud/networksecurity/v1/firewall_activation_services_pb.rb +73 -0
  67. data/lib/google/cloud/networksecurity/v1/gateway_security_policy_pb.rb +32 -0
  68. data/lib/google/cloud/networksecurity/v1/gateway_security_policy_rule_pb.rb +33 -0
  69. data/lib/google/cloud/networksecurity/v1/intercept_pb.rb +71 -0
  70. data/lib/google/cloud/networksecurity/v1/intercept_services_pb.rb +104 -0
  71. data/lib/google/cloud/networksecurity/v1/mirroring_pb.rb +72 -0
  72. data/lib/google/cloud/networksecurity/v1/mirroring_services_pb.rb +103 -0
  73. data/lib/google/cloud/networksecurity/v1/network_security_pb.rb +35 -0
  74. data/lib/google/cloud/networksecurity/v1/network_security_services_pb.rb +138 -0
  75. data/lib/google/cloud/networksecurity/v1/security_profile_group_intercept_pb.rb +24 -0
  76. data/lib/google/cloud/networksecurity/v1/security_profile_group_mirroring_pb.rb +24 -0
  77. data/lib/google/cloud/networksecurity/v1/security_profile_group_pb.rb +31 -0
  78. data/lib/google/cloud/networksecurity/v1/security_profile_group_service_pb.rb +42 -0
  79. data/lib/google/cloud/networksecurity/v1/security_profile_group_service_services_pb.rb +98 -0
  80. data/lib/google/cloud/networksecurity/v1/security_profile_group_threatprevention_pb.rb +30 -0
  81. data/lib/google/cloud/networksecurity/v1/security_profile_group_urlfiltering_pb.rb +25 -0
  82. data/lib/google/cloud/networksecurity/v1/server_tls_policy_pb.rb +35 -0
  83. data/lib/google/cloud/networksecurity/v1/sse_realm_pb.rb +46 -0
  84. data/lib/google/cloud/networksecurity/v1/sse_realm_services_pb.rb +59 -0
  85. data/lib/google/cloud/networksecurity/v1/tls_inspection_policy_pb.rb +34 -0
  86. data/lib/google/cloud/networksecurity/v1/tls_pb.rb +26 -0
  87. data/lib/google/cloud/networksecurity/v1/url_list_pb.rb +32 -0
  88. data/lib/google-cloud-network_security-v1.rb +21 -0
  89. data/proto_docs/README.md +4 -0
  90. data/proto_docs/google/api/client.rb +593 -0
  91. data/proto_docs/google/api/field_behavior.rb +85 -0
  92. data/proto_docs/google/api/field_info.rb +88 -0
  93. data/proto_docs/google/api/launch_stage.rb +71 -0
  94. data/proto_docs/google/api/resource.rb +227 -0
  95. data/proto_docs/google/cloud/networksecurity/v1/address_group.rb +374 -0
  96. data/proto_docs/google/cloud/networksecurity/v1/authorization_policy.rb +263 -0
  97. data/proto_docs/google/cloud/networksecurity/v1/authz_policy.rb +735 -0
  98. data/proto_docs/google/cloud/networksecurity/v1/backend_authentication_config.rb +217 -0
  99. data/proto_docs/google/cloud/networksecurity/v1/client_tls_policy.rb +162 -0
  100. data/proto_docs/google/cloud/networksecurity/v1/common.rb +57 -0
  101. data/proto_docs/google/cloud/networksecurity/v1/dns_threat_detector.rb +159 -0
  102. data/proto_docs/google/cloud/networksecurity/v1/firewall_activation.rb +469 -0
  103. data/proto_docs/google/cloud/networksecurity/v1/gateway_security_policy.rb +144 -0
  104. data/proto_docs/google/cloud/networksecurity/v1/gateway_security_policy_rule.rb +178 -0
  105. data/proto_docs/google/cloud/networksecurity/v1/intercept.rb +960 -0
  106. data/proto_docs/google/cloud/networksecurity/v1/mirroring.rb +970 -0
  107. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group.rb +166 -0
  108. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_intercept.rb +38 -0
  109. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_mirroring.rb +38 -0
  110. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_service.rb +211 -0
  111. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_threatprevention.rb +193 -0
  112. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_urlfiltering.rb +66 -0
  113. data/proto_docs/google/cloud/networksecurity/v1/server_tls_policy.rb +251 -0
  114. data/proto_docs/google/cloud/networksecurity/v1/sse_realm.rb +388 -0
  115. data/proto_docs/google/cloud/networksecurity/v1/tls.rb +90 -0
  116. data/proto_docs/google/cloud/networksecurity/v1/tls_inspection_policy.rb +239 -0
  117. data/proto_docs/google/cloud/networksecurity/v1/url_list.rb +144 -0
  118. data/proto_docs/google/longrunning/operations.rb +191 -0
  119. data/proto_docs/google/protobuf/any.rb +145 -0
  120. data/proto_docs/google/protobuf/duration.rb +98 -0
  121. data/proto_docs/google/protobuf/empty.rb +34 -0
  122. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  123. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  124. data/proto_docs/google/rpc/status.rb +48 -0
  125. data/proto_docs/google/type/expr.rb +75 -0
  126. metadata +186 -9
@@ -0,0 +1,217 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 NetworkSecurity
23
+ module V1
24
+ # BackendAuthenticationConfig message groups the TrustConfig together with
25
+ # other settings that control how the load balancer authenticates, and
26
+ # expresses its identity to, the backend:
27
+ #
28
+ # * `trustConfig` is the attached TrustConfig.
29
+ #
30
+ # * `wellKnownRoots` indicates whether the load balance should trust backend
31
+ # server certificates that are issued by public certificate authorities, in
32
+ # addition to certificates trusted by the TrustConfig.
33
+ #
34
+ # * `clientCertificate` is a client certificate that the load balancer uses to
35
+ # express its identity to the backend, if the connection to the backend uses
36
+ # mTLS.
37
+ #
38
+ # You can attach the BackendAuthenticationConfig to the load balancer's
39
+ # BackendService directly determining how that BackendService negotiates TLS.
40
+ # @!attribute [rw] name
41
+ # @return [::String]
42
+ # Required. Name of the BackendAuthenticationConfig resource. It matches the
43
+ # pattern
44
+ # `projects/*/locations/{location}/backendAuthenticationConfigs/{backend_authentication_config}`
45
+ # @!attribute [rw] description
46
+ # @return [::String]
47
+ # Optional. Free-text description of the resource.
48
+ # @!attribute [r] create_time
49
+ # @return [::Google::Protobuf::Timestamp]
50
+ # Output only. The timestamp when the resource was created.
51
+ # @!attribute [r] update_time
52
+ # @return [::Google::Protobuf::Timestamp]
53
+ # Output only. The timestamp when the resource was updated.
54
+ # @!attribute [rw] labels
55
+ # @return [::Google::Protobuf::Map{::String => ::String}]
56
+ # Set of label tags associated with the resource.
57
+ # @!attribute [rw] client_certificate
58
+ # @return [::String]
59
+ # Optional. A reference to a certificatemanager.googleapis.com.Certificate
60
+ # resource. This is a relative resource path following the form
61
+ # "projects/\\{project}/locations/\\{location}/certificates/\\{certificate}".
62
+ #
63
+ # Used by a BackendService to negotiate mTLS when the backend connection uses
64
+ # TLS and the backend requests a client certificate. Must have a CLIENT_AUTH
65
+ # scope.
66
+ # @!attribute [rw] trust_config
67
+ # @return [::String]
68
+ # Optional. A reference to a TrustConfig resource from the
69
+ # certificatemanager.googleapis.com namespace. This is a relative resource
70
+ # path following the form
71
+ # "projects/\\{project}/locations/\\{location}/trustConfigs/\\{trust_config}".
72
+ #
73
+ # A BackendService uses the chain of trust represented by this TrustConfig,
74
+ # if specified, to validate the server certificates presented by the backend.
75
+ # Required unless wellKnownRoots is set to PUBLIC_ROOTS.
76
+ # @!attribute [rw] well_known_roots
77
+ # @return [::Google::Cloud::NetworkSecurity::V1::BackendAuthenticationConfig::WellKnownRoots]
78
+ # Well known roots to use for server certificate validation.
79
+ # @!attribute [r] etag
80
+ # @return [::String]
81
+ # Output only. Etag of the resource.
82
+ class BackendAuthenticationConfig
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+
86
+ # @!attribute [rw] key
87
+ # @return [::String]
88
+ # @!attribute [rw] value
89
+ # @return [::String]
90
+ class LabelsEntry
91
+ include ::Google::Protobuf::MessageExts
92
+ extend ::Google::Protobuf::MessageExts::ClassMethods
93
+ end
94
+
95
+ # Enum to specify the well known roots to use for server certificate
96
+ # validation.
97
+ module WellKnownRoots
98
+ # Equivalent to NONE.
99
+ WELL_KNOWN_ROOTS_UNSPECIFIED = 0
100
+
101
+ # The BackendService will only validate server certificates against roots
102
+ # specified in TrustConfig.
103
+ NONE = 1
104
+
105
+ # The BackendService uses a set of well-known public roots, in addition to
106
+ # any roots specified in the trustConfig field, when validating the server
107
+ # certificates presented by the backend. Validation with these roots is
108
+ # only considered when the TlsSettings.sni field in the BackendService is
109
+ # set.
110
+ #
111
+ # The well-known roots are a set of root CAs managed by Google. CAs in this
112
+ # set can be added or removed without notice.
113
+ PUBLIC_ROOTS = 2
114
+ end
115
+ end
116
+
117
+ # Request used by the ListBackendAuthenticationConfigs method.
118
+ # @!attribute [rw] parent
119
+ # @return [::String]
120
+ # Required. The project and location from which the
121
+ # BackendAuthenticationConfigs should be listed, specified in the format
122
+ # `projects/*/locations/{location}`.
123
+ # @!attribute [rw] page_size
124
+ # @return [::Integer]
125
+ # Maximum number of BackendAuthenticationConfigs to return per call.
126
+ # @!attribute [rw] page_token
127
+ # @return [::String]
128
+ # The value returned by the last `ListBackendAuthenticationConfigsResponse`
129
+ # Indicates that this is a continuation of a prior
130
+ # `ListBackendAuthenticationConfigs` call, and that the system
131
+ # should return the next page of data.
132
+ class ListBackendAuthenticationConfigsRequest
133
+ include ::Google::Protobuf::MessageExts
134
+ extend ::Google::Protobuf::MessageExts::ClassMethods
135
+ end
136
+
137
+ # Response returned by the ListBackendAuthenticationConfigs method.
138
+ # @!attribute [rw] backend_authentication_configs
139
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::BackendAuthenticationConfig>]
140
+ # List of BackendAuthenticationConfig resources.
141
+ # @!attribute [rw] next_page_token
142
+ # @return [::String]
143
+ # If there might be more results than those appearing in this response, then
144
+ # `next_page_token` is included. To get the next set of results, call this
145
+ # method again using the value of `next_page_token` as `page_token`.
146
+ # @!attribute [rw] unreachable
147
+ # @return [::Array<::String>]
148
+ # Locations that could not be reached.
149
+ class ListBackendAuthenticationConfigsResponse
150
+ include ::Google::Protobuf::MessageExts
151
+ extend ::Google::Protobuf::MessageExts::ClassMethods
152
+ end
153
+
154
+ # Request used by the GetBackendAuthenticationConfig method.
155
+ # @!attribute [rw] name
156
+ # @return [::String]
157
+ # Required. A name of the BackendAuthenticationConfig to get. Must be in the
158
+ # format `projects/*/locations/{location}/backendAuthenticationConfigs/*`.
159
+ class GetBackendAuthenticationConfigRequest
160
+ include ::Google::Protobuf::MessageExts
161
+ extend ::Google::Protobuf::MessageExts::ClassMethods
162
+ end
163
+
164
+ # Request used by the CreateBackendAuthenticationConfig method.
165
+ # @!attribute [rw] parent
166
+ # @return [::String]
167
+ # Required. The parent resource of the BackendAuthenticationConfig. Must be
168
+ # in the format `projects/*/locations/{location}`.
169
+ # @!attribute [rw] backend_authentication_config_id
170
+ # @return [::String]
171
+ # Required. Short name of the BackendAuthenticationConfig resource to be
172
+ # created. This value should be 1-63 characters long, containing only
173
+ # letters, numbers, hyphens, and underscores, and should not start with a
174
+ # number. E.g. "backend-auth-config".
175
+ # @!attribute [rw] backend_authentication_config
176
+ # @return [::Google::Cloud::NetworkSecurity::V1::BackendAuthenticationConfig]
177
+ # Required. BackendAuthenticationConfig resource to be created.
178
+ class CreateBackendAuthenticationConfigRequest
179
+ include ::Google::Protobuf::MessageExts
180
+ extend ::Google::Protobuf::MessageExts::ClassMethods
181
+ end
182
+
183
+ # Request used by UpdateBackendAuthenticationConfig method.
184
+ # @!attribute [rw] update_mask
185
+ # @return [::Google::Protobuf::FieldMask]
186
+ # Optional. Field mask is used to specify the fields to be overwritten in the
187
+ # BackendAuthenticationConfig resource by the update. The fields
188
+ # specified in the update_mask are relative to the resource, not
189
+ # the full request. A field will be overwritten if it is in the
190
+ # mask. If the user does not provide a mask then all fields will be
191
+ # overwritten.
192
+ # @!attribute [rw] backend_authentication_config
193
+ # @return [::Google::Cloud::NetworkSecurity::V1::BackendAuthenticationConfig]
194
+ # Required. Updated BackendAuthenticationConfig resource.
195
+ class UpdateBackendAuthenticationConfigRequest
196
+ include ::Google::Protobuf::MessageExts
197
+ extend ::Google::Protobuf::MessageExts::ClassMethods
198
+ end
199
+
200
+ # Request used by the DeleteBackendAuthenticationConfig method.
201
+ # @!attribute [rw] name
202
+ # @return [::String]
203
+ # Required. A name of the BackendAuthenticationConfig to delete. Must be in
204
+ # the format
205
+ # `projects/*/locations/{location}/backendAuthenticationConfigs/*`.
206
+ # @!attribute [rw] etag
207
+ # @return [::String]
208
+ # Optional. Etag of the resource.
209
+ # If this is provided, it must match the server's etag.
210
+ class DeleteBackendAuthenticationConfigRequest
211
+ include ::Google::Protobuf::MessageExts
212
+ extend ::Google::Protobuf::MessageExts::ClassMethods
213
+ end
214
+ end
215
+ end
216
+ end
217
+ end
@@ -0,0 +1,162 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 NetworkSecurity
23
+ module V1
24
+ # ClientTlsPolicy is a resource that specifies how a client should authenticate
25
+ # connections to backends of a service. This resource itself does not affect
26
+ # configuration unless it is attached to a backend service resource.
27
+ # @!attribute [rw] name
28
+ # @return [::String]
29
+ # Required. Name of the ClientTlsPolicy resource. It matches the pattern
30
+ # `projects/{project}/locations/{location}/clientTlsPolicies/{client_tls_policy}`
31
+ # @!attribute [rw] description
32
+ # @return [::String]
33
+ # Optional. Free-text description of the resource.
34
+ # @!attribute [r] create_time
35
+ # @return [::Google::Protobuf::Timestamp]
36
+ # Output only. The timestamp when the resource was created.
37
+ # @!attribute [r] update_time
38
+ # @return [::Google::Protobuf::Timestamp]
39
+ # Output only. The timestamp when the resource was updated.
40
+ # @!attribute [rw] labels
41
+ # @return [::Google::Protobuf::Map{::String => ::String}]
42
+ # Optional. Set of label tags associated with the resource.
43
+ # @!attribute [rw] sni
44
+ # @return [::String]
45
+ # Optional. Server Name Indication string to present to the server during TLS
46
+ # handshake. E.g: "secure.example.com".
47
+ # @!attribute [rw] client_certificate
48
+ # @return [::Google::Cloud::NetworkSecurity::V1::CertificateProvider]
49
+ # Optional. Defines a mechanism to provision client identity (public and
50
+ # private keys) for peer to peer authentication. The presence of this
51
+ # dictates mTLS.
52
+ # @!attribute [rw] server_validation_ca
53
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::ValidationCA>]
54
+ # Optional. Defines the mechanism to obtain the Certificate Authority
55
+ # certificate to validate the server certificate. If empty, client does not
56
+ # validate the server certificate.
57
+ class ClientTlsPolicy
58
+ include ::Google::Protobuf::MessageExts
59
+ extend ::Google::Protobuf::MessageExts::ClassMethods
60
+
61
+ # @!attribute [rw] key
62
+ # @return [::String]
63
+ # @!attribute [rw] value
64
+ # @return [::String]
65
+ class LabelsEntry
66
+ include ::Google::Protobuf::MessageExts
67
+ extend ::Google::Protobuf::MessageExts::ClassMethods
68
+ end
69
+ end
70
+
71
+ # Request used by the ListClientTlsPolicies method.
72
+ # @!attribute [rw] parent
73
+ # @return [::String]
74
+ # Required. The project and location from which the ClientTlsPolicies should
75
+ # be listed, specified in the format `projects/*/locations/{location}`.
76
+ # @!attribute [rw] page_size
77
+ # @return [::Integer]
78
+ # Maximum number of ClientTlsPolicies to return per call.
79
+ # @!attribute [rw] page_token
80
+ # @return [::String]
81
+ # The value returned by the last `ListClientTlsPoliciesResponse`
82
+ # Indicates that this is a continuation of a prior
83
+ # `ListClientTlsPolicies` call, and that the system
84
+ # should return the next page of data.
85
+ class ListClientTlsPoliciesRequest
86
+ include ::Google::Protobuf::MessageExts
87
+ extend ::Google::Protobuf::MessageExts::ClassMethods
88
+ end
89
+
90
+ # Response returned by the ListClientTlsPolicies method.
91
+ # @!attribute [rw] client_tls_policies
92
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::ClientTlsPolicy>]
93
+ # List of ClientTlsPolicy resources.
94
+ # @!attribute [rw] next_page_token
95
+ # @return [::String]
96
+ # If there might be more results than those appearing in this response, then
97
+ # `next_page_token` is included. To get the next set of results, call this
98
+ # method again using the value of `next_page_token` as `page_token`.
99
+ class ListClientTlsPoliciesResponse
100
+ include ::Google::Protobuf::MessageExts
101
+ extend ::Google::Protobuf::MessageExts::ClassMethods
102
+ end
103
+
104
+ # Request used by the GetClientTlsPolicy method.
105
+ # @!attribute [rw] name
106
+ # @return [::String]
107
+ # Required. A name of the ClientTlsPolicy to get. Must be in the format
108
+ # `projects/*/locations/{location}/clientTlsPolicies/*`.
109
+ class GetClientTlsPolicyRequest
110
+ include ::Google::Protobuf::MessageExts
111
+ extend ::Google::Protobuf::MessageExts::ClassMethods
112
+ end
113
+
114
+ # Request used by the CreateClientTlsPolicy method.
115
+ # @!attribute [rw] parent
116
+ # @return [::String]
117
+ # Required. The parent resource of the ClientTlsPolicy. Must be in
118
+ # the format `projects/*/locations/{location}`.
119
+ # @!attribute [rw] client_tls_policy_id
120
+ # @return [::String]
121
+ # Required. Short name of the ClientTlsPolicy resource to be created. This
122
+ # value should be 1-63 characters long, containing only letters, numbers,
123
+ # hyphens, and underscores, and should not start with a number. E.g.
124
+ # "client_mtls_policy".
125
+ # @!attribute [rw] client_tls_policy
126
+ # @return [::Google::Cloud::NetworkSecurity::V1::ClientTlsPolicy]
127
+ # Required. ClientTlsPolicy resource to be created.
128
+ class CreateClientTlsPolicyRequest
129
+ include ::Google::Protobuf::MessageExts
130
+ extend ::Google::Protobuf::MessageExts::ClassMethods
131
+ end
132
+
133
+ # Request used by UpdateClientTlsPolicy method.
134
+ # @!attribute [rw] update_mask
135
+ # @return [::Google::Protobuf::FieldMask]
136
+ # Optional. Field mask is used to specify the fields to be overwritten in the
137
+ # ClientTlsPolicy resource by the update. The fields
138
+ # specified in the update_mask are relative to the resource, not
139
+ # the full request. A field will be overwritten if it is in the
140
+ # mask. If the user does not provide a mask then all fields will be
141
+ # overwritten.
142
+ # @!attribute [rw] client_tls_policy
143
+ # @return [::Google::Cloud::NetworkSecurity::V1::ClientTlsPolicy]
144
+ # Required. Updated ClientTlsPolicy resource.
145
+ class UpdateClientTlsPolicyRequest
146
+ include ::Google::Protobuf::MessageExts
147
+ extend ::Google::Protobuf::MessageExts::ClassMethods
148
+ end
149
+
150
+ # Request used by the DeleteClientTlsPolicy method.
151
+ # @!attribute [rw] name
152
+ # @return [::String]
153
+ # Required. A name of the ClientTlsPolicy to delete. Must be in
154
+ # the format `projects/*/locations/{location}/clientTlsPolicies/*`.
155
+ class DeleteClientTlsPolicyRequest
156
+ include ::Google::Protobuf::MessageExts
157
+ extend ::Google::Protobuf::MessageExts::ClassMethods
158
+ end
159
+ end
160
+ end
161
+ end
162
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 NetworkSecurity
23
+ module V1
24
+ # Represents the metadata of the long-running operation.
25
+ # @!attribute [r] create_time
26
+ # @return [::Google::Protobuf::Timestamp]
27
+ # Output only. The time the operation was created.
28
+ # @!attribute [r] end_time
29
+ # @return [::Google::Protobuf::Timestamp]
30
+ # Output only. The time the operation finished running.
31
+ # @!attribute [r] target
32
+ # @return [::String]
33
+ # Output only. Server-defined resource path for the target of the operation.
34
+ # @!attribute [r] verb
35
+ # @return [::String]
36
+ # Output only. Name of the verb executed by the operation.
37
+ # @!attribute [r] status_message
38
+ # @return [::String]
39
+ # Output only. Human-readable status of the operation, if any.
40
+ # @!attribute [r] requested_cancellation
41
+ # @return [::Boolean]
42
+ # Output only. Identifies whether the user has requested cancellation
43
+ # of the operation. Operations that have successfully been cancelled
44
+ # have [Operation.error][] value with a
45
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
46
+ # `Code.CANCELLED`.
47
+ # @!attribute [r] api_version
48
+ # @return [::String]
49
+ # Output only. API version used to start the operation.
50
+ class OperationMetadata
51
+ include ::Google::Protobuf::MessageExts
52
+ extend ::Google::Protobuf::MessageExts::ClassMethods
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,159 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 NetworkSecurity
23
+ module V1
24
+ # A DNS threat detector sends DNS query logs to a _provider_ that then
25
+ # analyzes the logs to identify threat events in the DNS queries.
26
+ # By default, all VPC networks in your projects are included. You can exclude
27
+ # specific networks by supplying `excluded_networks`.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # Immutable. Identifier. Name of the DnsThreatDetector resource.
31
+ # @!attribute [r] create_time
32
+ # @return [::Google::Protobuf::Timestamp]
33
+ # Output only. Create time stamp.
34
+ # @!attribute [r] update_time
35
+ # @return [::Google::Protobuf::Timestamp]
36
+ # Output only. Update time stamp.
37
+ # @!attribute [rw] labels
38
+ # @return [::Google::Protobuf::Map{::String => ::String}]
39
+ # Optional. Any labels associated with the DnsThreatDetector, listed as key
40
+ # value pairs.
41
+ # @!attribute [rw] excluded_networks
42
+ # @return [::Array<::String>]
43
+ # Optional. A list of network resource names which aren't monitored by this
44
+ # DnsThreatDetector.
45
+ #
46
+ # Example:
47
+ # `projects/PROJECT_ID/global/networks/NETWORK_NAME`.
48
+ # @!attribute [rw] provider
49
+ # @return [::Google::Cloud::NetworkSecurity::V1::DnsThreatDetector::Provider]
50
+ # Required. The provider used for DNS threat analysis.
51
+ class DnsThreatDetector
52
+ include ::Google::Protobuf::MessageExts
53
+ extend ::Google::Protobuf::MessageExts::ClassMethods
54
+
55
+ # @!attribute [rw] key
56
+ # @return [::String]
57
+ # @!attribute [rw] value
58
+ # @return [::String]
59
+ class LabelsEntry
60
+ include ::Google::Protobuf::MessageExts
61
+ extend ::Google::Protobuf::MessageExts::ClassMethods
62
+ end
63
+
64
+ # Name of the provider used for DNS threat analysis.
65
+ module Provider
66
+ # An unspecified provider.
67
+ PROVIDER_UNSPECIFIED = 0
68
+
69
+ # The Infoblox DNS threat detector provider.
70
+ INFOBLOX = 1
71
+ end
72
+ end
73
+
74
+ # The message for requesting a list of DnsThreatDetectors in the project.
75
+ # @!attribute [rw] parent
76
+ # @return [::String]
77
+ # Required. The parent value for `ListDnsThreatDetectorsRequest`.
78
+ # @!attribute [rw] page_size
79
+ # @return [::Integer]
80
+ # Optional. The requested page size. The server may return fewer items than
81
+ # requested. If unspecified, the server picks an appropriate default.
82
+ # @!attribute [rw] page_token
83
+ # @return [::String]
84
+ # Optional. A page token received from a previous
85
+ # `ListDnsThreatDetectorsRequest` call. Provide this to retrieve the
86
+ # subsequent page.
87
+ class ListDnsThreatDetectorsRequest
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+ end
91
+
92
+ # The response message to requesting a list of DnsThreatDetectors.
93
+ # @!attribute [rw] dns_threat_detectors
94
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::DnsThreatDetector>]
95
+ # The list of DnsThreatDetector resources.
96
+ # @!attribute [rw] next_page_token
97
+ # @return [::String]
98
+ # A token, which can be sent as `page_token`, to retrieve the next page.
99
+ # @!attribute [rw] unreachable
100
+ # @return [::Array<::String>]
101
+ # Unordered list. Unreachable `DnsThreatDetector` resources.
102
+ class ListDnsThreatDetectorsResponse
103
+ include ::Google::Protobuf::MessageExts
104
+ extend ::Google::Protobuf::MessageExts::ClassMethods
105
+ end
106
+
107
+ # The message sent to get a DnsThreatDetector.
108
+ # @!attribute [rw] name
109
+ # @return [::String]
110
+ # Required. Name of the DnsThreatDetector resource.
111
+ class GetDnsThreatDetectorRequest
112
+ include ::Google::Protobuf::MessageExts
113
+ extend ::Google::Protobuf::MessageExts::ClassMethods
114
+ end
115
+
116
+ # The message to create a DnsThreatDetector.
117
+ # @!attribute [rw] parent
118
+ # @return [::String]
119
+ # Required. The value for the parent of the DnsThreatDetector resource.
120
+ # @!attribute [rw] dns_threat_detector_id
121
+ # @return [::String]
122
+ # Optional. The ID of the requesting DnsThreatDetector object.
123
+ # If this field is not supplied, the service generates an identifier.
124
+ # @!attribute [rw] dns_threat_detector
125
+ # @return [::Google::Cloud::NetworkSecurity::V1::DnsThreatDetector]
126
+ # Required. The `DnsThreatDetector` resource to create.
127
+ class CreateDnsThreatDetectorRequest
128
+ include ::Google::Protobuf::MessageExts
129
+ extend ::Google::Protobuf::MessageExts::ClassMethods
130
+ end
131
+
132
+ # The message for updating a DnsThreatDetector.
133
+ # @!attribute [rw] update_mask
134
+ # @return [::Google::Protobuf::FieldMask]
135
+ # Optional. The field mask is used to specify the fields to be overwritten in
136
+ # the DnsThreatDetector resource by the update. The fields specified in the
137
+ # update_mask are relative to the resource, not the full request. A field
138
+ # will be overwritten if it is in the mask. If the mask is not provided then
139
+ # all fields present in the request will be overwritten.
140
+ # @!attribute [rw] dns_threat_detector
141
+ # @return [::Google::Cloud::NetworkSecurity::V1::DnsThreatDetector]
142
+ # Required. The DnsThreatDetector resource being updated.
143
+ class UpdateDnsThreatDetectorRequest
144
+ include ::Google::Protobuf::MessageExts
145
+ extend ::Google::Protobuf::MessageExts::ClassMethods
146
+ end
147
+
148
+ # The message for deleting a DnsThreatDetector.
149
+ # @!attribute [rw] name
150
+ # @return [::String]
151
+ # Required. Name of the DnsThreatDetector resource.
152
+ class DeleteDnsThreatDetectorRequest
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+ end
156
+ end
157
+ end
158
+ end
159
+ end