strongdm 1.0.15 → 1.0.21
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/doc/SDM/AKS.html +21 -3
- data/doc/SDM/AKSBasicAuth.html +21 -3
- data/doc/SDM/AKSServiceAccount.html +21 -3
- data/doc/SDM/AKSServiceAccountUserImpersonation.html +391 -0
- data/doc/SDM/AKSUserImpersonation.html +427 -0
- data/doc/SDM/AWS.html +39 -3
- data/doc/SDM/AWSStore.html +2 -2
- data/doc/SDM/AccountAttachment.html +2 -2
- data/doc/SDM/AccountAttachmentCreateResponse.html +2 -2
- data/doc/SDM/AccountAttachmentDeleteResponse.html +2 -2
- data/doc/SDM/AccountAttachmentGetResponse.html +2 -2
- data/doc/SDM/AccountCreateResponse.html +2 -2
- data/doc/SDM/AccountDeleteResponse.html +2 -2
- data/doc/SDM/AccountGetResponse.html +2 -2
- data/doc/SDM/AccountGrant.html +2 -2
- data/doc/SDM/AccountGrantCreateResponse.html +2 -2
- data/doc/SDM/AccountGrantDeleteResponse.html +2 -2
- data/doc/SDM/AccountGrantGetResponse.html +2 -2
- data/doc/SDM/AccountUpdateResponse.html +2 -2
- data/doc/SDM/AmazonEKS.html +39 -3
- data/doc/SDM/AmazonEKSUserImpersonation.html +481 -0
- data/doc/SDM/AmazonES.html +57 -3
- data/doc/SDM/Athena.html +57 -3
- data/doc/SDM/AuroraMysql.html +21 -3
- data/doc/SDM/AuroraPostgres.html +21 -3
- data/doc/SDM/BigQuery.html +21 -3
- data/doc/SDM/Cassandra.html +21 -3
- data/doc/SDM/Citus.html +21 -3
- data/doc/SDM/Client.html +9 -6
- data/doc/SDM/Clustrix.html +21 -3
- data/doc/SDM/Cockroach.html +21 -3
- data/doc/SDM/ControlPanel.html +62 -0
- data/doc/SDM/ControlPanelGetSSHCAPublicKeyResponse.html +2 -2
- data/doc/SDM/ControlPanelVerifyJWTResponse.html +267 -0
- data/doc/SDM/DB2LUW.html +21 -3
- data/doc/SDM/DB2i.html +21 -3
- data/doc/SDM/Druid.html +21 -3
- data/doc/SDM/DynamoDB.html +57 -3
- data/doc/SDM/Elastic.html +21 -3
- data/doc/SDM/ElasticacheRedis.html +21 -3
- data/doc/SDM/Gateway.html +2 -2
- data/doc/SDM/GoogleGKE.html +21 -3
- data/doc/SDM/GoogleGKEUserImpersonation.html +391 -0
- data/doc/SDM/Greenplum.html +21 -3
- data/doc/SDM/HTTPAuth.html +21 -3
- data/doc/SDM/HTTPBasicAuth.html +21 -3
- data/doc/SDM/HTTPNoAuth.html +21 -3
- data/doc/SDM/Kubernetes.html +21 -3
- data/doc/SDM/KubernetesBasicAuth.html +21 -3
- data/doc/SDM/KubernetesServiceAccount.html +21 -3
- data/doc/SDM/KubernetesServiceAccountUserImpersonation.html +391 -0
- data/doc/SDM/KubernetesUserImpersonation.html +427 -0
- data/doc/SDM/Maria.html +21 -3
- data/doc/SDM/Memcached.html +21 -3
- data/doc/SDM/Memsql.html +21 -3
- data/doc/SDM/MongoHost.html +21 -3
- data/doc/SDM/MongoLegacyHost.html +21 -3
- data/doc/SDM/MongoLegacyReplicaset.html +21 -3
- data/doc/SDM/MongoReplicaSet.html +21 -3
- data/doc/SDM/Mysql.html +21 -3
- data/doc/SDM/NodeCreateResponse.html +2 -2
- data/doc/SDM/NodeDeleteResponse.html +2 -2
- data/doc/SDM/NodeGetResponse.html +2 -2
- data/doc/SDM/NodeUpdateResponse.html +2 -2
- data/doc/SDM/Nodes.html +6 -6
- data/doc/SDM/Oracle.html +21 -3
- data/doc/SDM/Plumbing.html +2575 -825
- data/doc/SDM/Postgres.html +21 -3
- data/doc/SDM/Presto.html +21 -3
- data/doc/SDM/RDP.html +21 -3
- data/doc/SDM/Redis.html +21 -3
- data/doc/SDM/Redshift.html +21 -3
- data/doc/SDM/Relay.html +2 -2
- data/doc/SDM/ResourceCreateResponse.html +2 -2
- data/doc/SDM/ResourceDeleteResponse.html +2 -2
- data/doc/SDM/ResourceGetResponse.html +2 -2
- data/doc/SDM/ResourceUpdateResponse.html +2 -2
- data/doc/SDM/Resources.html +74 -6
- data/doc/SDM/Role.html +2 -2
- data/doc/SDM/RoleAttachment.html +2 -2
- data/doc/SDM/RoleAttachmentCreateResponse.html +2 -2
- data/doc/SDM/RoleAttachmentDeleteResponse.html +2 -2
- data/doc/SDM/RoleAttachmentGetResponse.html +2 -2
- data/doc/SDM/RoleAttachments.html +5 -5
- data/doc/SDM/RoleCreateResponse.html +2 -2
- data/doc/SDM/RoleDeleteResponse.html +2 -2
- data/doc/SDM/RoleGetResponse.html +2 -2
- data/doc/SDM/RoleGrant.html +2 -2
- data/doc/SDM/RoleGrantCreateResponse.html +2 -2
- data/doc/SDM/RoleGrantDeleteResponse.html +2 -2
- data/doc/SDM/RoleGrantGetResponse.html +2 -2
- data/doc/SDM/RoleGrants.html +5 -5
- data/doc/SDM/RoleUpdateResponse.html +2 -2
- data/doc/SDM/Roles.html +6 -6
- data/doc/SDM/SQLServer.html +21 -3
- data/doc/SDM/SSH.html +21 -3
- data/doc/SDM/SSHCert.html +21 -3
- data/doc/SDM/SSHCustomerKey.html +427 -0
- data/doc/SDM/SecretStoreCreateResponse.html +2 -2
- data/doc/SDM/SecretStoreDeleteResponse.html +2 -2
- data/doc/SDM/SecretStoreGetResponse.html +2 -2
- data/doc/SDM/SecretStoreUpdateResponse.html +2 -2
- data/doc/SDM/SecretStores.html +6 -6
- data/doc/SDM/Service.html +2 -2
- data/doc/SDM/Snowflake.html +21 -3
- data/doc/SDM/Sybase.html +21 -3
- data/doc/SDM/SybaseIQ.html +21 -3
- data/doc/SDM/Tag.html +247 -0
- data/doc/SDM/Teradata.html +21 -3
- data/doc/SDM/User.html +2 -2
- data/doc/SDM/VaultTLSStore.html +2 -2
- data/doc/SDM/VaultTokenStore.html +2 -2
- data/doc/V1.html +120 -0
- data/doc/V1/BuildsPrivate.html +113 -0
- data/doc/V1/BuildsPrivate/Service.html +119 -0
- data/doc/V1/Permissions/Service.html +119 -0
- data/doc/created.rid +51 -47
- data/doc/index.html +22 -0
- data/doc/js/navigation.js.gz +0 -0
- data/doc/js/search_index.js +1 -1
- data/doc/js/search_index.js.gz +0 -0
- data/doc/js/searcher.js.gz +0 -0
- data/doc/lib/version.html +1 -1
- data/doc/strongdm_gemspec.html +1 -1
- data/doc/table_of_contents.html +556 -221
- data/lib/grpc/control_panel_pb.rb +11 -0
- data/lib/grpc/control_panel_services_pb.rb +2 -0
- data/lib/grpc/drivers_pb.rb +166 -0
- data/lib/grpc/options_pb.rb +5 -1
- data/lib/grpc/plumbing.rb +616 -4
- data/lib/grpc/resources_pb.rb +12 -0
- data/lib/grpc/resources_services_pb.rb +2 -0
- data/lib/grpc/spec_pb.rb +7 -0
- data/lib/grpc/tags_pb.rb +5 -0
- data/lib/models/porcelain.rb +1074 -81
- data/lib/strongdm.rb +5 -2
- data/lib/svc.rb +67 -0
- data/lib/version +1 -1
- data/lib/version.rb +1 -1
- metadata +14 -10
- data/lib/grpc/access_rules_pb.rb +0 -115
- data/lib/grpc/access_rules_services_pb.rb +0 -50
- data/lib/grpc/audits_pb.rb +0 -40
- data/lib/grpc/audits_services_pb.rb +0 -37
- data/lib/grpc/demo_provisioning_requests_pb.rb +0 -93
- data/lib/grpc/demo_provisioning_requests_services_pb.rb +0 -49
- data/lib/grpc/secret_store_healths_pb.rb +0 -61
- data/lib/grpc/secret_store_healths_services_pb.rb +0 -39
data/lib/strongdm.rb
CHANGED
@@ -29,8 +29,11 @@ module SDM
|
|
29
29
|
class Client
|
30
30
|
# Creates a new strongDM API client.
|
31
31
|
def initialize(api_access_key, api_secret_key, host: "api.strongdm.com:443", insecure: false)
|
32
|
-
|
33
|
-
|
32
|
+
raise TypeError, "client access key must be a string" unless api_access_key.kind_of?(String)
|
33
|
+
raise TypeError, "client secret key must be a string" unless api_secret_key.kind_of?(String)
|
34
|
+
raise TypeError, "client host must be a string" unless host.kind_of?(String)
|
35
|
+
@api_access_key = api_access_key.strip
|
36
|
+
@api_secret_key = Base64.strict_decode64(api_secret_key.strip)
|
34
37
|
@max_retries = DEFAULT_MAX_RETRIES
|
35
38
|
@base_retry_delay = DEFAULT_BASE_RETRY_DELAY
|
36
39
|
@max_retry_delay = DEFAULT_MAX_RETRY_DELAY
|
data/lib/svc.rb
CHANGED
@@ -529,6 +529,36 @@ module SDM
|
|
529
529
|
resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit)
|
530
530
|
resp
|
531
531
|
end
|
532
|
+
|
533
|
+
# VerifyJWT reports whether the given JWT token (x-sdm-token) is valid.
|
534
|
+
def verify_jwt(
|
535
|
+
token,
|
536
|
+
deadline: nil
|
537
|
+
)
|
538
|
+
req = V1::ControlPanelVerifyJWTRequest.new()
|
539
|
+
|
540
|
+
req.token = (token)
|
541
|
+
tries = 0
|
542
|
+
plumbing_response = nil
|
543
|
+
loop do
|
544
|
+
begin
|
545
|
+
plumbing_response = @stub.verify_jwt(req, metadata: @parent.get_metadata("ControlPanel.VerifyJWT", req), deadline: deadline)
|
546
|
+
rescue => exception
|
547
|
+
if (@parent.shouldRetry(tries, exception))
|
548
|
+
tries + +@parent.jitterSleep(tries)
|
549
|
+
next
|
550
|
+
end
|
551
|
+
raise Plumbing::convert_error_to_porcelain(exception)
|
552
|
+
end
|
553
|
+
break
|
554
|
+
end
|
555
|
+
|
556
|
+
resp = ControlPanelVerifyJWTResponse.new()
|
557
|
+
resp.meta = Plumbing::convert_get_response_metadata_to_porcelain(plumbing_response.meta)
|
558
|
+
resp.valid = (plumbing_response.valid)
|
559
|
+
resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit)
|
560
|
+
resp
|
561
|
+
end
|
532
562
|
end
|
533
563
|
|
534
564
|
# Nodes make up the strongDM network, and allow your users to connect securely to your resources. There are two types of nodes:
|
@@ -722,6 +752,43 @@ module SDM
|
|
722
752
|
@parent = parent
|
723
753
|
end
|
724
754
|
|
755
|
+
# EnumerateTags gets a list of the filter matching tags.
|
756
|
+
def enumerate_tags(
|
757
|
+
filter,
|
758
|
+
*args,
|
759
|
+
deadline: nil
|
760
|
+
)
|
761
|
+
req = V1::EnumerateTagsRequest.new()
|
762
|
+
req.meta = V1::ListRequestMetadata.new()
|
763
|
+
page_size_option = @parent._test_options["PageSize"]
|
764
|
+
if page_size_option.is_a? Integer
|
765
|
+
req.meta.limit = page_size_option
|
766
|
+
end
|
767
|
+
|
768
|
+
req.filter = Plumbing::quote_filter_args(filter, *args)
|
769
|
+
resp = Enumerator::Generator.new { |g|
|
770
|
+
tries = 0
|
771
|
+
loop do
|
772
|
+
begin
|
773
|
+
plumbing_response = @stub.enumerate_tags(req, metadata: @parent.get_metadata("Resources.EnumerateTags", req), deadline: deadline)
|
774
|
+
rescue => exception
|
775
|
+
if (@parent.shouldRetry(tries, exception))
|
776
|
+
tries + +@parent.jitterSleep(tries)
|
777
|
+
next
|
778
|
+
end
|
779
|
+
raise Plumbing::convert_error_to_porcelain(exception)
|
780
|
+
end
|
781
|
+
tries = 0
|
782
|
+
plumbing_response.matches.each do |plumbing_item|
|
783
|
+
g.yield Plumbing::convert_tag_to_porcelain(plumbing_item)
|
784
|
+
end
|
785
|
+
break if plumbing_response.meta.next_cursor == ""
|
786
|
+
req.meta.cursor = plumbing_response.meta.next_cursor
|
787
|
+
end
|
788
|
+
}
|
789
|
+
resp
|
790
|
+
end
|
791
|
+
|
725
792
|
# Create registers a new Resource.
|
726
793
|
def create(
|
727
794
|
resource,
|
data/lib/version
CHANGED
data/lib/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: strongdm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- strongDM Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-05-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: grpc
|
@@ -88,6 +88,8 @@ files:
|
|
88
88
|
- doc/SDM/AKS.html
|
89
89
|
- doc/SDM/AKSBasicAuth.html
|
90
90
|
- doc/SDM/AKSServiceAccount.html
|
91
|
+
- doc/SDM/AKSServiceAccountUserImpersonation.html
|
92
|
+
- doc/SDM/AKSUserImpersonation.html
|
91
93
|
- doc/SDM/AWS.html
|
92
94
|
- doc/SDM/AWSStore.html
|
93
95
|
- doc/SDM/AccessRuleCreateResponse.html
|
@@ -111,6 +113,7 @@ files:
|
|
111
113
|
- doc/SDM/Accounts.html
|
112
114
|
- doc/SDM/AlreadyExistsError.html
|
113
115
|
- doc/SDM/AmazonEKS.html
|
116
|
+
- doc/SDM/AmazonEKSUserImpersonation.html
|
114
117
|
- doc/SDM/AmazonES.html
|
115
118
|
- doc/SDM/Athena.html
|
116
119
|
- doc/SDM/AuroraMysql.html
|
@@ -125,6 +128,7 @@ files:
|
|
125
128
|
- doc/SDM/Cockroach.html
|
126
129
|
- doc/SDM/ControlPanel.html
|
127
130
|
- doc/SDM/ControlPanelGetSSHCAPublicKeyResponse.html
|
131
|
+
- doc/SDM/ControlPanelVerifyJWTResponse.html
|
128
132
|
- doc/SDM/CreateResponseMetadata.html
|
129
133
|
- doc/SDM/DB2LUW.html
|
130
134
|
- doc/SDM/DB2i.html
|
@@ -137,6 +141,7 @@ files:
|
|
137
141
|
- doc/SDM/Gateway.html
|
138
142
|
- doc/SDM/GetResponseMetadata.html
|
139
143
|
- doc/SDM/GoogleGKE.html
|
144
|
+
- doc/SDM/GoogleGKEUserImpersonation.html
|
140
145
|
- doc/SDM/Greenplum.html
|
141
146
|
- doc/SDM/HTTPAuth.html
|
142
147
|
- doc/SDM/HTTPBasicAuth.html
|
@@ -145,6 +150,8 @@ files:
|
|
145
150
|
- doc/SDM/Kubernetes.html
|
146
151
|
- doc/SDM/KubernetesBasicAuth.html
|
147
152
|
- doc/SDM/KubernetesServiceAccount.html
|
153
|
+
- doc/SDM/KubernetesServiceAccountUserImpersonation.html
|
154
|
+
- doc/SDM/KubernetesUserImpersonation.html
|
148
155
|
- doc/SDM/Maria.html
|
149
156
|
- doc/SDM/Memcached.html
|
150
157
|
- doc/SDM/Memsql.html
|
@@ -195,6 +202,7 @@ files:
|
|
195
202
|
- doc/SDM/SQLServer.html
|
196
203
|
- doc/SDM/SSH.html
|
197
204
|
- doc/SDM/SSHCert.html
|
205
|
+
- doc/SDM/SSHCustomerKey.html
|
198
206
|
- doc/SDM/SecretStore.html
|
199
207
|
- doc/SDM/SecretStoreCreateResponse.html
|
200
208
|
- doc/SDM/SecretStoreDeleteResponse.html
|
@@ -205,6 +213,7 @@ files:
|
|
205
213
|
- doc/SDM/Snowflake.html
|
206
214
|
- doc/SDM/Sybase.html
|
207
215
|
- doc/SDM/SybaseIQ.html
|
216
|
+
- doc/SDM/Tag.html
|
208
217
|
- doc/SDM/Teradata.html
|
209
218
|
- doc/SDM/UpdateResponseMetadata.html
|
210
219
|
- doc/SDM/User.html
|
@@ -221,12 +230,15 @@ files:
|
|
221
230
|
- doc/V1/Accounts/Service.html
|
222
231
|
- doc/V1/Audits.html
|
223
232
|
- doc/V1/Audits/Service.html
|
233
|
+
- doc/V1/BuildsPrivate.html
|
234
|
+
- doc/V1/BuildsPrivate/Service.html
|
224
235
|
- doc/V1/ControlPanel.html
|
225
236
|
- doc/V1/ControlPanel/Service.html
|
226
237
|
- doc/V1/DemoProvisioningRequests.html
|
227
238
|
- doc/V1/DemoProvisioningRequests/Service.html
|
228
239
|
- doc/V1/Nodes.html
|
229
240
|
- doc/V1/Nodes/Service.html
|
241
|
+
- doc/V1/Permissions/Service.html
|
230
242
|
- doc/V1/Resources.html
|
231
243
|
- doc/V1/Resources/Service.html
|
232
244
|
- doc/V1/RoleAttachments.html
|
@@ -295,20 +307,14 @@ files:
|
|
295
307
|
- examples/Gemfile
|
296
308
|
- examples/listUsers.rb
|
297
309
|
- lib/errors/errors.rb
|
298
|
-
- lib/grpc/access_rules_pb.rb
|
299
|
-
- lib/grpc/access_rules_services_pb.rb
|
300
310
|
- lib/grpc/account_attachments_pb.rb
|
301
311
|
- lib/grpc/account_attachments_services_pb.rb
|
302
312
|
- lib/grpc/account_grants_pb.rb
|
303
313
|
- lib/grpc/account_grants_services_pb.rb
|
304
314
|
- lib/grpc/accounts_pb.rb
|
305
315
|
- lib/grpc/accounts_services_pb.rb
|
306
|
-
- lib/grpc/audits_pb.rb
|
307
|
-
- lib/grpc/audits_services_pb.rb
|
308
316
|
- lib/grpc/control_panel_pb.rb
|
309
317
|
- lib/grpc/control_panel_services_pb.rb
|
310
|
-
- lib/grpc/demo_provisioning_requests_pb.rb
|
311
|
-
- lib/grpc/demo_provisioning_requests_services_pb.rb
|
312
318
|
- lib/grpc/drivers_pb.rb
|
313
319
|
- lib/grpc/nodes_pb.rb
|
314
320
|
- lib/grpc/nodes_services_pb.rb
|
@@ -322,8 +328,6 @@ files:
|
|
322
328
|
- lib/grpc/role_grants_services_pb.rb
|
323
329
|
- lib/grpc/roles_pb.rb
|
324
330
|
- lib/grpc/roles_services_pb.rb
|
325
|
-
- lib/grpc/secret_store_healths_pb.rb
|
326
|
-
- lib/grpc/secret_store_healths_services_pb.rb
|
327
331
|
- lib/grpc/secret_store_types_pb.rb
|
328
332
|
- lib/grpc/secret_stores_pb.rb
|
329
333
|
- lib/grpc/secret_stores_services_pb.rb
|
data/lib/grpc/access_rules_pb.rb
DELETED
@@ -1,115 +0,0 @@
|
|
1
|
-
# Copyright 2020 StrongDM Inc
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
#
|
15
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
16
|
-
# source: access_rules.proto
|
17
|
-
|
18
|
-
require "google/protobuf"
|
19
|
-
|
20
|
-
require "options_pb"
|
21
|
-
require "spec_pb"
|
22
|
-
require "tags_pb"
|
23
|
-
Google::Protobuf::DescriptorPool.generated_pool.build do
|
24
|
-
add_file("access_rules.proto", :syntax => :proto3) do
|
25
|
-
add_message "v1.AccessRuleCreateRequest" do
|
26
|
-
optional :meta, :message, 1, "v1.CreateRequestMetadata"
|
27
|
-
optional :access_rule, :message, 2, "v1.AccessRule"
|
28
|
-
end
|
29
|
-
add_message "v1.AccessRuleCreateResponse" do
|
30
|
-
optional :meta, :message, 1, "v1.CreateResponseMetadata"
|
31
|
-
optional :access_rule, :message, 2, "v1.AccessRule"
|
32
|
-
optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
|
33
|
-
end
|
34
|
-
add_message "v1.AccessRuleGetRequest" do
|
35
|
-
optional :meta, :message, 1, "v1.GetRequestMetadata"
|
36
|
-
optional :id, :string, 2
|
37
|
-
end
|
38
|
-
add_message "v1.AccessRuleGetResponse" do
|
39
|
-
optional :meta, :message, 1, "v1.GetResponseMetadata"
|
40
|
-
optional :access_rule, :message, 2, "v1.AccessRule"
|
41
|
-
optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
|
42
|
-
end
|
43
|
-
add_message "v1.AccessRuleUpdateRequest" do
|
44
|
-
optional :meta, :message, 1, "v1.UpdateRequestMetadata"
|
45
|
-
optional :id, :string, 2
|
46
|
-
optional :access_rule, :message, 3, "v1.AccessRule"
|
47
|
-
end
|
48
|
-
add_message "v1.AccessRuleUpdateResponse" do
|
49
|
-
optional :meta, :message, 1, "v1.UpdateResponseMetadata"
|
50
|
-
optional :access_rule, :message, 2, "v1.AccessRule"
|
51
|
-
optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
|
52
|
-
end
|
53
|
-
add_message "v1.AccessRuleDeleteRequest" do
|
54
|
-
optional :meta, :message, 1, "v1.DeleteRequestMetadata"
|
55
|
-
optional :id, :string, 2
|
56
|
-
end
|
57
|
-
add_message "v1.AccessRuleDeleteResponse" do
|
58
|
-
optional :meta, :message, 1, "v1.DeleteResponseMetadata"
|
59
|
-
optional :rate_limit, :message, 2, "v1.RateLimitMetadata"
|
60
|
-
end
|
61
|
-
add_message "v1.AccessRuleListRequest" do
|
62
|
-
optional :meta, :message, 1, "v1.ListRequestMetadata"
|
63
|
-
optional :filter, :string, 2
|
64
|
-
end
|
65
|
-
add_message "v1.AccessRuleListResponse" do
|
66
|
-
optional :meta, :message, 1, "v1.ListResponseMetadata"
|
67
|
-
repeated :access_rules, :message, 2, "v1.AccessRule"
|
68
|
-
optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
|
69
|
-
end
|
70
|
-
add_message "v1.AccessRule" do
|
71
|
-
optional :id, :string, 1
|
72
|
-
optional :resource_type, :string, 2
|
73
|
-
optional :role_id, :string, 3
|
74
|
-
repeated :resource_ids, :string, 4
|
75
|
-
optional :tags, :message, 5, "v1.Tags"
|
76
|
-
optional :affected_resources, :int64, 6
|
77
|
-
end
|
78
|
-
add_message "v1.AccessRulePlanRequest" do
|
79
|
-
optional :meta, :message, 1, "v1.CreateRequestMetadata"
|
80
|
-
optional :access_rule, :message, 2, "v1.AccessRule"
|
81
|
-
end
|
82
|
-
add_message "v1.AccessRulePlanResponse" do
|
83
|
-
optional :meta, :message, 1, "v1.CreateResponseMetadata"
|
84
|
-
optional :affected_resources, :int64, 2
|
85
|
-
optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
|
86
|
-
end
|
87
|
-
add_message "v1.ApplyAccessRuleRequest" do
|
88
|
-
optional :meta, :message, 1, "v1.CreateRequestMetadata"
|
89
|
-
optional :role_id, :string, 2
|
90
|
-
repeated :access_rules, :message, 3, "v1.AccessRule"
|
91
|
-
end
|
92
|
-
add_message "v1.ApplyAccessRuleResponse" do
|
93
|
-
optional :meta, :message, 1, "v1.CreateResponseMetadata"
|
94
|
-
optional :rate_limit, :message, 2, "v1.RateLimitMetadata"
|
95
|
-
end
|
96
|
-
end
|
97
|
-
end
|
98
|
-
|
99
|
-
module V1
|
100
|
-
AccessRuleCreateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleCreateRequest").msgclass
|
101
|
-
AccessRuleCreateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleCreateResponse").msgclass
|
102
|
-
AccessRuleGetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleGetRequest").msgclass
|
103
|
-
AccessRuleGetResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleGetResponse").msgclass
|
104
|
-
AccessRuleUpdateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleUpdateRequest").msgclass
|
105
|
-
AccessRuleUpdateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleUpdateResponse").msgclass
|
106
|
-
AccessRuleDeleteRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleDeleteRequest").msgclass
|
107
|
-
AccessRuleDeleteResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleDeleteResponse").msgclass
|
108
|
-
AccessRuleListRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleListRequest").msgclass
|
109
|
-
AccessRuleListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRuleListResponse").msgclass
|
110
|
-
AccessRule = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRule").msgclass
|
111
|
-
AccessRulePlanRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRulePlanRequest").msgclass
|
112
|
-
AccessRulePlanResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRulePlanResponse").msgclass
|
113
|
-
ApplyAccessRuleRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ApplyAccessRuleRequest").msgclass
|
114
|
-
ApplyAccessRuleResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ApplyAccessRuleResponse").msgclass
|
115
|
-
end
|
@@ -1,50 +0,0 @@
|
|
1
|
-
# Copyright 2020 StrongDM Inc
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
#
|
15
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
16
|
-
# Source: access_rules.proto for package 'v1'
|
17
|
-
|
18
|
-
require "grpc"
|
19
|
-
require "access_rules_pb"
|
20
|
-
|
21
|
-
module V1
|
22
|
-
module AccessRules
|
23
|
-
# AccessRules allows the use of tags and other attributes to grant resources
|
24
|
-
# to roles. Each Role may have several access rules.
|
25
|
-
class Service
|
26
|
-
include GRPC::GenericService
|
27
|
-
|
28
|
-
self.marshal_class_method = :encode
|
29
|
-
self.unmarshal_class_method = :decode
|
30
|
-
self.service_name = "v1.AccessRules"
|
31
|
-
|
32
|
-
# Plan registers a new AccessRule.
|
33
|
-
rpc :Plan, AccessRulePlanRequest, AccessRulePlanResponse
|
34
|
-
# Create registers a new AccessRule.
|
35
|
-
rpc :Create, AccessRuleCreateRequest, AccessRuleCreateResponse
|
36
|
-
# Get reads one AccessRule by ID.
|
37
|
-
rpc :Get, AccessRuleGetRequest, AccessRuleGetResponse
|
38
|
-
# Update patches a AccessRule by ID.
|
39
|
-
rpc :Update, AccessRuleUpdateRequest, AccessRuleUpdateResponse
|
40
|
-
# Delete removes a AccessRule by ID.
|
41
|
-
rpc :Delete, AccessRuleDeleteRequest, AccessRuleDeleteResponse
|
42
|
-
# List gets a list of Access Rules matching a given set of criteria.
|
43
|
-
rpc :List, AccessRuleListRequest, AccessRuleListResponse
|
44
|
-
# Apply resets a role and apply all given access rules.
|
45
|
-
rpc :Apply, ApplyAccessRuleRequest, ApplyAccessRuleResponse
|
46
|
-
end
|
47
|
-
|
48
|
-
Stub = Service.rpc_stub_class
|
49
|
-
end
|
50
|
-
end
|
data/lib/grpc/audits_pb.rb
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
# Copyright 2020 StrongDM Inc
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
#
|
15
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
16
|
-
# source: audits.proto
|
17
|
-
|
18
|
-
require "google/protobuf"
|
19
|
-
|
20
|
-
require "options_pb"
|
21
|
-
require "spec_pb"
|
22
|
-
require "access_rules_pb"
|
23
|
-
Google::Protobuf::DescriptorPool.generated_pool.build do
|
24
|
-
add_file("audits.proto", :syntax => :proto3) do
|
25
|
-
add_message "v1.GetAccessRulesRequest" do
|
26
|
-
optional :meta, :message, 1, "v1.GetRequestMetadata"
|
27
|
-
optional :when, :string, 2
|
28
|
-
end
|
29
|
-
add_message "v1.GetAccessRulesResponse" do
|
30
|
-
optional :meta, :message, 1, "v1.GetResponseMetadata"
|
31
|
-
repeated :access_rules, :message, 2, "v1.AccessRule"
|
32
|
-
optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
module V1
|
38
|
-
GetAccessRulesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.GetAccessRulesRequest").msgclass
|
39
|
-
GetAccessRulesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.GetAccessRulesResponse").msgclass
|
40
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
# Copyright 2020 StrongDM Inc
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
#
|
15
|
-
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
16
|
-
# Source: audits.proto for package 'v1'
|
17
|
-
|
18
|
-
require "grpc"
|
19
|
-
require "audits_pb"
|
20
|
-
|
21
|
-
module V1
|
22
|
-
module Audits
|
23
|
-
# Audit exposes the endpoints to extract point-in-time snapshot of data.
|
24
|
-
class Service
|
25
|
-
include GRPC::GenericService
|
26
|
-
|
27
|
-
self.marshal_class_method = :encode
|
28
|
-
self.unmarshal_class_method = :decode
|
29
|
-
self.service_name = "v1.Audits"
|
30
|
-
|
31
|
-
# GetAccessRules gets a list of Access Rules at point-in-time.
|
32
|
-
rpc :GetAccessRules, GetAccessRulesRequest, GetAccessRulesResponse
|
33
|
-
end
|
34
|
-
|
35
|
-
Stub = Service.rpc_stub_class
|
36
|
-
end
|
37
|
-
end
|