strongdm 16.0.0 → 16.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 727d38f039c6a948149654b910f77ebc0176144ffed5189f502a49decf0679ab
4
- data.tar.gz: dd53c8e6c5b3231783e76c053b9f7217dee7bdcab2c1f8889613029bdea3289f
3
+ metadata.gz: e79ba1d6ec6851ea381eb58be30b41d2ab3cd7abcc95849de64edfe60b70089e
4
+ data.tar.gz: fcb6f36402b76b5d6da91c4bbb9f3b7b6253ed232ad59b6c4bbabebb7a1a1ceb
5
5
  SHA512:
6
- metadata.gz: 60e4f23b025558a7a05457b779a2f7e01648b1b0c6e917ecc4ce042e7fc83c94fb3eb3a08acdcddf35cec1686a9756a55b222eb97f6d326d38b6faadf9d2f47f
7
- data.tar.gz: deb5a7feffe46346b3036f3936eaeb394d4285af27489da8588285ee37286c0ef8ca3949949600a5935d3fdc9b57e94fbffb705c9c959f6370fe2c71192e606d
6
+ metadata.gz: 357e1feb48f489f91b04553309a759f37edd406d1e916675c8ba5893a680e79212075f129e18b8ce8b202112a6db73862458ca805ad2b830316386c6cdc2a1a3
7
+ data.tar.gz: af8c9e7e122fc1d41dbd7436bcfa0d17f927a15198b44c0b77bc400c1161c97c56e0bcc62f2129d7e4b1a43cec967cb053f540e7b82ebf935d377f99644f01ca
data/.git/ORIG_HEAD CHANGED
@@ -1 +1 @@
1
- c3b0eeef356ddf0cf408d1305fd766791121803f
1
+ 38de225069b8053585aeb22f569abdd9d1ffe5dd
data/.git/index CHANGED
Binary file
data/.git/logs/HEAD CHANGED
@@ -1,3 +1,3 @@
1
- 0000000000000000000000000000000000000000 c3b0eeef356ddf0cf408d1305fd766791121803f root <root@d28ab1d760cb.(none)> 1768395592 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
- c3b0eeef356ddf0cf408d1305fd766791121803f c3b0eeef356ddf0cf408d1305fd766791121803f root <root@d28ab1d760cb.(none)> 1768395592 +0000 checkout: moving from master to master
3
- c3b0eeef356ddf0cf408d1305fd766791121803f 68c6bf260ea0ac7c4c151e0de221aac18fabcd3c root <root@d28ab1d760cb.(none)> 1768395593 +0000 merge origin/development: Fast-forward
1
+ 0000000000000000000000000000000000000000 38de225069b8053585aeb22f569abdd9d1ffe5dd root <root@9a0d260f8aa9.(none)> 1769721443 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
+ 38de225069b8053585aeb22f569abdd9d1ffe5dd 38de225069b8053585aeb22f569abdd9d1ffe5dd root <root@9a0d260f8aa9.(none)> 1769721443 +0000 checkout: moving from master to master
3
+ 38de225069b8053585aeb22f569abdd9d1ffe5dd 3f2a99e1a4296cf5b4937d57b901051b9381c209 root <root@9a0d260f8aa9.(none)> 1769721443 +0000 merge origin/development: Fast-forward
@@ -1,2 +1,2 @@
1
- 0000000000000000000000000000000000000000 c3b0eeef356ddf0cf408d1305fd766791121803f root <root@d28ab1d760cb.(none)> 1768395592 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
- c3b0eeef356ddf0cf408d1305fd766791121803f 68c6bf260ea0ac7c4c151e0de221aac18fabcd3c root <root@d28ab1d760cb.(none)> 1768395593 +0000 merge origin/development: Fast-forward
1
+ 0000000000000000000000000000000000000000 38de225069b8053585aeb22f569abdd9d1ffe5dd root <root@9a0d260f8aa9.(none)> 1769721443 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
+ 38de225069b8053585aeb22f569abdd9d1ffe5dd 3f2a99e1a4296cf5b4937d57b901051b9381c209 root <root@9a0d260f8aa9.(none)> 1769721443 +0000 merge origin/development: Fast-forward
@@ -1 +1 @@
1
- 0000000000000000000000000000000000000000 c3b0eeef356ddf0cf408d1305fd766791121803f root <root@d28ab1d760cb.(none)> 1768395592 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
1
+ 0000000000000000000000000000000000000000 38de225069b8053585aeb22f569abdd9d1ffe5dd root <root@9a0d260f8aa9.(none)> 1769721443 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
data/.git/packed-refs CHANGED
@@ -1,6 +1,6 @@
1
1
  # pack-refs with: peeled fully-peeled sorted
