strongdm 3.10.0 → 3.11.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.git/ORIG_HEAD +1 -1
- data/.git/index +0 -0
- data/.git/logs/HEAD +3 -3
- data/.git/logs/refs/heads/master +2 -2
- data/.git/logs/refs/remotes/origin/HEAD +1 -1
- data/.git/objects/pack/{pack-08761cccef4a0569a780c538718e708686eef894.idx → pack-4eb0d24ffce2f2f85af8f38bad16b738c3ff5ae6.idx} +0 -0
- data/.git/objects/pack/{pack-08761cccef4a0569a780c538718e708686eef894.pack → pack-4eb0d24ffce2f2f85af8f38bad16b738c3ff5ae6.pack} +0 -0
- data/.git/packed-refs +3 -2
- data/.git/refs/heads/master +1 -1
- data/lib/constants.rb +6 -0
- data/lib/grpc/drivers_pb.rb +39 -0
- data/lib/grpc/plumbing.rb +140 -0
- data/lib/grpc/queries_pb.rb +1 -0
- data/lib/grpc/queries_services_pb.rb +1 -1
- data/lib/models/porcelain.rb +166 -3
- data/lib/strongdm.rb +2 -2
- data/lib/svc.rb +3 -1
- data/lib/version +1 -1
- data/lib/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 05d015d4f19aaf6ab38e9215d9f4012099b40c9749b58051ee3c907833eaeef5
|
4
|
+
data.tar.gz: a750ed1f27766b71aa28f38eb781fe9d7d8af82897443d1b04c0d9f3a2e64891
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82d005454840630dfc91a4e5f890f92a1471285fae855a263f7d2974252a10f8ebb11ff609126ce7832c65cbf93d3c32815ace8dd07a8eed29805001f27d0fa3
|
7
|
+
data.tar.gz: 83cf7a434781fe5e190ecd30bad6b302a9942123f4d1d799f168fa018beff24110bff89d061ec8813d81326e5b0e096c3bb5b1d47ead74dc73a0c124d2bee925
|
data/.git/ORIG_HEAD
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
fb276eee8a0b2cc1415c25962410309b645373ed
|
data/.git/index
CHANGED
Binary file
|
data/.git/logs/HEAD
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
0000000000000000000000000000000000000000
|
2
|
-
|
3
|
-
|
1
|
+
0000000000000000000000000000000000000000 fb276eee8a0b2cc1415c25962410309b645373ed root <root@8ff708ee8c17.(none)> 1681499499 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
2
|
+
fb276eee8a0b2cc1415c25962410309b645373ed fb276eee8a0b2cc1415c25962410309b645373ed root <root@8ff708ee8c17.(none)> 1681499499 +0000 checkout: moving from master to master
|
3
|
+
fb276eee8a0b2cc1415c25962410309b645373ed a77792a22449d0029bebb3f66fc23f63e54a8e90 root <root@8ff708ee8c17.(none)> 1681499499 +0000 merge origin/development: Fast-forward
|
data/.git/logs/refs/heads/master
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
0000000000000000000000000000000000000000
|
2
|
-
|
1
|
+
0000000000000000000000000000000000000000 fb276eee8a0b2cc1415c25962410309b645373ed root <root@8ff708ee8c17.(none)> 1681499499 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
2
|
+
fb276eee8a0b2cc1415c25962410309b645373ed a77792a22449d0029bebb3f66fc23f63e54a8e90 root <root@8ff708ee8c17.(none)> 1681499499 +0000 merge origin/development: Fast-forward
|
@@ -1 +1 @@
|
|
1
|
-
0000000000000000000000000000000000000000
|
1
|
+
0000000000000000000000000000000000000000 fb276eee8a0b2cc1415c25962410309b645373ed root <root@8ff708ee8c17.(none)> 1681499499 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
Binary file
|
Binary file
|
data/.git/packed-refs
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# pack-refs with: peeled fully-peeled sorted
|
2
|
-
|
3
|
-
|
2
|
+
a77792a22449d0029bebb3f66fc23f63e54a8e90 refs/remotes/origin/development
|
3
|
+
fb276eee8a0b2cc1415c25962410309b645373ed refs/remotes/origin/master
|
4
4
|
2e4fe8087177ddea9b3991ca499f758384839c89 refs/tags/untagged-84fd83a4484c785cce63
|
5
5
|
04f604866214fab4d5663b5171a3e596331577bd refs/tags/v0.9.4
|
6
6
|
6f9a7b75b345c65fb554884907b7060680c807b7 refs/tags/v0.9.5
|
@@ -42,6 +42,7 @@ ee164dbda02c66cd898f0357884c58f822b486dc refs/tags/v2.6.0
|
|
42
42
|
be1460e0ed022801549a84a12897334b7064f1a7 refs/tags/v2.6.3
|
43
43
|
ebc33c297839fbbcfa70f855e599630c0a6c880c refs/tags/v2.6.4
|
44
44
|
0fbd2ab317197f8aff986524b40fb96d7aa05547 refs/tags/v3.0.0
|
45
|
+
fb276eee8a0b2cc1415c25962410309b645373ed refs/tags/v3.10.0
|
45
46
|
40d185ce8d4f4375411706886f6fbbaa5493bef6 refs/tags/v3.2.0
|
46
47
|
dd6a8a74ad5675831f42e3a820208e96f7361f80 refs/tags/v3.2.1
|
47
48
|
09ee1a3be370a7b5e21709a7857d0f189f23da8b refs/tags/v3.2.2
|
data/.git/refs/heads/master
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
a77792a22449d0029bebb3f66fc23f63e54a8e90
|
data/lib/constants.rb
CHANGED
@@ -90,6 +90,7 @@ module SDM
|
|
90
90
|
module MFAProvider
|
91
91
|
NONE = ""
|
92
92
|
DUO = "duo"
|
93
|
+
TOTP = "totp"
|
93
94
|
end
|
94
95
|
|
95
96
|
# Activity Entities, all entity types that can be part of an activity.
|
@@ -105,6 +106,7 @@ module SDM
|
|
105
106
|
REMOTE_IDENTITY = "remote_identity"
|
106
107
|
ACCESS_REQUEST = "access_request"
|
107
108
|
WORKFLOW = "workflow"
|
109
|
+
NODE = "node"
|
108
110
|
end
|
109
111
|
|
110
112
|
# Activity Verbs, describe which kind of activity has taken place.
|
@@ -238,6 +240,8 @@ module SDM
|
|
238
240
|
ACCESS_REQUEST_TO_RESOURCE_CANCELED = "access request to resource canceled"
|
239
241
|
ACCESS_REQUEST_TO_RESOURCE_DENIED = "access request to resource denied"
|
240
242
|
ACCESS_REQUEST_TO_RESOURCE_TIMED_OUT = "access request to resource timed out"
|
243
|
+
WORKFLOW_ADDED = "access workflow added"
|
244
|
+
WORKFLOW_DELETED = "access workflow deleted"
|
241
245
|
WORKFLOW_RESOURCE_ASSIGNED = "resource assigned to workflow"
|
242
246
|
WORKFLOW_RESOURCE_UNASSIGNED = "resource unassigned from workflow"
|
243
247
|
WORKFLOW_RESOURCE_MULTIPLE_ASSIGNED = "multiple resources assigned to workflow"
|
@@ -245,6 +249,8 @@ module SDM
|
|
245
249
|
WORKFLOW_NOTIFICATION_OPTION_ADDED = "workflow notification type added"
|
246
250
|
WORKFLOW_NOTIFICATION_OPTION_REMOVED = "workflow notification type removed"
|
247
251
|
WORKFLOW_NOTIFICATION_OPTIONS_UPDATED = "workflow notification settings updated"
|
252
|
+
WORKFLOW_NAME_UPDATED = "workflow name updated"
|
253
|
+
WORKFLOW_DESCRIPTION_UPDATED = "workflow description updated"
|
248
254
|
ORG_VNM_SUBNET_UPDATED = "organization VNM subnet updated"
|
249
255
|
ORG_VNM_RESOURCES_ALLOCATED = "organization resources allocated within VNM subnet"
|
250
256
|
DEPRECATED_ORG_ACTIVATE_DEVICE_APPROVAL = "activate device approval"
|
data/lib/grpc/drivers_pb.rb
CHANGED
@@ -33,6 +33,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
33
33
|
optional :aws_console_static_key_pair, :message, 3001, "v1.AWSConsoleStaticKeyPair"
|
34
34
|
optional :amazon_eks, :message, 802, "v1.AmazonEKS"
|
35
35
|
optional :amazon_eks_instance_profile, :message, 809, "v1.AmazonEKSInstanceProfile"
|
36
|
+
optional :amazon_eks_instance_profile_user_impersonation, :message, 813, "v1.AmazonEKSInstanceProfileUserImpersonation"
|
36
37
|
optional :amazon_eks_user_impersonation, :message, 818, "v1.AmazonEKSUserImpersonation"
|
37
38
|
optional :amazon_es, :message, 600, "v1.AmazonES"
|
38
39
|
optional :amazon_mqamqp_091, :message, 2501, "v1.AmazonMQAMQP091"
|
@@ -99,6 +100,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
99
100
|
optional :sybase, :message, 2000, "v1.Sybase"
|
100
101
|
optional :sybase_iq, :message, 2001, "v1.SybaseIQ"
|
101
102
|
optional :teradata, :message, 2100, "v1.Teradata"
|
103
|
+
optional :trino, :message, 1401, "v1.Trino"
|
102
104
|
end
|
103
105
|
end
|
104
106
|
add_message "v1.AKS" do
|
@@ -276,6 +278,25 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
276
278
|
optional :role_arn, :string, 6
|
277
279
|
optional :role_external_id, :string, 7
|
278
280
|
end
|
281
|
+
add_message "v1.AmazonEKSInstanceProfileUserImpersonation" do
|
282
|
+
optional :id, :string, 32768
|
283
|
+
optional :name, :string, 32769
|
284
|
+
optional :healthy, :bool, 32770
|
285
|
+
optional :tags, :message, 32771, "v1.Tags"
|
286
|
+
optional :secret_store_id, :string, 32772
|
287
|
+
optional :egress_filter, :string, 32773
|
288
|
+
optional :bind_interface, :string, 32774
|
289
|
+
optional :subdomain, :string, 32775
|
290
|
+
optional :certificate_authority, :string, 2
|
291
|
+
optional :cluster_name, :string, 5
|
292
|
+
optional :endpoint, :string, 1
|
293
|
+
optional :healthcheck_namespace, :string, 8
|
294
|
+
optional :region, :string, 4
|
295
|
+
optional :remote_identity_group_id, :string, 9
|
296
|
+
optional :remote_identity_healthcheck_username, :string, 10
|
297
|
+
optional :role_arn, :string, 6
|
298
|
+
optional :role_external_id, :string, 7
|
299
|
+
end
|
279
300
|
add_message "v1.AmazonEKSUserImpersonation" do
|
280
301
|
optional :id, :string, 32768
|
281
302
|
optional :name, :string, 32769
|
@@ -1348,6 +1369,22 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
1348
1369
|
optional :port_override, :int32, 4
|
1349
1370
|
optional :username, :string, 2
|
1350
1371
|
end
|
1372
|
+
add_message "v1.Trino" do
|
1373
|
+
optional :id, :string, 32768
|
1374
|
+
optional :name, :string, 32769
|
1375
|
+
optional :healthy, :bool, 32770
|
1376
|
+
optional :tags, :message, 32771, "v1.Tags"
|
1377
|
+
optional :secret_store_id, :string, 32772
|
1378
|
+
optional :egress_filter, :string, 32773
|
1379
|
+
optional :bind_interface, :string, 32774
|
1380
|
+
optional :subdomain, :string, 32775
|
1381
|
+
optional :database, :string, 3
|
1382
|
+
optional :hostname, :string, 1
|
1383
|
+
optional :password, :string, 2
|
1384
|
+
optional :port, :int32, 5
|
1385
|
+
optional :port_override, :int32, 4
|
1386
|
+
optional :username, :string, 6
|
1387
|
+
end
|
1351
1388
|
end
|
1352
1389
|
end
|
1353
1390
|
|
@@ -1363,6 +1400,7 @@ module V1
|
|
1363
1400
|
AWSConsoleStaticKeyPair = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AWSConsoleStaticKeyPair").msgclass
|
1364
1401
|
AmazonEKS = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AmazonEKS").msgclass
|
1365
1402
|
AmazonEKSInstanceProfile = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AmazonEKSInstanceProfile").msgclass
|
1403
|
+
AmazonEKSInstanceProfileUserImpersonation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AmazonEKSInstanceProfileUserImpersonation").msgclass
|
1366
1404
|
AmazonEKSUserImpersonation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AmazonEKSUserImpersonation").msgclass
|
1367
1405
|
AmazonES = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AmazonES").msgclass
|
1368
1406
|
AmazonMQAMQP091 = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AmazonMQAMQP091").msgclass
|
@@ -1429,4 +1467,5 @@ module V1
|
|
1429
1467
|
Sybase = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Sybase").msgclass
|
1430
1468
|
SybaseIQ = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.SybaseIQ").msgclass
|
1431
1469
|
Teradata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Teradata").msgclass
|
1470
|
+
Trino = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.Trino").msgclass
|
1432
1471
|
end
|
data/lib/grpc/plumbing.rb
CHANGED
@@ -1726,6 +1726,72 @@ module SDM
|
|
1726
1726
|
end
|
1727
1727
|
items
|
1728
1728
|
end
|
1729
|
+
def self.convert_amazon_eks_instance_profile_user_impersonation_to_porcelain(plumbing)
|
1730
|
+
if plumbing == nil
|
1731
|
+
return nil
|
1732
|
+
end
|
1733
|
+
porcelain = AmazonEKSInstanceProfileUserImpersonation.new()
|
1734
|
+
porcelain.bind_interface = (plumbing.bind_interface)
|
1735
|
+
porcelain.certificate_authority = (plumbing.certificate_authority)
|
1736
|
+
porcelain.cluster_name = (plumbing.cluster_name)
|
1737
|
+
porcelain.egress_filter = (plumbing.egress_filter)
|
1738
|
+
porcelain.endpoint = (plumbing.endpoint)
|
1739
|
+
porcelain.healthcheck_namespace = (plumbing.healthcheck_namespace)
|
1740
|
+
porcelain.healthy = (plumbing.healthy)
|
1741
|
+
porcelain.id = (plumbing.id)
|
1742
|
+
porcelain.name = (plumbing.name)
|
1743
|
+
porcelain.region = (plumbing.region)
|
1744
|
+
porcelain.remote_identity_group_id = (plumbing.remote_identity_group_id)
|
1745
|
+
porcelain.remote_identity_healthcheck_username = (plumbing.remote_identity_healthcheck_username)
|
1746
|
+
porcelain.role_arn = (plumbing.role_arn)
|
1747
|
+
porcelain.role_external_id = (plumbing.role_external_id)
|
1748
|
+
porcelain.secret_store_id = (plumbing.secret_store_id)
|
1749
|
+
porcelain.subdomain = (plumbing.subdomain)
|
1750
|
+
porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
|
1751
|
+
porcelain
|
1752
|
+
end
|
1753
|
+
|
1754
|
+
def self.convert_amazon_eks_instance_profile_user_impersonation_to_plumbing(porcelain)
|
1755
|
+
if porcelain == nil
|
1756
|
+
return nil
|
1757
|
+
end
|
1758
|
+
plumbing = V1::AmazonEKSInstanceProfileUserImpersonation.new()
|
1759
|
+
plumbing.bind_interface = (porcelain.bind_interface)
|
1760
|
+
plumbing.certificate_authority = (porcelain.certificate_authority)
|
1761
|
+
plumbing.cluster_name = (porcelain.cluster_name)
|
1762
|
+
plumbing.egress_filter = (porcelain.egress_filter)
|
1763
|
+
plumbing.endpoint = (porcelain.endpoint)
|
1764
|
+
plumbing.healthcheck_namespace = (porcelain.healthcheck_namespace)
|
1765
|
+
plumbing.healthy = (porcelain.healthy)
|
1766
|
+
plumbing.id = (porcelain.id)
|
1767
|
+
plumbing.name = (porcelain.name)
|
1768
|
+
plumbing.region = (porcelain.region)
|
1769
|
+
plumbing.remote_identity_group_id = (porcelain.remote_identity_group_id)
|
1770
|
+
plumbing.remote_identity_healthcheck_username = (porcelain.remote_identity_healthcheck_username)
|
1771
|
+
plumbing.role_arn = (porcelain.role_arn)
|
1772
|
+
plumbing.role_external_id = (porcelain.role_external_id)
|
1773
|
+
plumbing.secret_store_id = (porcelain.secret_store_id)
|
1774
|
+
plumbing.subdomain = (porcelain.subdomain)
|
1775
|
+
plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
|
1776
|
+
plumbing
|
1777
|
+
end
|
1778
|
+
def self.convert_repeated_amazon_eks_instance_profile_user_impersonation_to_plumbing(porcelains)
|
1779
|
+
items = Array.new
|
1780
|
+
porcelains.each do |porcelain|
|
1781
|
+
plumbing = convert_amazon_eks_instance_profile_user_impersonation_to_plumbing(porcelain)
|
1782
|
+
items.append(plumbing)
|
1783
|
+
end
|
1784
|
+
items
|
1785
|
+
end
|
1786
|
+
|
1787
|
+
def self.convert_repeated_amazon_eks_instance_profile_user_impersonation_to_porcelain(plumbings)
|
1788
|
+
items = Array.new
|
1789
|
+
plumbings.each do |plumbing|
|
1790
|
+
porcelain = convert_amazon_eks_instance_profile_user_impersonation_to_porcelain(plumbing)
|
1791
|
+
items.append(porcelain)
|
1792
|
+
end
|
1793
|
+
items
|
1794
|
+
end
|
1729
1795
|
def self.convert_amazon_eks_user_impersonation_to_porcelain(plumbing)
|
1730
1796
|
if plumbing == nil
|
1731
1797
|
return nil
|
@@ -5647,6 +5713,7 @@ module SDM
|
|
5647
5713
|
porcelain.account_id = (plumbing.account_id)
|
5648
5714
|
porcelain.account_last_name = (plumbing.account_last_name)
|
5649
5715
|
porcelain.account_tags = convert_tags_to_porcelain(plumbing.account_tags)
|
5716
|
+
porcelain.completed_at = convert_timestamp_to_porcelain(plumbing.completed_at)
|
5650
5717
|
porcelain.duration = convert_duration_to_porcelain(plumbing.duration)
|
5651
5718
|
porcelain.egress_node_id = (plumbing.egress_node_id)
|
5652
5719
|
porcelain.encrypted = (plumbing.encrypted)
|
@@ -5676,6 +5743,7 @@ module SDM
|
|
5676
5743
|
plumbing.account_id = (porcelain.account_id)
|
5677
5744
|
plumbing.account_last_name = (porcelain.account_last_name)
|
5678
5745
|
plumbing.account_tags = convert_tags_to_plumbing(porcelain.account_tags)
|
5746
|
+
plumbing.completed_at = convert_timestamp_to_plumbing(porcelain.completed_at)
|
5679
5747
|
plumbing.duration = convert_duration_to_plumbing(porcelain.duration)
|
5680
5748
|
plumbing.egress_node_id = (porcelain.egress_node_id)
|
5681
5749
|
plumbing.encrypted = (porcelain.encrypted)
|
@@ -6537,6 +6605,9 @@ module SDM
|
|
6537
6605
|
if porcelain.instance_of? AmazonEKSInstanceProfile
|
6538
6606
|
plumbing.amazon_eks_instance_profile = convert_amazon_eks_instance_profile_to_plumbing(porcelain)
|
6539
6607
|
end
|
6608
|
+
if porcelain.instance_of? AmazonEKSInstanceProfileUserImpersonation
|
6609
|
+
plumbing.amazon_eks_instance_profile_user_impersonation = convert_amazon_eks_instance_profile_user_impersonation_to_plumbing(porcelain)
|
6610
|
+
end
|
6540
6611
|
if porcelain.instance_of? AmazonEKSUserImpersonation
|
6541
6612
|
plumbing.amazon_eks_user_impersonation = convert_amazon_eks_user_impersonation_to_plumbing(porcelain)
|
6542
6613
|
end
|
@@ -6744,6 +6815,9 @@ module SDM
|
|
6744
6815
|
if porcelain.instance_of? Teradata
|
6745
6816
|
plumbing.teradata = convert_teradata_to_plumbing(porcelain)
|
6746
6817
|
end
|
6818
|
+
if porcelain.instance_of? Trino
|
6819
|
+
plumbing.trino = convert_trino_to_plumbing(porcelain)
|
6820
|
+
end
|
6747
6821
|
plumbing
|
6748
6822
|
end
|
6749
6823
|
|
@@ -6772,6 +6846,9 @@ module SDM
|
|
6772
6846
|
if plumbing.amazon_eks_instance_profile != nil
|
6773
6847
|
return convert_amazon_eks_instance_profile_to_porcelain(plumbing.amazon_eks_instance_profile)
|
6774
6848
|
end
|
6849
|
+
if plumbing.amazon_eks_instance_profile_user_impersonation != nil
|
6850
|
+
return convert_amazon_eks_instance_profile_user_impersonation_to_porcelain(plumbing.amazon_eks_instance_profile_user_impersonation)
|
6851
|
+
end
|
6775
6852
|
if plumbing.amazon_eks_user_impersonation != nil
|
6776
6853
|
return convert_amazon_eks_user_impersonation_to_porcelain(plumbing.amazon_eks_user_impersonation)
|
6777
6854
|
end
|
@@ -6979,6 +7056,9 @@ module SDM
|
|
6979
7056
|
if plumbing.teradata != nil
|
6980
7057
|
return convert_teradata_to_porcelain(plumbing.teradata)
|
6981
7058
|
end
|
7059
|
+
if plumbing.trino != nil
|
7060
|
+
return convert_trino_to_porcelain(plumbing.trino)
|
7061
|
+
end
|
6982
7062
|
raise UnknownError.new("unknown polymorphic type, please upgrade your SDK")
|
6983
7063
|
end
|
6984
7064
|
def self.convert_repeated_resource_to_plumbing(porcelains)
|
@@ -8459,6 +8539,66 @@ module SDM
|
|
8459
8539
|
end
|
8460
8540
|
items
|
8461
8541
|
end
|
8542
|
+
def self.convert_trino_to_porcelain(plumbing)
|
8543
|
+
if plumbing == nil
|
8544
|
+
return nil
|
8545
|
+
end
|
8546
|
+
porcelain = Trino.new()
|
8547
|
+
porcelain.bind_interface = (plumbing.bind_interface)
|
8548
|
+
porcelain.database = (plumbing.database)
|
8549
|
+
porcelain.egress_filter = (plumbing.egress_filter)
|
8550
|
+
porcelain.healthy = (plumbing.healthy)
|
8551
|
+
porcelain.hostname = (plumbing.hostname)
|
8552
|
+
porcelain.id = (plumbing.id)
|
8553
|
+
porcelain.name = (plumbing.name)
|
8554
|
+
porcelain.password = (plumbing.password)
|
8555
|
+
porcelain.port = (plumbing.port)
|
8556
|
+
porcelain.port_override = (plumbing.port_override)
|
8557
|
+
porcelain.secret_store_id = (plumbing.secret_store_id)
|
8558
|
+
porcelain.subdomain = (plumbing.subdomain)
|
8559
|
+
porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
|
8560
|
+
porcelain.username = (plumbing.username)
|
8561
|
+
porcelain
|
8562
|
+
end
|
8563
|
+
|
8564
|
+
def self.convert_trino_to_plumbing(porcelain)
|
8565
|
+
if porcelain == nil
|
8566
|
+
return nil
|
8567
|
+
end
|
8568
|
+
plumbing = V1::Trino.new()
|
8569
|
+
plumbing.bind_interface = (porcelain.bind_interface)
|
8570
|
+
plumbing.database = (porcelain.database)
|
8571
|
+
plumbing.egress_filter = (porcelain.egress_filter)
|
8572
|
+
plumbing.healthy = (porcelain.healthy)
|
8573
|
+
plumbing.hostname = (porcelain.hostname)
|
8574
|
+
plumbing.id = (porcelain.id)
|
8575
|
+
plumbing.name = (porcelain.name)
|
8576
|
+
plumbing.password = (porcelain.password)
|
8577
|
+
plumbing.port = (porcelain.port)
|
8578
|
+
plumbing.port_override = (porcelain.port_override)
|
8579
|
+
plumbing.secret_store_id = (porcelain.secret_store_id)
|
8580
|
+
plumbing.subdomain = (porcelain.subdomain)
|
8581
|
+
plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
|
8582
|
+
plumbing.username = (porcelain.username)
|
8583
|
+
plumbing
|
8584
|
+
end
|
8585
|
+
def self.convert_repeated_trino_to_plumbing(porcelains)
|
8586
|
+
items = Array.new
|
8587
|
+
porcelains.each do |porcelain|
|
8588
|
+
plumbing = convert_trino_to_plumbing(porcelain)
|
8589
|
+
items.append(plumbing)
|
8590
|
+
end
|
8591
|
+
items
|
8592
|
+
end
|
8593
|
+
|
8594
|
+
def self.convert_repeated_trino_to_porcelain(plumbings)
|
8595
|
+
items = Array.new
|
8596
|
+
plumbings.each do |plumbing|
|
8597
|
+
porcelain = convert_trino_to_porcelain(plumbing)
|
8598
|
+
items.append(porcelain)
|
8599
|
+
end
|
8600
|
+
items
|
8601
|
+
end
|
8462
8602
|
def self.convert_update_response_metadata_to_porcelain(plumbing)
|
8463
8603
|
if plumbing == nil
|
8464
8604
|
return nil
|
data/lib/grpc/queries_pb.rb
CHANGED
@@ -56,6 +56,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
56
56
|
optional :account_email, :string, 20
|
57
57
|
optional :account_tags, :message, 21, "v1.Tags"
|
58
58
|
optional :query_key_id, :string, 22
|
59
|
+
optional :completed_at, :message, 23, "google.protobuf.Timestamp"
|
59
60
|
end
|
60
61
|
end
|
61
62
|
end
|
@@ -20,7 +20,7 @@ require "queries_pb"
|
|
20
20
|
|
21
21
|
module V1
|
22
22
|
module Queries
|
23
|
-
# A Query is a record of a single client request to a resource, such as
|
23
|
+
# A Query is a record of a single client request to a resource, such as a SQL query.
|
24
24
|
# Long-running SSH, RDP, or Kubernetes interactive sessions also count as queries.
|
25
25
|
# The Queries service is read-only.
|
26
26
|
class Service
|
data/lib/models/porcelain.rb
CHANGED
@@ -1527,6 +1527,89 @@ module SDM
|
|
1527
1527
|
end
|
1528
1528
|
end
|
1529
1529
|
|
1530
|
+
class AmazonEKSInstanceProfileUserImpersonation
|
1531
|
+
# Bind interface
|
1532
|
+
attr_accessor :bind_interface
|
1533
|
+
|
1534
|
+
attr_accessor :certificate_authority
|
1535
|
+
|
1536
|
+
attr_accessor :cluster_name
|
1537
|
+
# A filter applied to the routing logic to pin datasource to nodes.
|
1538
|
+
attr_accessor :egress_filter
|
1539
|
+
|
1540
|
+
attr_accessor :endpoint
|
1541
|
+
# The path used to check the health of your connection. Defaults to `default`.
|
1542
|
+
attr_accessor :healthcheck_namespace
|
1543
|
+
# True if the datasource is reachable and the credentials are valid.
|
1544
|
+
attr_accessor :healthy
|
1545
|
+
# Unique identifier of the Resource.
|
1546
|
+
attr_accessor :id
|
1547
|
+
# Unique human-readable name of the Resource.
|
1548
|
+
attr_accessor :name
|
1549
|
+
|
1550
|
+
attr_accessor :region
|
1551
|
+
|
1552
|
+
attr_accessor :remote_identity_group_id
|
1553
|
+
|
1554
|
+
attr_accessor :remote_identity_healthcheck_username
|
1555
|
+
|
1556
|
+
attr_accessor :role_arn
|
1557
|
+
|
1558
|
+
attr_accessor :role_external_id
|
1559
|
+
# ID of the secret store containing credentials for this resource, if any.
|
1560
|
+
attr_accessor :secret_store_id
|
1561
|
+
# Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
1562
|
+
attr_accessor :subdomain
|
1563
|
+
# Tags is a map of key, value pairs.
|
1564
|
+
attr_accessor :tags
|
1565
|
+
|
1566
|
+
def initialize(
|
1567
|
+
bind_interface: nil,
|
1568
|
+
certificate_authority: nil,
|
1569
|
+
cluster_name: nil,
|
1570
|
+
egress_filter: nil,
|
1571
|
+
endpoint: nil,
|
1572
|
+
healthcheck_namespace: nil,
|
1573
|
+
healthy: nil,
|
1574
|
+
id: nil,
|
1575
|
+
name: nil,
|
1576
|
+
region: nil,
|
1577
|
+
remote_identity_group_id: nil,
|
1578
|
+
remote_identity_healthcheck_username: nil,
|
1579
|
+
role_arn: nil,
|
1580
|
+
role_external_id: nil,
|
1581
|
+
secret_store_id: nil,
|
1582
|
+
subdomain: nil,
|
1583
|
+
tags: nil
|
1584
|
+
)
|
1585
|
+
@bind_interface = bind_interface == nil ? "" : bind_interface
|
1586
|
+
@certificate_authority = certificate_authority == nil ? "" : certificate_authority
|
1587
|
+
@cluster_name = cluster_name == nil ? "" : cluster_name
|
1588
|
+
@egress_filter = egress_filter == nil ? "" : egress_filter
|
1589
|
+
@endpoint = endpoint == nil ? "" : endpoint
|
1590
|
+
@healthcheck_namespace = healthcheck_namespace == nil ? "" : healthcheck_namespace
|
1591
|
+
@healthy = healthy == nil ? false : healthy
|
1592
|
+
@id = id == nil ? "" : id
|
1593
|
+
@name = name == nil ? "" : name
|
1594
|
+
@region = region == nil ? "" : region
|
1595
|
+
@remote_identity_group_id = remote_identity_group_id == nil ? "" : remote_identity_group_id
|
1596
|
+
@remote_identity_healthcheck_username = remote_identity_healthcheck_username == nil ? "" : remote_identity_healthcheck_username
|
1597
|
+
@role_arn = role_arn == nil ? "" : role_arn
|
1598
|
+
@role_external_id = role_external_id == nil ? "" : role_external_id
|
1599
|
+
@secret_store_id = secret_store_id == nil ? "" : secret_store_id
|
1600
|
+
@subdomain = subdomain == nil ? "" : subdomain
|
1601
|
+
@tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
|
1602
|
+
end
|
1603
|
+
|
1604
|
+
def to_json(options = {})
|
1605
|
+
hash = {}
|
1606
|
+
self.instance_variables.each do |var|
|
1607
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
1608
|
+
end
|
1609
|
+
hash.to_json
|
1610
|
+
end
|
1611
|
+
end
|
1612
|
+
|
1530
1613
|
class AmazonEKSUserImpersonation
|
1531
1614
|
attr_accessor :access_key
|
1532
1615
|
# Bind interface
|
@@ -2082,7 +2165,6 @@ module SDM
|
|
2082
2165
|
end
|
2083
2166
|
end
|
2084
2167
|
|
2085
|
-
# AzureMysql is currently unstable, and its API may change, or it may be removed, without a major version bump.
|
2086
2168
|
class AzureMysql
|
2087
2169
|
# Bind interface
|
2088
2170
|
attr_accessor :bind_interface
|
@@ -5842,7 +5924,11 @@ module SDM
|
|
5842
5924
|
end
|
5843
5925
|
end
|
5844
5926
|
|
5845
|
-
# A Query is a record of a single client request to a resource, such as
|
5927
|
+
# A Query is a record of a single client request to a resource, such as a SQL query.
|
5928
|
+
# Longer-running queries including long-running SSH commands and SSH, RDP, or Kubernetes
|
5929
|
+
# interactive sessions will return two Query records with the same identifier, one record
|
5930
|
+
# at the start of the query and a second record upon the completion of the query with
|
5931
|
+
# additional detail.
|
5846
5932
|
class Query
|
5847
5933
|
# The email of the account performing this query, at the time the query was executed.
|
5848
5934
|
# If the account email is later changed, that change will not be reflected via this field.
|
@@ -5858,6 +5944,9 @@ module SDM
|
|
5858
5944
|
# The tags of the account accessed, at the time the query was executed. If the account
|
5859
5945
|
# tags are later changed, that change will not be reflected via this field.
|
5860
5946
|
attr_accessor :account_tags
|
5947
|
+
# The time at which the Query was completed.
|
5948
|
+
# Empty if this record indicates the start of a long-running query.
|
5949
|
+
attr_accessor :completed_at
|
5861
5950
|
# The duration of the Query.
|
5862
5951
|
attr_accessor :duration
|
5863
5952
|
# The unique ID of the node through which the Resource was accessed.
|
@@ -5893,7 +5982,7 @@ module SDM
|
|
5893
5982
|
attr_accessor :resource_tags
|
5894
5983
|
# The specific type of Resource against which the Query was performed, e.g. "ssh" or "postgres".
|
5895
5984
|
attr_accessor :resource_type
|
5896
|
-
# The time at which the Query was
|
5985
|
+
# The time at which the Query was started.
|
5897
5986
|
attr_accessor :timestamp
|
5898
5987
|
|
5899
5988
|
def initialize(
|
@@ -5902,6 +5991,7 @@ module SDM
|
|
5902
5991
|
account_id: nil,
|
5903
5992
|
account_last_name: nil,
|
5904
5993
|
account_tags: nil,
|
5994
|
+
completed_at: nil,
|
5905
5995
|
duration: nil,
|
5906
5996
|
egress_node_id: nil,
|
5907
5997
|
encrypted: nil,
|
@@ -5924,6 +6014,7 @@ module SDM
|
|
5924
6014
|
@account_id = account_id == nil ? "" : account_id
|
5925
6015
|
@account_last_name = account_last_name == nil ? "" : account_last_name
|
5926
6016
|
@account_tags = account_tags == nil ? SDM::_porcelain_zero_value_tags() : account_tags
|
6017
|
+
@completed_at = completed_at == nil ? nil : completed_at
|
5927
6018
|
@duration = duration == nil ? nil : duration
|
5928
6019
|
@egress_node_id = egress_node_id == nil ? "" : egress_node_id
|
5929
6020
|
@encrypted = encrypted == nil ? false : encrypted
|
@@ -8007,6 +8098,78 @@ module SDM
|
|
8007
8098
|
end
|
8008
8099
|
end
|
8009
8100
|
|
8101
|
+
# Trino is currently unstable, and its API may change, or it may be removed, without a major version bump.
|
8102
|
+
class Trino
|
8103
|
+
# Bind interface
|
8104
|
+
attr_accessor :bind_interface
|
8105
|
+
|
8106
|
+
attr_accessor :database
|
8107
|
+
# A filter applied to the routing logic to pin datasource to nodes.
|
8108
|
+
attr_accessor :egress_filter
|
8109
|
+
# True if the datasource is reachable and the credentials are valid.
|
8110
|
+
attr_accessor :healthy
|
8111
|
+
|
8112
|
+
attr_accessor :hostname
|
8113
|
+
# Unique identifier of the Resource.
|
8114
|
+
attr_accessor :id
|
8115
|
+
# Unique human-readable name of the Resource.
|
8116
|
+
attr_accessor :name
|
8117
|
+
|
8118
|
+
attr_accessor :password
|
8119
|
+
|
8120
|
+
attr_accessor :port
|
8121
|
+
|
8122
|
+
attr_accessor :port_override
|
8123
|
+
# ID of the secret store containing credentials for this resource, if any.
|
8124
|
+
attr_accessor :secret_store_id
|
8125
|
+
# Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
8126
|
+
attr_accessor :subdomain
|
8127
|
+
# Tags is a map of key, value pairs.
|
8128
|
+
attr_accessor :tags
|
8129
|
+
|
8130
|
+
attr_accessor :username
|
8131
|
+
|
8132
|
+
def initialize(
|
8133
|
+
bind_interface: nil,
|
8134
|
+
database: nil,
|
8135
|
+
egress_filter: nil,
|
8136
|
+
healthy: nil,
|
8137
|
+
hostname: nil,
|
8138
|
+
id: nil,
|
8139
|
+
name: nil,
|
8140
|
+
password: nil,
|
8141
|
+
port: nil,
|
8142
|
+
port_override: nil,
|
8143
|
+
secret_store_id: nil,
|
8144
|
+
subdomain: nil,
|
8145
|
+
tags: nil,
|
8146
|
+
username: nil
|
8147
|
+
)
|
8148
|
+
@bind_interface = bind_interface == nil ? "" : bind_interface
|
8149
|
+
@database = database == nil ? "" : database
|
8150
|
+
@egress_filter = egress_filter == nil ? "" : egress_filter
|
8151
|
+
@healthy = healthy == nil ? false : healthy
|
8152
|
+
@hostname = hostname == nil ? "" : hostname
|
8153
|
+
@id = id == nil ? "" : id
|
8154
|
+
@name = name == nil ? "" : name
|
8155
|
+
@password = password == nil ? "" : password
|
8156
|
+
@port = port == nil ? 0 : port
|
8157
|
+
@port_override = port_override == nil ? 0 : port_override
|
8158
|
+
@secret_store_id = secret_store_id == nil ? "" : secret_store_id
|
8159
|
+
@subdomain = subdomain == nil ? "" : subdomain
|
8160
|
+
@tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
|
8161
|
+
@username = username == nil ? "" : username
|
8162
|
+
end
|
8163
|
+
|
8164
|
+
def to_json(options = {})
|
8165
|
+
hash = {}
|
8166
|
+
self.instance_variables.each do |var|
|
8167
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
8168
|
+
end
|
8169
|
+
hash.to_json
|
8170
|
+
end
|
8171
|
+
end
|
8172
|
+
|
8010
8173
|
# UpdateResponseMetadata is reserved for future use.
|
8011
8174
|
class UpdateResponseMetadata
|
8012
8175
|
def initialize()
|
data/lib/strongdm.rb
CHANGED
@@ -29,7 +29,7 @@ module SDM #:nodoc:
|
|
29
29
|
DEFAULT_BASE_RETRY_DELAY = 0.0030 # 30 ms
|
30
30
|
DEFAULT_MAX_RETRY_DELAY = 300 # 300 seconds
|
31
31
|
API_VERSION = "2021-08-23"
|
32
|
-
USER_AGENT = "strongdm-sdk-ruby/3.
|
32
|
+
USER_AGENT = "strongdm-sdk-ruby/3.11.0"
|
33
33
|
private_constant :DEFAULT_MAX_RETRIES, :DEFAULT_BASE_RETRY_DELAY, :DEFAULT_MAX_RETRY_DELAY, :API_VERSION, :USER_AGENT
|
34
34
|
|
35
35
|
# Creates a new strongDM API client.
|
@@ -236,7 +236,7 @@ module SDM #:nodoc:
|
|
236
236
|
#
|
237
237
|
# See {OrganizationHistory}.
|
238
238
|
attr_reader :organization_history
|
239
|
-
# A Query is a record of a single client request to a resource, such as
|
239
|
+
# A Query is a record of a single client request to a resource, such as a SQL query.
|
240
240
|
# Long-running SSH, RDP, or Kubernetes interactive sessions also count as queries.
|
241
241
|
# The Queries service is read-only.
|
242
242
|
#
|
data/lib/svc.rb
CHANGED
@@ -1486,7 +1486,7 @@ module SDM #:nodoc:
|
|
1486
1486
|
end
|
1487
1487
|
end
|
1488
1488
|
|
1489
|
-
# A Query is a record of a single client request to a resource, such as
|
1489
|
+
# A Query is a record of a single client request to a resource, such as a SQL query.
|
1490
1490
|
# Long-running SSH, RDP, or Kubernetes interactive sessions also count as queries.
|
1491
1491
|
# The Queries service is read-only.
|
1492
1492
|
#
|
@@ -2062,6 +2062,7 @@ module SDM #:nodoc:
|
|
2062
2062
|
# {AKSUserImpersonation}
|
2063
2063
|
# {AmazonEKS}
|
2064
2064
|
# {AmazonEKSInstanceProfile}
|
2065
|
+
# {AmazonEKSInstanceProfileUserImpersonation}
|
2065
2066
|
# {AmazonEKSUserImpersonation}
|
2066
2067
|
# {AmazonES}
|
2067
2068
|
# {AmazonMQAMQP091}
|
@@ -2131,6 +2132,7 @@ module SDM #:nodoc:
|
|
2131
2132
|
# {Sybase}
|
2132
2133
|
# {SybaseIQ}
|
2133
2134
|
# {Teradata}
|
2135
|
+
# {Trino}
|
2134
2136
|
class Resources
|
2135
2137
|
extend Gem::Deprecate
|
2136
2138
|
|
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: 3.
|
4
|
+
version: 3.11.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- strongDM Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: grpc
|
@@ -81,8 +81,8 @@ files:
|
|
81
81
|
- "./.git/logs/HEAD"
|
82
82
|
- "./.git/logs/refs/heads/master"
|
83
83
|
- "./.git/logs/refs/remotes/origin/HEAD"
|
84
|
-
- "./.git/objects/pack/pack-
|
85
|
-
- "./.git/objects/pack/pack-
|
84
|
+
- "./.git/objects/pack/pack-4eb0d24ffce2f2f85af8f38bad16b738c3ff5ae6.idx"
|
85
|
+
- "./.git/objects/pack/pack-4eb0d24ffce2f2f85af8f38bad16b738c3ff5ae6.pack"
|
86
86
|
- "./.git/packed-refs"
|
87
87
|
- "./.git/refs/heads/master"
|
88
88
|
- "./.git/refs/remotes/origin/HEAD"
|