google-cloud-policy_troubleshooter-v1 0.3.0 → 0.3.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +8 -8
- data/README.md +1 -1
- data/lib/google/cloud/policy_troubleshooter/v1/iam_checker/client.rb +49 -42
- data/lib/google/cloud/policy_troubleshooter/v1/version.rb +1 -1
- data/lib/google/cloud/policytroubleshooter/v1/checker_pb.rb +2 -2
- data/lib/google/cloud/policytroubleshooter/v1/checker_services_pb.rb +1 -1
- data/lib/google/cloud/policytroubleshooter/v1/explanations_pb.rb +2 -2
- data/proto_docs/google/api/field_behavior.rb +7 -1
- data/proto_docs/google/type/expr.rb +35 -12
- metadata +15 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 635964024337f90223fb9098ff747d9091765a5a8449b927d5717bc6a4b60c00
|
4
|
+
data.tar.gz: 5bbce2b7e7c250bb4a089e3dd42ae79fe4ad0c071a76607a4db0616d1d50afe1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a1fa663c954462fdc934be908a5826f015c78b509c8760d1e804454d24b7a5cda6399aa3b3ba2c811a69a2366f11bdbb45ebffcb3edefe3135cbdeda585fb7e7
|
7
|
+
data.tar.gz: feab98043dc05e27d203bec4a91c9ef1d7d934313294fc76364dce8d1fbb87702efe3008eee6dfbc3fc79bec3fc4e387edd9b4550e88a9b43c081349fc26c44d
|
data/AUTHENTICATION.md
CHANGED
@@ -66,11 +66,11 @@ The environment variables that google-cloud-policy_troubleshooter-v1
|
|
66
66
|
checks for credentials are configured on the service Credentials class (such as
|
67
67
|
{::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Credentials}):
|
68
68
|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
69
|
+
* `POLICY_TROUBLESHOOTER_CREDENTIALS` - Path to JSON file, or JSON contents
|
70
|
+
* `POLICY_TROUBLESHOOTER_KEYFILE` - Path to JSON file, or JSON contents
|
71
|
+
* `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
|
72
|
+
* `GOOGLE_CLOUD_KEYFILE` - Path to JSON file, or JSON contents
|
73
|
+
* `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
|
74
74
|
|
75
75
|
```ruby
|
76
76
|
require "google/cloud/policy_troubleshooter/v1"
|
@@ -82,8 +82,8 @@ client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new
|
|
82
82
|
|
83
83
|
### Configuration
|
84
84
|
|
85
|
-
The **Credentials JSON** can be configured instead of
|
86
|
-
environment
|
85
|
+
The path to the **Credentials JSON** file can be configured instead of storing
|
86
|
+
it in an environment variable. Either on an individual client initialization:
|
87
87
|
|
88
88
|
```ruby
|
89
89
|
require "google/cloud/policy_troubleshooter/v1"
|
@@ -93,7 +93,7 @@ client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new do |c
|
|
93
93
|
end
|
94
94
|
```
|
95
95
|
|
96
|
-
Or
|
96
|
+
Or globally for all clients:
|
97
97
|
|
98
98
|
```ruby
|
99
99
|
require "google/cloud/policy_troubleshooter/v1"
|
data/README.md
CHANGED
@@ -33,7 +33,7 @@ In order to use this library, you first need to go through the following steps:
|
|
33
33
|
require "google/cloud/policy_troubleshooter/v1"
|
34
34
|
|
35
35
|
client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new
|
36
|
-
request =
|
36
|
+
request = ::Google::Cloud::PolicyTroubleshooter::V1::TroubleshootIamPolicyRequest.new # (request fields as keyword arguments...)
|
37
37
|
response = client.troubleshoot_iam_policy request
|
38
38
|
```
|
39
39
|
|
@@ -41,13 +41,12 @@ module Google
|
|
41
41
|
# See {::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client::Configuration}
|
42
42
|
# for a description of the configuration fields.
|
43
43
|
#
|
44
|
-
#
|
44
|
+
# @example
|
45
45
|
#
|
46
|
-
#
|
47
|
-
#
|
48
|
-
#
|
49
|
-
#
|
50
|
-
# end
|
46
|
+
# # Modify the configuration for all IamChecker clients
|
47
|
+
# ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.configure do |config|
|
48
|
+
# config.timeout = 10.0
|
49
|
+
# end
|
51
50
|
#
|
52
51
|
# @yield [config] Configure the Client client.
|
53
52
|
# @yieldparam config [Client::Configuration]
|
@@ -67,10 +66,7 @@ module Google
|
|
67
66
|
|
68
67
|
default_config.timeout = 60.0
|
69
68
|
default_config.retry_policy = {
|
70
|
-
initial_delay: 1.0,
|
71
|
-
max_delay: 60.0,
|
72
|
-
multiplier: 1.3,
|
73
|
-
retry_codes: [14, 2]
|
69
|
+
initial_delay: 1.0, max_delay: 60.0, multiplier: 1.3, retry_codes: [14, 2]
|
74
70
|
}
|
75
71
|
|
76
72
|
default_config.rpcs.troubleshoot_iam_policy.timeout = 60.0
|
@@ -104,19 +100,15 @@ module Google
|
|
104
100
|
##
|
105
101
|
# Create a new IamChecker client object.
|
106
102
|
#
|
107
|
-
#
|
108
|
-
#
|
109
|
-
# To create a new IamChecker client with the default
|
110
|
-
# configuration:
|
103
|
+
# @example
|
111
104
|
#
|
112
|
-
#
|
105
|
+
# # Create a client using the default configuration
|
106
|
+
# client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new
|
113
107
|
#
|
114
|
-
#
|
115
|
-
#
|
116
|
-
#
|
117
|
-
#
|
118
|
-
# config.timeout = 10.0
|
119
|
-
# end
|
108
|
+
# # Create a client using a custom configuration
|
109
|
+
# client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new do |config|
|
110
|
+
# config.timeout = 10.0
|
111
|
+
# end
|
120
112
|
#
|
121
113
|
# @yield [config] Configure the IamChecker client.
|
122
114
|
# @yieldparam config [Client::Configuration]
|
@@ -136,14 +128,13 @@ module Google
|
|
136
128
|
|
137
129
|
# Create credentials
|
138
130
|
credentials = @config.credentials
|
139
|
-
# Use self-signed JWT if the
|
131
|
+
# Use self-signed JWT if the endpoint is unchanged from default,
|
140
132
|
# but only if the default endpoint does not have a region prefix.
|
141
|
-
enable_self_signed_jwt = @config.
|
142
|
-
@config.endpoint == Client.configure.endpoint &&
|
133
|
+
enable_self_signed_jwt = @config.endpoint == Client.configure.endpoint &&
|
143
134
|
!@config.endpoint.split(".").first.include?("-")
|
144
135
|
credentials ||= Credentials.default scope: @config.scope,
|
145
136
|
enable_self_signed_jwt: enable_self_signed_jwt
|
146
|
-
if credentials.is_a?(String) || credentials.is_a?(Hash)
|
137
|
+
if credentials.is_a?(::String) || credentials.is_a?(::Hash)
|
147
138
|
credentials = Credentials.new credentials, scope: @config.scope
|
148
139
|
end
|
149
140
|
@quota_project_id = @config.quota_project
|
@@ -191,6 +182,21 @@ module Google
|
|
191
182
|
#
|
192
183
|
# @raise [::Google::Cloud::Error] if the RPC is aborted.
|
193
184
|
#
|
185
|
+
# @example Basic example
|
186
|
+
# require "google/cloud/policy_troubleshooter/v1"
|
187
|
+
#
|
188
|
+
# # Create a client object. The client can be reused for multiple calls.
|
189
|
+
# client = Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new
|
190
|
+
#
|
191
|
+
# # Create a request. To set request fields, pass in keyword arguments.
|
192
|
+
# request = Google::Cloud::PolicyTroubleshooter::V1::TroubleshootIamPolicyRequest.new
|
193
|
+
#
|
194
|
+
# # Call the troubleshoot_iam_policy method.
|
195
|
+
# result = client.troubleshoot_iam_policy request
|
196
|
+
#
|
197
|
+
# # The returned object is of type Google::Cloud::PolicyTroubleshooter::V1::TroubleshootIamPolicyResponse.
|
198
|
+
# p result
|
199
|
+
#
|
194
200
|
def troubleshoot_iam_policy request, options = nil
|
195
201
|
raise ::ArgumentError, "request must be provided" if request.nil?
|
196
202
|
|
@@ -211,7 +217,9 @@ module Google
|
|
211
217
|
options.apply_defaults timeout: @config.rpcs.troubleshoot_iam_policy.timeout,
|
212
218
|
metadata: metadata,
|
213
219
|
retry_policy: @config.rpcs.troubleshoot_iam_policy.retry_policy
|
214
|
-
|
220
|
+
|
221
|
+
options.apply_defaults timeout: @config.timeout,
|
222
|
+
metadata: @config.metadata,
|
215
223
|
retry_policy: @config.retry_policy
|
216
224
|
|
217
225
|
@iam_checker_stub.call_rpc :troubleshoot_iam_policy, request, options: options do |response, operation|
|
@@ -235,22 +243,21 @@ module Google
|
|
235
243
|
# Configuration can be applied globally to all clients, or to a single client
|
236
244
|
# on construction.
|
237
245
|
#
|
238
|
-
#
|
239
|
-
#
|
240
|
-
#
|
241
|
-
# to 20 seconds,
|
242
|
-
#
|
243
|
-
#
|
244
|
-
#
|
245
|
-
#
|
246
|
-
#
|
247
|
-
#
|
248
|
-
#
|
249
|
-
#
|
250
|
-
#
|
251
|
-
#
|
252
|
-
#
|
253
|
-
# end
|
246
|
+
# @example
|
247
|
+
#
|
248
|
+
# # Modify the global config, setting the timeout for
|
249
|
+
# # troubleshoot_iam_policy to 20 seconds,
|
250
|
+
# # and all remaining timeouts to 10 seconds.
|
251
|
+
# ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.configure do |config|
|
252
|
+
# config.timeout = 10.0
|
253
|
+
# config.rpcs.troubleshoot_iam_policy.timeout = 20.0
|
254
|
+
# end
|
255
|
+
#
|
256
|
+
# # Apply the above configuration only to a new client.
|
257
|
+
# client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new do |config|
|
258
|
+
# config.timeout = 10.0
|
259
|
+
# config.rpcs.troubleshoot_iam_policy.timeout = 20.0
|
260
|
+
# end
|
254
261
|
#
|
255
262
|
# @!attribute [rw] endpoint
|
256
263
|
# The hostname or hostname:port of the service endpoint.
|
@@ -1,11 +1,11 @@
|
|
1
1
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
2
|
# source: google/cloud/policytroubleshooter/v1/checker.proto
|
3
3
|
|
4
|
-
require 'google/protobuf'
|
5
|
-
|
6
4
|
require 'google/cloud/policytroubleshooter/v1/explanations_pb'
|
7
5
|
require 'google/api/annotations_pb'
|
8
6
|
require 'google/api/client_pb'
|
7
|
+
require 'google/protobuf'
|
8
|
+
|
9
9
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
10
10
|
add_file("google/cloud/policytroubleshooter/v1/checker.proto", :syntax => :proto3) do
|
11
11
|
add_message "google.cloud.policytroubleshooter.v1.TroubleshootIamPolicyRequest" do
|
@@ -30,7 +30,7 @@ module Google
|
|
30
30
|
# This service helps you troubleshoot access issues for Google Cloud resources.
|
31
31
|
class Service
|
32
32
|
|
33
|
-
include GRPC::GenericService
|
33
|
+
include ::GRPC::GenericService
|
34
34
|
|
35
35
|
self.marshal_class_method = :encode
|
36
36
|
self.unmarshal_class_method = :decode
|
@@ -1,11 +1,11 @@
|
|
1
1
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
2
|
# source: google/cloud/policytroubleshooter/v1/explanations.proto
|
3
3
|
|
4
|
-
require 'google/protobuf'
|
5
|
-
|
6
4
|
require 'google/api/field_behavior_pb'
|
7
5
|
require 'google/iam/v1/policy_pb'
|
8
6
|
require 'google/type/expr_pb'
|
7
|
+
require 'google/protobuf'
|
8
|
+
|
9
9
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
10
10
|
add_file("google/cloud/policytroubleshooter/v1/explanations.proto", :syntax => :proto3) do
|
11
11
|
add_message "google.cloud.policytroubleshooter.v1.AccessTuple" do
|
@@ -57,9 +57,15 @@ module Google
|
|
57
57
|
|
58
58
|
# Denotes that a (repeated) field is an unordered list.
|
59
59
|
# This indicates that the service may provide the elements of the list
|
60
|
-
# in any arbitrary
|
60
|
+
# in any arbitrary order, rather than the order the user originally
|
61
61
|
# provided. Additionally, the list's order may or may not be stable.
|
62
62
|
UNORDERED_LIST = 6
|
63
|
+
|
64
|
+
# Denotes that this field returns a non-empty default value if not set.
|
65
|
+
# This indicates that if the user provides the empty value in a request,
|
66
|
+
# a non-empty value will be returned. The user will not be aware of what
|
67
|
+
# non-empty value to expect.
|
68
|
+
NON_EMPTY_DEFAULT = 7
|
63
69
|
end
|
64
70
|
end
|
65
71
|
end
|
@@ -19,30 +19,53 @@
|
|
19
19
|
|
20
20
|
module Google
|
21
21
|
module Type
|
22
|
-
# Represents
|
22
|
+
# Represents a textual expression in the Common Expression Language (CEL)
|
23
|
+
# syntax. CEL is a C-like expression language. The syntax and semantics of CEL
|
24
|
+
# are documented at https://github.com/google/cel-spec.
|
23
25
|
#
|
24
|
-
#
|
25
|
-
#
|
26
|
-
#
|
26
|
+
# Example (Comparison):
|
27
|
+
#
|
28
|
+
# title: "Summary size limit"
|
29
|
+
# description: "Determines if a summary is less than 100 chars"
|
30
|
+
# expression: "document.summary.size() < 100"
|
31
|
+
#
|
32
|
+
# Example (Equality):
|
33
|
+
#
|
34
|
+
# title: "Requestor is owner"
|
35
|
+
# description: "Determines if requestor is the document owner"
|
36
|
+
# expression: "document.owner == request.auth.claims.email"
|
37
|
+
#
|
38
|
+
# Example (Logic):
|
39
|
+
#
|
40
|
+
# title: "Public documents"
|
41
|
+
# description: "Determine whether the document should be publicly visible"
|
42
|
+
# expression: "document.type != 'private' && document.type != 'internal'"
|
43
|
+
#
|
44
|
+
# Example (Data Manipulation):
|
45
|
+
#
|
46
|
+
# title: "Notification string"
|
47
|
+
# description: "Create a notification string with a timestamp."
|
48
|
+
# expression: "'New message received at ' + string(document.create_time)"
|
49
|
+
#
|
50
|
+
# The exact variables and functions that may be referenced within an expression
|
51
|
+
# are determined by the service that evaluates it. See the service
|
52
|
+
# documentation for additional information.
|
27
53
|
# @!attribute [rw] expression
|
28
54
|
# @return [::String]
|
29
|
-
# Textual representation of an expression in
|
30
|
-
#
|
31
|
-
#
|
32
|
-
# The application context of the containing message determines which
|
33
|
-
# well-known feature set of CEL is supported.
|
55
|
+
# Textual representation of an expression in Common Expression Language
|
56
|
+
# syntax.
|
34
57
|
# @!attribute [rw] title
|
35
58
|
# @return [::String]
|
36
|
-
#
|
59
|
+
# Optional. Title for the expression, i.e. a short string describing
|
37
60
|
# its purpose. This can be used e.g. in UIs which allow to enter the
|
38
61
|
# expression.
|
39
62
|
# @!attribute [rw] description
|
40
63
|
# @return [::String]
|
41
|
-
#
|
64
|
+
# Optional. Description of the expression. This is a longer text which
|
42
65
|
# describes the expression, e.g. when hovered over it in a UI.
|
43
66
|
# @!attribute [rw] location
|
44
67
|
# @return [::String]
|
45
|
-
#
|
68
|
+
# Optional. String indicating the location of the expression for error
|
46
69
|
# reporting, e.g. a file name and a position in the file.
|
47
70
|
class Expr
|
48
71
|
include ::Google::Protobuf::MessageExts
|
metadata
CHANGED
@@ -1,29 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-policy_troubleshooter-v1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-11-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gapic-common
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.7'
|
20
|
+
- - "<"
|
18
21
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
22
|
+
version: 2.a
|
20
23
|
type: :runtime
|
21
24
|
prerelease: false
|
22
25
|
version_requirements: !ruby/object:Gem::Requirement
|
23
26
|
requirements:
|
24
|
-
- - "
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0.7'
|
30
|
+
- - "<"
|
25
31
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
32
|
+
version: 2.a
|
27
33
|
- !ruby/object:Gem::Dependency
|
28
34
|
name: google-cloud-errors
|
29
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -47,7 +53,7 @@ dependencies:
|
|
47
53
|
version: 0.6.10
|
48
54
|
- - "<"
|
49
55
|
- !ruby/object:Gem::Version
|
50
|
-
version:
|
56
|
+
version: 2.a
|
51
57
|
type: :runtime
|
52
58
|
prerelease: false
|
53
59
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -57,7 +63,7 @@ dependencies:
|
|
57
63
|
version: 0.6.10
|
58
64
|
- - "<"
|
59
65
|
- !ruby/object:Gem::Version
|
60
|
-
version:
|
66
|
+
version: 2.a
|
61
67
|
- !ruby/object:Gem::Dependency
|
62
68
|
name: google-style
|
63
69
|
requirement: !ruby/object:Gem::Requirement
|
@@ -222,7 +228,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
222
228
|
- !ruby/object:Gem::Version
|
223
229
|
version: '0'
|
224
230
|
requirements: []
|
225
|
-
rubygems_version: 3.2.
|
231
|
+
rubygems_version: 3.2.17
|
226
232
|
signing_key:
|
227
233
|
specification_version: 4
|
228
234
|
summary: API Client library for the IAM Policy Troubleshooter V1 API
|