2
- 68c6bf260ea0ac7c4c151e0de221aac18fabcd3c refs/remotes/origin/development
3
- c3b0eeef356ddf0cf408d1305fd766791121803f refs/remotes/origin/master
2
+ 3f2a99e1a4296cf5b4937d57b901051b9381c209 refs/remotes/origin/development
3
+ 38de225069b8053585aeb22f569abdd9d1ffe5dd 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
@@ -138,6 +138,8 @@ c3b0eeef356ddf0cf408d1305fd766791121803f refs/tags/v15.46.0
138
138
  6e8e9210b26f02ebe925b8e81909ba42985cfde7 refs/tags/v15.7.0
139
139
  160edd2c226d40be717f67133e89665771a76b2c refs/tags/v15.8.0
140
140
  7f7219aef993abd973ae52458c083efd445d67e7 refs/tags/v15.9.0
141
+ 68c6bf260ea0ac7c4c151e0de221aac18fabcd3c refs/tags/v16.0.0
142
+ 38de225069b8053585aeb22f569abdd9d1ffe5dd refs/tags/v16.1.0
141
143
  e0b1ec0134c7015ccb8c14464cc713c20034159e refs/tags/v2.0.0
142
144
  62a146d9d56852b2ad14ec5d2796cad158d66e1c refs/tags/v2.1.0
143
145
  9de04e628082f4ad0eb9511311479a089d302008 refs/tags/v2.2.0
@@ -1 +1 @@
1
- 68c6bf260ea0ac7c4c151e0de221aac18fabcd3c
1
+ 3f2a99e1a4296cf5b4937d57b901051b9381c209
@@ -97,6 +97,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
97
97
  optional :manager_id, :string, 14
98
98
  optional :resolved_manager_id, :string, 15
99
99
  optional :created_at, :message, 16, "google.protobuf.Timestamp"
100
+ optional :employee_number, :string, 17
100
101
  end
101
102
  add_message "v1.Service" do
102
103
  optional :id, :string, 1
@@ -0,0 +1,38 @@
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: custom_headers.proto
17
+
18
+ require "google/protobuf"
19
+
20
+ require "options_pb"
21
+
22
+ Google::Protobuf::DescriptorPool.generated_pool.build do
23
+ add_file("custom_headers.proto", :syntax => :proto3) do
24
+ add_message "v1.CustomHeaders" do
25
+ repeated :custom_headers, :message, 1, "v1.CustomHeader"
26
+ end
27
+ add_message "v1.CustomHeader" do
28
+ optional :name, :string, 1
29
+ optional :value, :string, 2
30
+ optional :secret, :bool, 3
31
+ end
32
+ end
33
+ end
34
+
35
+ module V1
36
+ CustomHeaders = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.CustomHeaders").msgclass
37
+ CustomHeader = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.CustomHeader").msgclass
38
+ end
@@ -19,6 +19,7 @@ require "google/protobuf"
19
19
 
20
20
  require "options_pb"
21
21
  require "tags_pb"
22
+ require "custom_headers_pb"
22
23
 
23
24
  Google::Protobuf::DescriptorPool.generated_pool.build do
24
25
  add_file("drivers.proto", :syntax => :proto3) do
@@ -1220,6 +1221,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1220
1221
  optional :bind_interface, :string, 32774
1221
1222
  optional :proxy_cluster_id, :string, 32776
1222
1223
  optional :auth_header, :string, 3
1224
+ optional :custom_headers, :message, 13, "v1.CustomHeaders"
1223
1225
  optional :default_path, :string, 5
1224
1226
  optional :headers_blacklist, :string, 4
1225
1227
  optional :healthcheck_path, :string, 2
@@ -1237,6 +1239,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1237
1239
  optional :egress_filter, :string, 32773
1238
1240
  optional :bind_interface, :string, 32774
1239
1241
  optional :proxy_cluster_id, :string, 32776
