strongdm 1.0.17 → 1.0.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/doc/SDM/AKS.html +21 -3
  3. data/doc/SDM/AKSBasicAuth.html +21 -3
  4. data/doc/SDM/AKSServiceAccount.html +21 -3
  5. data/doc/SDM/AKSServiceAccountUserImpersonation.html +391 -0
  6. data/doc/SDM/AKSUserImpersonation.html +427 -0
  7. data/doc/SDM/AWS.html +21 -3
  8. data/doc/SDM/AWSStore.html +2 -2
  9. data/doc/SDM/AmazonEKS.html +21 -3
  10. data/doc/SDM/AmazonEKSUserImpersonation.html +481 -0
  11. data/doc/SDM/AmazonES.html +21 -3
  12. data/doc/SDM/AmazonMQAMQP091.html +427 -0
  13. data/doc/SDM/AmazonMQRabbitMQAMQP091.html +427 -0
  14. data/doc/SDM/Athena.html +21 -3
  15. data/doc/SDM/AuroraMysql.html +21 -3
  16. data/doc/SDM/AuroraPostgres.html +21 -3
  17. data/doc/SDM/BigQuery.html +21 -3
  18. data/doc/SDM/Cassandra.html +21 -3
  19. data/doc/SDM/Citus.html +21 -3
  20. data/doc/SDM/Clustrix.html +21 -3
  21. data/doc/SDM/Cockroach.html +21 -3
  22. data/doc/SDM/ControlPanel.html +62 -0
  23. data/doc/SDM/ControlPanelVerifyJWTResponse.html +267 -0
  24. data/doc/SDM/DB2LUW.html +21 -3
  25. data/doc/SDM/DB2i.html +21 -3
  26. data/doc/SDM/Druid.html +21 -3
  27. data/doc/SDM/DynamoDB.html +21 -3
  28. data/doc/SDM/Elastic.html +21 -3
  29. data/doc/SDM/ElasticacheRedis.html +21 -3
  30. data/doc/SDM/Gateway.html +21 -3
  31. data/doc/SDM/GoogleGKE.html +21 -3
  32. data/doc/SDM/GoogleGKEUserImpersonation.html +391 -0
  33. data/doc/SDM/Greenplum.html +21 -3
  34. data/doc/SDM/HTTPAuth.html +21 -3
  35. data/doc/SDM/HTTPBasicAuth.html +21 -3
  36. data/doc/SDM/HTTPNoAuth.html +21 -3
  37. data/doc/SDM/Kubernetes.html +21 -3
  38. data/doc/SDM/KubernetesBasicAuth.html +21 -3
  39. data/doc/SDM/KubernetesServiceAccount.html +21 -3
  40. data/doc/SDM/KubernetesServiceAccountUserImpersonation.html +391 -0
  41. data/doc/SDM/KubernetesUserImpersonation.html +427 -0
  42. data/doc/SDM/Maria.html +21 -3
  43. data/doc/SDM/Memcached.html +21 -3
  44. data/doc/SDM/Memsql.html +21 -3
  45. data/doc/SDM/MongoHost.html +21 -3
  46. data/doc/SDM/MongoLegacyHost.html +21 -3
  47. data/doc/SDM/MongoLegacyReplicaset.html +21 -3
  48. data/doc/SDM/MongoReplicaSet.html +21 -3
  49. data/doc/SDM/Mysql.html +21 -3
  50. data/doc/SDM/NodeCreateResponse.html +2 -2
  51. data/doc/SDM/NodeDeleteResponse.html +2 -2
  52. data/doc/SDM/NodeGetResponse.html +2 -2
  53. data/doc/SDM/NodeUpdateResponse.html +2 -2
  54. data/doc/SDM/Nodes.html +6 -6
  55. data/doc/SDM/Oracle.html +21 -3
  56. data/doc/SDM/Plumbing.html +3707 -1755
  57. data/doc/SDM/Postgres.html +21 -3
  58. data/doc/SDM/Presto.html +21 -3
  59. data/doc/SDM/RDP.html +21 -3
  60. data/doc/SDM/RabbitMQAMQP091.html +427 -0
  61. data/doc/SDM/Redis.html +21 -3
  62. data/doc/SDM/Redshift.html +21 -3
  63. data/doc/SDM/Relay.html +21 -3
  64. data/doc/SDM/ResourceCreateResponse.html +2 -2
  65. data/doc/SDM/ResourceDeleteResponse.html +2 -2
  66. data/doc/SDM/ResourceGetResponse.html +2 -2
  67. data/doc/SDM/ResourceUpdateResponse.html +2 -2
  68. data/doc/SDM/Resources.html +7 -7
  69. data/doc/SDM/Role.html +2 -2
  70. data/doc/SDM/RoleAttachment.html +2 -2
  71. data/doc/SDM/RoleAttachmentCreateResponse.html +2 -2
  72. data/doc/SDM/RoleAttachmentDeleteResponse.html +2 -2
  73. data/doc/SDM/RoleAttachmentGetResponse.html +2 -2
  74. data/doc/SDM/RoleAttachments.html +5 -5
  75. data/doc/SDM/RoleCreateResponse.html +2 -2
  76. data/doc/SDM/RoleDeleteResponse.html +2 -2
  77. data/doc/SDM/RoleGetResponse.html +2 -2
  78. data/doc/SDM/RoleGrant.html +2 -2
  79. data/doc/SDM/RoleGrantCreateResponse.html +2 -2
  80. data/doc/SDM/RoleGrantDeleteResponse.html +2 -2
  81. data/doc/SDM/RoleGrantGetResponse.html +2 -2
  82. data/doc/SDM/RoleGrants.html +5 -5
  83. data/doc/SDM/RoleUpdateResponse.html +2 -2
  84. data/doc/SDM/Roles.html +6 -6
  85. data/doc/SDM/SQLServer.html +21 -3
  86. data/doc/SDM/SSH.html +21 -3
  87. data/doc/SDM/SSHCert.html +21 -3
  88. data/doc/SDM/SSHCustomerKey.html +427 -0
  89. data/doc/SDM/SecretStoreCreateResponse.html +2 -2
  90. data/doc/SDM/SecretStoreDeleteResponse.html +2 -2
  91. data/doc/SDM/SecretStoreGetResponse.html +2 -2
  92. data/doc/SDM/SecretStoreUpdateResponse.html +2 -2
  93. data/doc/SDM/SecretStores.html +6 -6
  94. data/doc/SDM/Snowflake.html +21 -3
  95. data/doc/SDM/Sybase.html +21 -3
  96. data/doc/SDM/SybaseIQ.html +21 -3
  97. data/doc/SDM/Teradata.html +21 -3
  98. data/doc/SDM/VaultTLSStore.html +2 -2
  99. data/doc/SDM/VaultTokenStore.html +2 -2
  100. data/doc/V1.html +60 -0
  101. data/doc/V1/Permissions/Service.html +119 -0
  102. data/doc/created.rid +52 -48
  103. data/doc/index.html +20 -0
  104. data/doc/js/search_index.js +1 -1
  105. data/doc/js/search_index.js.gz +0 -0
  106. data/doc/lib/version.html +1 -1
  107. data/doc/strongdm_gemspec.html +1 -1
  108. data/doc/table_of_contents.html +825 -470
  109. data/lib/grpc/accounts_pb.rb +1 -0
  110. data/lib/grpc/control_panel_pb.rb +11 -0
  111. data/lib/grpc/control_panel_services_pb.rb +2 -0
  112. data/lib/grpc/drivers_pb.rb +190 -0
  113. data/lib/grpc/nodes_pb.rb +2 -0
  114. data/lib/grpc/options_pb.rb +6 -1
  115. data/lib/grpc/plumbing.rb +692 -1
  116. data/lib/grpc/spec_pb.rb +1 -0
  117. data/lib/models/porcelain.rb +1197 -90
  118. data/lib/svc.rb +30 -0
  119. data/lib/version +1 -1
  120. data/lib/version.rb +1 -1
  121. metadata +15 -5
  122. data/lib/grpc/demo_provisioning_requests_pb.rb +0 -93
  123. data/lib/grpc/demo_provisioning_requests_services_pb.rb +0 -49
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:
data/lib/version CHANGED
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
  #