1242
+ optional :custom_headers, :message, 13, "v1.CustomHeaders"
1240
1243
  optional :default_path, :string, 6
1241
1244
  optional :headers_blacklist, :string, 5
1242
1245
  optional :healthcheck_path, :string, 2
@@ -1256,6 +1259,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1256
1259
  optional :egress_filter, :string, 32773
1257
1260
  optional :bind_interface, :string, 32774
1258
1261
  optional :proxy_cluster_id, :string, 32776
1262
+ optional :custom_headers, :message, 13, "v1.CustomHeaders"
1259
1263
  optional :default_path, :string, 4
1260
1264
  optional :headers_blacklist, :string, 3
1261
1265
  optional :healthcheck_path, :string, 2
@@ -1390,6 +1394,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1390
1394
  optional :subdomain, :string, 32775
1391
1395
  optional :hostname, :string, 1
1392
1396
  optional :oauth_auth_endpoint, :string, 8
1397
+ optional :oauth_register_endpoint, :string, 10
1393
1398
  optional :oauth_token_endpoint, :string, 9
1394
1399
  optional :password, :string, 2
1395
1400
  optional :port, :int32, 5
@@ -1646,7 +1651,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1646
1651
  optional :bind_interface, :string, 32774
1647
1652
  optional :proxy_cluster_id, :string, 32776
1648
1653
  optional :subdomain, :string, 32775
1654
+ optional :discovery_enabled, :bool, 6
1649
1655
  optional :domain, :string, 1
1656
+ optional :group_names, :string, 7
1650
1657
  optional :identity_set_id, :string, 3
1651
1658
  optional :privilege_levels, :string, 2
1652
1659
  end
@@ -1733,6 +1740,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
1733
1740
  optional :proxy_cluster_id, :string, 32776
1734
1741
  optional :subdomain, :string, 32775
1735
1742
  optional :downgrade_nla_connections, :bool, 6
1743
+ optional :enable_ephemeral_accounts, :bool, 13
1736
1744
  optional :hostname, :string, 1
1737
1745
  optional :identity_alias_healthcheck_username, :string, 12
1738
1746
  optional :identity_set_id, :string, 11
data/lib/grpc/plumbing.rb CHANGED
@@ -24,6 +24,7 @@ require_relative "./tags_pb"
24
24
  require_relative "./access_requests_pb"
25
25
  require_relative "./access_request_events_history_pb"
26
26
  require_relative "./access_requests_history_pb"
27
+ require_relative "./custom_headers_pb"
27
28
  require_relative "./drivers_pb"
28
29
  require_relative "./account_attachments_pb"
29
30
  require_relative "./account_attachments_history_pb"
@@ -6062,6 +6063,78 @@ module SDM
6062
6063
  end
6063
6064
  items
6064
6065
  end
6066
+ def self.convert_custom_header_to_porcelain(plumbing)
6067
+ if plumbing == nil
6068
+ return nil
6069
+ end
6070
+ porcelain = CustomHeader.new()
6071
+ porcelain.name = (plumbing.name)
6072
+ porcelain.secret = (plumbing.secret)
6073
+ porcelain.value = (plumbing.value)
6074
+ porcelain
6075
+ end
6076
+
6077
+ def self.convert_custom_header_to_plumbing(porcelain)
6078
+ if porcelain == nil
6079
+ return nil
6080
+ end
6081
+ plumbing = V1::CustomHeader.new()
6082
+ plumbing.name = (porcelain.name)
6083
+ plumbing.secret = (porcelain.secret)
6084
+ plumbing.value = (porcelain.value)
6085
+ plumbing
6086
+ end
6087
+ def self.convert_repeated_custom_header_to_plumbing(porcelains)
6088
+ items = Array.new
6089
+ porcelains.each do |porcelain|
6090
+ plumbing = convert_custom_header_to_plumbing(porcelain)
6091
+ items.append(plumbing)
6092
+ end
6093
+ items
6094
+ end
6095
+
6096
+ def self.convert_repeated_custom_header_to_porcelain(plumbings)
6097
+ items = Array.new
6098
+ plumbings.each do |plumbing|
6099
+ porcelain = convert_custom_header_to_porcelain(plumbing)
6100
+ items.append(porcelain)
6101
+ end
6102
+ items
6103
+ end
6104
+ def self.convert_custom_headers_to_porcelain(plumbing)
6105
+ if plumbing == nil
6106
+ return nil
6107
+ end
6108
+ porcelain = CustomHeaders.new()
6109
+ porcelain.custom_headers = convert_repeated_custom_header_to_porcelain(plumbing.custom_headers)
6110
+ porcelain
6111
+ end
6112
+
6113
+ def self.convert_custom_headers_to_plumbing(porcelain)
6114
+ if porcelain == nil
6115
+ return nil
6116
+ end
6117
+ plumbing = V1::CustomHeaders.new()
6118
+ plumbing.custom_headers += convert_repeated_custom_header_to_plumbing(porcelain.custom_headers)
6119
+ plumbing
6120
+ end
6121
+ def self.convert_repeated_custom_headers_to_plumbing(porcelains)
6122
+ items = Array.new
6123
+ porcelains.each do |porcelain|
6124
+ plumbing = convert_custom_headers_to_plumbing(porcelain)
6125
+ items.append(plumbing)
6126
+ end
6127
+ items
6128
+ end
6129
+
6130
+ def self.convert_repeated_custom_headers_to_porcelain(plumbings)
6131
+ items = Array.new
6132
+ plumbings.each do |plumbing|
6133
+ porcelain = convert_custom_headers_to_porcelain(plumbing)
6134
+ items.append(porcelain)
6135
+ end
6136
+ items
6137
+ end
6065
6138
  def self.convert_cyberark_conjur_store_to_porcelain(plumbing)
6066
6139
  if plumbing == nil
6067
6140
  return nil
@@ -8747,6 +8820,7 @@ module SDM
8747
8820
  porcelain = HTTPAuth.new()
8748
8821
  porcelain.auth_header = (plumbing.auth_header)
8749
8822
  porcelain.bind_interface = (plumbing.bind_interface)
8823
+ porcelain.custom_headers = convert_custom_headers_to_porcelain(plumbing.custom_headers)
8750
8824
  porcelain.default_path = (plumbing.default_path)
8751
8825
  porcelain.egress_filter = (plumbing.egress_filter)
8752
8826
  porcelain.headers_blacklist = (plumbing.headers_blacklist)
@@ -8771,6 +8845,7 @@ module SDM
8771
8845
  plumbing = V1::HTTPAuth.new()
8772
8846
  plumbing.auth_header = (porcelain.auth_header)
8773
8847
  plumbing.bind_interface = (porcelain.bind_interface)
8848
+ plumbing.custom_headers = convert_custom_headers_to_plumbing(porcelain.custom_headers)
8774
8849
  plumbing.default_path = (porcelain.default_path)
8775
8850
  plumbing.egress_filter = (porcelain.egress_filter)
8776
8851
  plumbing.headers_blacklist = (porcelain.headers_blacklist)
@@ -8810,6 +8885,7 @@ module SDM
8810
8885
  end
8811
8886
  porcelain = HTTPBasicAuth.new()
8812
8887
  porcelain.bind_interface = (plumbing.bind_interface)
8888
+ porcelain.custom_headers = convert_custom_headers_to_porcelain(plumbing.custom_headers)
8813
8889
  porcelain.default_path = (plumbing.default_path)
8814
8890
  porcelain.egress_filter = (plumbing.egress_filter)
8815
8891
  porcelain.headers_blacklist = (plumbing.headers_blacklist)
@@ -8835,6 +8911,7 @@ module SDM
8835
8911
  end
8836
8912
  plumbing = V1::HTTPBasicAuth.new()
8837
8913
  plumbing.bind_interface = (porcelain.bind_interface)
8914
+ plumbing.custom_headers = convert_custom_headers_to_plumbing(porcelain.custom_headers)
8838
8915
  plumbing.default_path = (porcelain.default_path)
8839
8916
  plumbing.egress_filter = (porcelain.egress_filter)
8840
8917
  plumbing.headers_blacklist = (porcelain.headers_blacklist)
@@ -8876,6 +8953,7 @@ module SDM
8876
8953
  end
8877
8954
  porcelain = HTTPNoAuth.new()
8878
8955
  porcelain.bind_interface = (plumbing.bind_interface)
8956
+ porcelain.custom_headers = convert_custom_headers_to_porcelain(plumbing.custom_headers)
8879
8957
  porcelain.default_path = (plumbing.default_path)
8880
8958
  porcelain.egress_filter = (plumbing.egress_filter)