15
15
  module SDM
16
- VERSION = "1.0.17"
16
+ VERSION = "1.0.23"
17
17
  end
data/lib/version.rb CHANGED
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
  #
15
15
  module SDM
16
- VERSION = "1.0.17"
16
+ VERSION = "1.0.23"
17
17
  end
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.17
4
+ version: 1.0.23
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-01-22 00:00:00.000000000 Z
11
+ date: 2021-06-14 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,7 +113,10 @@ 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
118
+ - doc/SDM/AmazonMQAMQP091.html
119
+ - doc/SDM/AmazonMQRabbitMQAMQP091.html
115
120
  - doc/SDM/Athena.html
116
121
  - doc/SDM/AuroraMysql.html
117
122
  - doc/SDM/AuroraPostgres.html
@@ -125,6 +130,7 @@ files:
125
130
  - doc/SDM/Cockroach.html
126
131
  - doc/SDM/ControlPanel.html
127
132
  - doc/SDM/ControlPanelGetSSHCAPublicKeyResponse.html
133
+ - doc/SDM/ControlPanelVerifyJWTResponse.html
128
134
  - doc/SDM/CreateResponseMetadata.html
129
135
  - doc/SDM/DB2LUW.html
130
136
  - doc/SDM/DB2i.html
@@ -137,6 +143,7 @@ files:
137
143
  - doc/SDM/Gateway.html