8881
8959
  porcelain.headers_blacklist = (plumbing.headers_blacklist)
@@ -8899,6 +8977,7 @@ module SDM
8899
8977
  end
8900
8978
  plumbing = V1::HTTPNoAuth.new()
8901
8979
  plumbing.bind_interface = (porcelain.bind_interface)
8980
+ plumbing.custom_headers = convert_custom_headers_to_plumbing(porcelain.custom_headers)
8902
8981
  plumbing.default_path = (porcelain.default_path)
8903
8982
  plumbing.egress_filter = (porcelain.egress_filter)
8904
8983
  plumbing.headers_blacklist = (porcelain.headers_blacklist)
@@ -10224,6 +10303,7 @@ module SDM
10224
10303
  porcelain.id = (plumbing.id)
10225
10304
  porcelain.name = (plumbing.name)
10226
10305
  porcelain.oauth_auth_endpoint = (plumbing.oauth_auth_endpoint)
10306
+ porcelain.oauth_register_endpoint = (plumbing.oauth_register_endpoint)
10227
10307
  porcelain.oauth_token_endpoint = (plumbing.oauth_token_endpoint)
10228
10308
  porcelain.password = (plumbing.password)
10229
10309
  porcelain.port = (plumbing.port)
@@ -10248,6 +10328,7 @@ module SDM
10248
10328
  plumbing.id = (porcelain.id)
10249
10329
  plumbing.name = (porcelain.name)
10250
10330
  plumbing.oauth_auth_endpoint = (porcelain.oauth_auth_endpoint)
10331
+ plumbing.oauth_register_endpoint = (porcelain.oauth_register_endpoint)
10251
10332
  plumbing.oauth_token_endpoint = (porcelain.oauth_token_endpoint)
10252
10333
  plumbing.password = (porcelain.password)
10253
10334
  plumbing.port = (porcelain.port)
@@ -12355,8 +12436,10 @@ module SDM
12355
12436
  end
12356
12437
  porcelain = OktaGroups.new()
12357
12438
  porcelain.bind_interface = (plumbing.bind_interface)
12439
+ porcelain.discovery_enabled = (plumbing.discovery_enabled)
12358
12440
  porcelain.domain = (plumbing.domain)
12359
12441
  porcelain.egress_filter = (plumbing.egress_filter)
12442
+ porcelain.group_names = (plumbing.group_names)
12360
12443
  porcelain.healthy = (plumbing.healthy)
12361
12444
  porcelain.id = (plumbing.id)
12362
12445
  porcelain.identity_set_id = (plumbing.identity_set_id)
@@ -12375,8 +12458,10 @@ module SDM
12375
12458
  end
12376
12459
  plumbing = V1::OktaGroups.new()
12377
12460
  plumbing.bind_interface = (porcelain.bind_interface)
12461
+ plumbing.discovery_enabled = (porcelain.discovery_enabled)
12378
12462
  plumbing.domain = (porcelain.domain)
12379
12463
  plumbing.egress_filter = (porcelain.egress_filter)
12464
+ plumbing.group_names = (porcelain.group_names)
12380
12465
  plumbing.healthy = (porcelain.healthy)
12381
12466
  plumbing.id = (porcelain.id)
12382
12467
  plumbing.identity_set_id = (porcelain.identity_set_id)
@@ -18794,6 +18879,7 @@ module SDM
18794
18879
  porcelain.scim = (plumbing.SCIM)
18795
18880
  porcelain.created_at = convert_timestamp_to_porcelain(plumbing.created_at)
18796
18881
  porcelain.email = (plumbing.email)
18882
+ porcelain.employee_number = (plumbing.employee_number)
18797
18883
  porcelain.external_id = (plumbing.external_id)
18798
18884
  porcelain.first_name = (plumbing.first_name)
18799
18885
  porcelain.id = (plumbing.id)
@@ -18816,6 +18902,7 @@ module SDM
18816
18902
  plumbing.SCIM = (porcelain.scim)
18817
18903
  plumbing.created_at = convert_timestamp_to_plumbing(porcelain.created_at)
18818
18904
  plumbing.email = (porcelain.email)
18905
+ plumbing.employee_number = (porcelain.employee_number)
18819
18906
  plumbing.external_id = (porcelain.external_id)
18820
18907
  plumbing.first_name = (porcelain.first_name)
18821
18908
  plumbing.id = (porcelain.id)
@@ -5727,6 +5727,54 @@ module SDM
5727
5727
  end
5728
5728
  end
5729
5729
 
5730
+ # CustomHeader describes a single HTTP header
5731
+ class CustomHeader
5732
+ # The name of this header.
5733
+ attr_accessor :name
5734
+ # Headers containing sensitive values must be stored encrypted and redacted from logs.
5735
+ attr_accessor :secret
5736
+ # The value of this header.
5737
+ attr_accessor :value
5738
+
5739
+ def initialize(
5740
+ name: nil,
5741
+ secret: nil,
5742
+ value: nil
5743
+ )
5744
+ @name = name == nil ? "" : name
5745
+ @secret = secret == nil ? false : secret
5746
+ @value = value == nil ? "" : value
5747
+ end
5748
+
5749
+ def to_json(options = {})
5750
+ hash = {}
5751
+ self.instance_variables.each do |var|
5752
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
5753
+ end
5754
+ hash.to_json
5755
+ end
5756
+ end
5757
+
5758
+ # CustomHeaders holds an array of HTTP headers to be injected into requests by the driver
5759
+ class CustomHeaders
5760
+ # Entries, each describing a single header
5761
+ attr_accessor :custom_headers
5762
+
5763
+ def initialize(
5764
+ custom_headers: nil
5765
+ )
5766
+ @custom_headers = custom_headers == nil ? [] : custom_headers
5767
+ end
5768
+
5769
+ def to_json(options = {})
5770
+ hash = {}
5771
+ self.instance_variables.each do |var|
5772
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
5773
+ end
5774
+ hash.to_json
5775
+ end
5776
+ end
5777
+
5730
5778
  class CyberarkConjurStore
5731
5779
  # The URL of the Cyberark instance
5732
5780
  attr_accessor :appurl
@@ -8305,6 +8353,8 @@ module SDM
8305
8353
  attr_accessor :auth_header
8306
8354
  # The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.
8307
8355
  attr_accessor :bind_interface
8356
+ # Additional HTTP headers to include in requests.
8357
+ attr_accessor :custom_headers
8308
8358
  # Automatically redirect to this path upon connecting.
8309
8359
  attr_accessor :default_path
8310
8360
  # A filter applied to the routing logic to pin datasource to nodes.
@@ -8337,6 +8387,7 @@ module SDM
8337
8387
  def initialize(
8338
8388
  auth_header: nil,
8339
8389
  bind_interface: nil,
8390
+ custom_headers: nil,
8340
8391
  default_path: nil,
8341
8392
  egress_filter: nil,
8342
8393
  headers_blacklist: nil,
@@ -8354,6 +8405,7 @@ module SDM
8354
8405
  )
8355
8406
  @auth_header = auth_header == nil ? "" : auth_header
8356
8407
  @bind_interface = bind_interface == nil ? "" : bind_interface
8408
+ @custom_headers = custom_headers == nil ? nil : custom_headers
8357
8409
  @default_path = default_path == nil ? "" : default_path
8358
8410
  @egress_filter = egress_filter == nil ? "" : egress_filter
8359
8411
  @headers_blacklist = headers_blacklist == nil ? "" : headers_blacklist
@@ -8382,6 +8434,8 @@ module SDM
8382
8434
  class HTTPBasicAuth
8383
8435
  # The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.
8384
8436
  attr_accessor :bind_interface
8437
+ # Additional HTTP headers to include in requests.
8438
+ attr_accessor :custom_headers
8385
8439
  # Automatically redirect to this path upon connecting.
8386
8440
  attr_accessor :default_path
8387
8441
  # A filter applied to the routing logic to pin datasource to nodes.
@@ -8417,6 +8471,7 @@ module SDM
8417
8471
 
8418
8472
  def initialize(
8419
8473
  bind_interface: nil,
8474
+ custom_headers: nil,
8420
8475
  default_path: nil,
8421
8476
  egress_filter: nil,
8422
8477
  headers_blacklist: nil,
@@ -8435,6 +8490,7 @@ module SDM
8435
8490
  username: nil
8436
8491
  )
8437
8492
  @bind_interface = bind_interface == nil ? "" : bind_interface
8493
+ @custom_headers = custom_headers == nil ? nil : custom_headers
8438
8494
  @default_path = default_path == nil ? "" : default_path