138
144
  - doc/SDM/GetResponseMetadata.html
139
145
  - doc/SDM/GoogleGKE.html
146
+ - doc/SDM/GoogleGKEUserImpersonation.html
140
147
  - doc/SDM/Greenplum.html
141
148
  - doc/SDM/HTTPAuth.html
142
149
  - doc/SDM/HTTPBasicAuth.html
@@ -145,6 +152,8 @@ files:
145
152
  - doc/SDM/Kubernetes.html
146
153
  - doc/SDM/KubernetesBasicAuth.html
147
154
  - doc/SDM/KubernetesServiceAccount.html
155
+ - doc/SDM/KubernetesServiceAccountUserImpersonation.html
156
+ - doc/SDM/KubernetesUserImpersonation.html
148
157
  - doc/SDM/Maria.html
149
158
  - doc/SDM/Memcached.html
150
159
  - doc/SDM/Memsql.html
@@ -166,6 +175,7 @@ files:
166
175
  - doc/SDM/Presto.html
167
176
  - doc/SDM/RDP.html
168
177
  - doc/SDM/RPCError.html
178
+ - doc/SDM/RabbitMQAMQP091.html
169
179
  - doc/SDM/RateLimitError.html
170
180
  - doc/SDM/RateLimitMetadata.html
171
181
  - doc/SDM/Redis.html
@@ -195,6 +205,7 @@ files:
195
205
  - doc/SDM/SQLServer.html
196
206
  - doc/SDM/SSH.html
197
207
  - doc/SDM/SSHCert.html
208
+ - doc/SDM/SSHCustomerKey.html
198
209
  - doc/SDM/SecretStore.html
199
210
  - doc/SDM/SecretStoreCreateResponse.html
200
211
  - doc/SDM/SecretStoreDeleteResponse.html
@@ -230,6 +241,7 @@ files:
230
241
  - doc/V1/DemoProvisioningRequests/Service.html
231
242
  - doc/V1/Nodes.html
232
243
  - doc/V1/Nodes/Service.html
244
+ - doc/V1/Permissions/Service.html
233
245
  - doc/V1/Resources.html
234
246
  - doc/V1/Resources/Service.html
235
247
  - doc/V1/RoleAttachments.html
@@ -306,8 +318,6 @@ files:
306
318
  - lib/grpc/accounts_services_pb.rb
307
319
  - lib/grpc/control_panel_pb.rb
308
320
  - lib/grpc/control_panel_services_pb.rb
309
- - lib/grpc/demo_provisioning_requests_pb.rb
310
- - lib/grpc/demo_provisioning_requests_services_pb.rb
311
321
  - lib/grpc/drivers_pb.rb
312
322
  - lib/grpc/nodes_pb.rb
313
323
  - lib/grpc/nodes_services_pb.rb
@@ -351,7 +361,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
351
361
  - !ruby/object:Gem::Version
352
362
  version: 1.3.6
353
363
  requirements: []
354
- rubygems_version: 3.0.3
364
+ rubygems_version: 3.0.3.1
355
365
  signing_key:
356
366
  specification_version: 4
357
367
  summary: strongDM SDK for the Ruby programming language.
@@ -1,93 +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: demo_provisioning_requests.proto
17
-
18
- require "google/protobuf"
19
-
20
- require "options_pb"
21
- require "spec_pb"
22
- Google::Protobuf::DescriptorPool.generated_pool.build do
23
- add_file("demo_provisioning_requests.proto", :syntax => :proto3) do
24
- add_message "v1.DemoProvisioningRequestCreateRequest" do
25
- optional :meta, :message, 1, "v1.CreateRequestMetadata"
26
- optional :demo_provisioning_request, :message, 2, "v1.DemoProvisioningRequest"
27
- end
28
- add_message "v1.DemoProvisioningRequestCreateResponse" do
29
- optional :meta, :message, 1, "v1.CreateResponseMetadata"
30
- optional :demo_provisioning_request, :message, 2, "v1.DemoProvisioningRequest"
31
- optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
32
- end
33
- add_message "v1.DemoProvisioningRequestDeleteRequest" do
34
- optional :meta, :message, 1, "v1.DeleteRequestMetadata"
35
- optional :id, :string, 2
36
- end
37
- add_message "v1.DemoProvisioningRequestDeleteResponse" do
38
- optional :meta, :message, 1, "v1.DeleteResponseMetadata"
39
- optional :rate_limit, :message, 2, "v1.RateLimitMetadata"
40
- end
41
- add_message "v1.DemoProvisioningRequestUpdateRequest" do
42
- optional :meta, :message, 1, "v1.UpdateRequestMetadata"
43
- optional :id, :string, 2
44
- optional :demo_provisioning_request, :message, 3, "v1.DemoProvisioningRequest"
45
- end
46
- add_message "v1.DemoProvisioningRequestUpdateResponse" do
47
- optional :meta, :message, 1, "v1.UpdateResponseMetadata"
48
- optional :demo_provisioning_request, :message, 2, "v1.DemoProvisioningRequest"
49
- optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
50
- end
51
- add_message "v1.DemoProvisioningRequestListForOrganizationRequest" do
52
- optional :meta, :message, 1, "v1.ListRequestMetadata"
53
- optional :filter, :string, 2
54
- end
55
- add_message "v1.DemoProvisioningRequestListForOrganizationResponse" do
56
- optional :meta, :message, 1, "v1.ListResponseMetadata"
57
- repeated :demo_provisioning_requests, :message, 2, "v1.DemoProvisioningRequest"
58
- optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
59
- end
60
- add_message "v1.DemoProvisioningRequestListAllRequest" do
61
- optional :meta, :message, 1, "v1.ListRequestMetadata"
62
- optional :filter, :string, 2
63
- end
64
- add_message "v1.DemoProvisioningRequestListAllResponse" do
65
- optional :meta, :message, 1, "v1.ListResponseMetadata"
66
- repeated :demo_provisioning_requests, :message, 2, "v1.DemoProvisioningRequest"
67
- optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
68
- end
69
- add_message "v1.DemoProvisioningRequest" do
70
- optional :id, :string, 1
71
- optional :request_type, :string, 2
72
- optional :creator_id, :string, 3
73
- optional :created_resource_id, :string, 4
74
- optional :created_node_id, :string, 5
75
- optional :access_key, :string, 6
76
- optional :secret_key, :string, 7
77
- end
78
- end
79
- end
80
-
81
- module V1
82
- DemoProvisioningRequestCreateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestCreateRequest").msgclass
83
- DemoProvisioningRequestCreateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestCreateResponse").msgclass
84
- DemoProvisioningRequestDeleteRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestDeleteRequest").msgclass
85
- DemoProvisioningRequestDeleteResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestDeleteResponse").msgclass
86
- DemoProvisioningRequestUpdateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestUpdateRequest").msgclass
87
- DemoProvisioningRequestUpdateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestUpdateResponse").msgclass
88
- DemoProvisioningRequestListForOrganizationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestListForOrganizationRequest").msgclass
89
- DemoProvisioningRequestListForOrganizationResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestListForOrganizationResponse").msgclass
90
- DemoProvisioningRequestListAllRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestListAllRequest").msgclass
91
- DemoProvisioningRequestListAllResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequestListAllResponse").msgclass
92
- DemoProvisioningRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.DemoProvisioningRequest").msgclass
93
- end
@@ -1,49 +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: demo_provisioning_requests.proto for package 'v1'
17
-
18
- require "grpc"
19
- require "demo_provisioning_requests_pb"
20
-
21
- module V1
22
- module DemoProvisioningRequests
23
- # DemoProvisioningRequests coordinate provisioning of demo resources.
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.DemoProvisioningRequests"
30
-
31
- # Create
32
- rpc :Create, ::V1::DemoProvisioningRequestCreateRequest, ::V1::DemoProvisioningRequestCreateResponse
33
- # ListForOrganization gets a list of DemoProvisioningRequests in your organization
34
- # matching a given set of criteria. This operation can be done by account
35
- # administrators.
36
- rpc :ListForOrganization, ::V1::DemoProvisioningRequestListForOrganizationRequest, ::V1::DemoProvisioningRequestListForOrganizationResponse
37
- # Delete deletes a DemoProvisioningRequest.
38
- rpc :Delete, ::V1::DemoProvisioningRequestDeleteRequest, ::V1::DemoProvisioningRequestDeleteResponse
39
- # ListAll gets a list of DemoProvisioningRequests across all orgs matching a given
40
- # set of criteria. This operation can only be done by operators and the
41
- # trial provisioner.
42
- rpc :ListAll, ::V1::DemoProvisioningRequestListAllRequest, ::V1::DemoProvisioningRequestListAllResponse
43
- # Update updates a DemoProvisioningRequest.
44
- rpc :Update, ::V1::DemoProvisioningRequestUpdateRequest, ::V1::DemoProvisioningRequestUpdateResponse
45
- end
46
-
47
- Stub = Service.rpc_stub_class
48
- end
49
- end