8439
8495
  @egress_filter = egress_filter == nil ? "" : egress_filter
8440
8496
  @headers_blacklist = headers_blacklist == nil ? "" : headers_blacklist
@@ -8465,6 +8521,8 @@ module SDM
8465
8521
  class HTTPNoAuth
8466
8522
  # The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.
8467
8523
  attr_accessor :bind_interface
8524
+ # Additional HTTP headers to include in requests.
8525
+ attr_accessor :custom_headers
8468
8526
  # Automatically redirect to this path upon connecting.
8469
8527
  attr_accessor :default_path
8470
8528
  # A filter applied to the routing logic to pin datasource to nodes.
@@ -8496,6 +8554,7 @@ module SDM
8496
8554
 
8497
8555
  def initialize(
8498
8556
  bind_interface: nil,
8557
+ custom_headers: nil,
8499
8558
  default_path: nil,
8500
8559
  egress_filter: nil,
8501
8560
  headers_blacklist: nil,
@@ -8512,6 +8571,7 @@ module SDM
8512
8571
  url: nil
8513
8572
  )
8514
8573
  @bind_interface = bind_interface == nil ? "" : bind_interface
8574
+ @custom_headers = custom_headers == nil ? nil : custom_headers
8515
8575
  @default_path = default_path == nil ? "" : default_path
8516
8576
  @egress_filter = egress_filter == nil ? "" : egress_filter
8517
8577
  @headers_blacklist = headers_blacklist == nil ? "" : headers_blacklist
@@ -9788,6 +9848,8 @@ module SDM
9788
9848
  attr_accessor :name
9789
9849
  # The OAuth 2.0 authorization endpoint URL.
9790
9850
  attr_accessor :oauth_auth_endpoint
9851
+ # The OAuth 2.0 dynamic client registration endpoint URL.
9852
+ attr_accessor :oauth_register_endpoint
9791
9853
  # The OAuth 2.0 token endpoint URL.
9792
9854
  attr_accessor :oauth_token_endpoint
9793
9855
  # OAuth App Client Secret
@@ -9815,6 +9877,7 @@ module SDM
9815
9877
  id: nil,
9816
9878
  name: nil,
9817
9879
  oauth_auth_endpoint: nil,
9880
+ oauth_register_endpoint: nil,
9818
9881
  oauth_token_endpoint: nil,
9819
9882
  password: nil,
9820
9883
  port: nil,
@@ -9832,6 +9895,7 @@ module SDM
9832
9895
  @id = id == nil ? "" : id
9833
9896
  @name = name == nil ? "" : name
9834
9897
  @oauth_auth_endpoint = oauth_auth_endpoint == nil ? "" : oauth_auth_endpoint
9898
+ @oauth_register_endpoint = oauth_register_endpoint == nil ? "" : oauth_register_endpoint
9835
9899
  @oauth_token_endpoint = oauth_token_endpoint == nil ? "" : oauth_token_endpoint
9836
9900
  @password = password == nil ? "" : password
9837
9901
  @port = port == nil ? 0 : port
@@ -11799,10 +11863,14 @@ module SDM
11799
11863
  class OktaGroups
11800
11864
  # The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.
11801
11865
  attr_accessor :bind_interface
11866
+ # If true, configures discovery of the Okta org to be run from a node.
11867
+ attr_accessor :discovery_enabled
11802
11868
  # Represents the Okta Org Client URL
11803
11869
  attr_accessor :domain
11804
11870
  # A filter applied to the routing logic to pin datasource to nodes.
11805
11871
  attr_accessor :egress_filter
11872
+ # comma separated list of group names to filter by. Supports wildcards (*)
11873
+ attr_accessor :group_names
11806
11874
  # True if the datasource is reachable and the credentials are valid.
11807
11875
  attr_accessor :healthy
11808
11876
  # Unique identifier of the Resource.
@@ -11824,8 +11892,10 @@ module SDM
11824
11892
 
11825
11893
  def initialize(
11826
11894
  bind_interface: nil,
11895
+ discovery_enabled: nil,
11827
11896
  domain: nil,
11828
11897
  egress_filter: nil,
11898
+ group_names: nil,
11829
11899
  healthy: nil,
11830
11900
  id: nil,
11831
11901
  identity_set_id: nil,
@@ -11837,8 +11907,10 @@ module SDM
11837
11907
  tags: nil
11838
11908
  )
11839
11909
  @bind_interface = bind_interface == nil ? "" : bind_interface
11910
+ @discovery_enabled = discovery_enabled == nil ? false : discovery_enabled
11840
11911
  @domain = domain == nil ? "" : domain
11841
11912
  @egress_filter = egress_filter == nil ? "" : egress_filter
11913
+ @group_names = group_names == nil ? "" : group_names
11842
11914
  @healthy = healthy == nil ? false : healthy
11843
11915
  @id = id == nil ? "" : id
11844
11916
  @identity_set_id = identity_set_id == nil ? "" : identity_set_id
@@ -17093,6 +17165,8 @@ module SDM
17093
17165
  attr_accessor :created_at
17094
17166
  # The User's email address. Must be unique.
17095
17167
  attr_accessor :email
17168
+ # Internal employee ID used to identify the user.
17169
+ attr_accessor :employee_number
17096
17170
  # External ID is an alternative unique ID this user is represented by within an external service.
17097
17171
  attr_accessor :external_id
17098
17172
  # The User's first name.
@@ -17123,6 +17197,7 @@ module SDM
17123
17197
  scim: nil,
17124
17198
  created_at: nil,
17125
17199
  email: nil,
17200
+ employee_number: nil,
17126
17201
  external_id: nil,
17127
17202
  first_name: nil,
17128
17203
  id: nil,
@@ -17138,6 +17213,7 @@ module SDM
17138
17213
  @scim = scim == nil ? "" : scim
17139
17214
  @created_at = created_at == nil ? nil : created_at
17140
17215
  @email = email == nil ? "" : email
17216
+ @employee_number = employee_number == nil ? "" : employee_number
17141
17217
  @external_id = external_id == nil ? "" : external_id
17142
17218
  @first_name = first_name == nil ? "" : first_name
17143
17219
  @id = id == nil ? "" : id
data/lib/strongdm.rb CHANGED
@@ -31,7 +31,7 @@ module SDM #:nodoc:
31
31
  DEFAULT_RETRY_FACTOR = 1.6
32
32
  DEFAULT_RETRY_JITTER = 0.2
33
33
  API_VERSION = "2025-04-14"
34
- USER_AGENT = "strongdm-sdk-ruby/16.0.0"
34
+ USER_AGENT = "strongdm-sdk-ruby/16.3.0"
35
35
  private_constant :DEFAULT_BASE_RETRY_DELAY, :DEFAULT_MAX_RETRY_DELAY, :DEFAULT_RETRY_FACTOR, :DEFAULT_RETRY_JITTER, :API_VERSION, :USER_AGENT
36
36
 
37
37
  # Creates a new strongDM API client.
data/lib/version CHANGED
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
  #
15
15
  module SDM
16
- VERSION = "16.0.0"
16
+ VERSION = "16.3.0"
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 = "16.0.0"
16
+ VERSION = "16.3.0"
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: 16.0.0
4
+ version: 16.3.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: 2026-01-14 00:00:00.000000000 Z
11
+ date: 2026-01-29 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-847de6bd0168502b76d7d3c4972dddbda2d13fa5.idx"
85
- - "./.git/objects/pack/pack-847de6bd0168502b76d7d3c4972dddbda2d13fa5.pack"
84
+ - "./.git/objects/pack/pack-858f9f6bb2ba109547f434a721cbf864b786bc6c.idx"
85
+ - "./.git/objects/pack/pack-858f9f6bb2ba109547f434a721cbf864b786bc6c.pack"
86
86
  - "./.git/packed-refs"
87
87
  - "./.git/refs/heads/master"
88
88
  - "./.git/refs/remotes/origin/HEAD"
@@ -136,6 +136,7 @@ files:
136
136
  - "./lib/grpc/approval_workflows_services_pb.rb"
137
137
  - "./lib/grpc/control_panel_pb.rb"
138
138
  - "./lib/grpc/control_panel_services_pb.rb"
139
+ - "./lib/grpc/custom_headers_pb.rb"
139
140
  - "./lib/grpc/discovery_connectors_pb.rb"
140
141
  - "./lib/grpc/discovery_connectors_services_pb.rb"
141
142
  - "./lib/grpc/drivers_pb.rb"