strongdm 11.10.1 → 11.11.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f176e04e1e414d291ab49b4247a00f5a1753cde16df2337e10402e9b9937c229
4
- data.tar.gz: faac0974621473c42433ddbf137ec647575212114b4533dcfb7658147f067b17
3
+ metadata.gz: 2891e626bb0f081f6fe81d371be5ffd8d00dc9655ebcd3a28b528a818d48cfe4
4
+ data.tar.gz: cd48fb72a6d546e97cfdc86bc72dd3046b084dbc6312a9a248104bbef7068d57
5
5
  SHA512:
6
- metadata.gz: f088c326b787fe22b63732d36cf14dfb5eca6b75e25cf50954bd26082fe0b6bb198805b5cdaa09ebba74bca47c2c9093d3cc2a20aa6175c65c35d682dcad8691
7
- data.tar.gz: acd8aedc6e4a33d179b2668e1ce9dc79bb9a2474f920b30e6a74b4aabd57570954231bd084aa16c3c23651593392557b7c7bc8d964a455df5fd21e9049c26989
6
+ metadata.gz: 357af91d104620fa418de8a57ef12ec170f309c2d681598455ec94b4d704d589a0d4cec484ee47cb215106d95abac7c428bc1aa3768cae38650a342528d15f1a
7
+ data.tar.gz: e0351ab29a0f0d08e245d2ad9de038f73eb1b90f386fe4ad9c02d42fa7e51969731b6d17a2f1d6ae12028786e8f5bab3ae648b4022958d8b94937c03b1cd21ff
data/.git/ORIG_HEAD CHANGED
@@ -1 +1 @@
1
- 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6
1
+ 065048b7cde632b75a2b72a61a3357e10db96a61
data/.git/index CHANGED
Binary file
data/.git/logs/HEAD CHANGED
@@ -1,3 +1,3 @@
1
- 0000000000000000000000000000000000000000 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 root <root@41b6b560c229.(none)> 1726510064 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
- 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 root <root@41b6b560c229.(none)> 1726510064 +0000 checkout: moving from master to master
3
- 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 065048b7cde632b75a2b72a61a3357e10db96a61 root <root@41b6b560c229.(none)> 1726510064 +0000 merge origin/development: Fast-forward
1
+ 0000000000000000000000000000000000000000 065048b7cde632b75a2b72a61a3357e10db96a61 root <root@91b09fb9d94c.(none)> 1726770894 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
+ 065048b7cde632b75a2b72a61a3357e10db96a61 065048b7cde632b75a2b72a61a3357e10db96a61 root <root@91b09fb9d94c.(none)> 1726770894 +0000 checkout: moving from master to master
3
+ 065048b7cde632b75a2b72a61a3357e10db96a61 8050d1009a2517ea944bab4992fdd246936353b4 root <root@91b09fb9d94c.(none)> 1726770894 +0000 merge origin/development: Fast-forward
@@ -1,2 +1,2 @@
1
- 0000000000000000000000000000000000000000 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 root <root@41b6b560c229.(none)> 1726510064 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
- 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 065048b7cde632b75a2b72a61a3357e10db96a61 root <root@41b6b560c229.(none)> 1726510064 +0000 merge origin/development: Fast-forward
1
+ 0000000000000000000000000000000000000000 065048b7cde632b75a2b72a61a3357e10db96a61 root <root@91b09fb9d94c.(none)> 1726770894 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
2
+ 065048b7cde632b75a2b72a61a3357e10db96a61 8050d1009a2517ea944bab4992fdd246936353b4 root <root@91b09fb9d94c.(none)> 1726770894 +0000 merge origin/development: Fast-forward
@@ -1 +1 @@
1
- 0000000000000000000000000000000000000000 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 root <root@41b6b560c229.(none)> 1726510064 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
1
+ 0000000000000000000000000000000000000000 065048b7cde632b75a2b72a61a3357e10db96a61 root <root@91b09fb9d94c.(none)> 1726770894 +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
- 065048b7cde632b75a2b72a61a3357e10db96a61 refs/remotes/origin/development
3
- 9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 refs/remotes/origin/master
2
+ 8050d1009a2517ea944bab4992fdd246936353b4 refs/remotes/origin/development
3
+ 065048b7cde632b75a2b72a61a3357e10db96a61 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
@@ -36,6 +36,7 @@ d035aa3acb4c3a0935121bc00bfbb0a9e999d410 refs/tags/v1.0.7
36
36
  3a2a67e03f5b2f1bbcc8d2fa9dffcba764d76196 refs/tags/v11.0.0
37
37
  be8c2d87c98f8febe52ace473a9d3382d59d8ad2 refs/tags/v11.1.0
38
38
  9bdf7dbc21ca83b2b8baabfc02d474feee2cfdd6 refs/tags/v11.10.0
39
+ 065048b7cde632b75a2b72a61a3357e10db96a61 refs/tags/v11.10.1
39
40
  9103d7d0e3104e99edb3d9a188d231ae0ce3947f refs/tags/v11.3.0
40
41
  8c7312bf4266bdfeff959667faba7f8ef1e58f27 refs/tags/v11.4.0
41
42
  d181d0dc49250f81e47eea64cdd8e6a93f7a95da refs/tags/v11.5.0
@@ -1 +1 @@
1
- 065048b7cde632b75a2b72a61a3357e10db96a61
1
+ 8050d1009a2517ea944bab4992fdd246936353b4
data/lib/grpc/plumbing.rb CHANGED
@@ -55,6 +55,7 @@ require_relative "./peering_group_resources_pb"
55
55
  require_relative "./peering_groups_pb"
56
56
  require_relative "./policies_pb"
57
57
  require_relative "./policies_history_pb"
58
+ require_relative "./proxy_cluster_keys_pb"
58
59
  require_relative "./queries_pb"
59
60
  require_relative "./remote_identities_pb"
60
61
  require_relative "./remote_identities_history_pb"
@@ -7318,6 +7319,9 @@ module SDM
7318
7319
  if porcelain.instance_of? Gateway
7319
7320
  plumbing.gateway = convert_gateway_to_plumbing(porcelain)
7320
7321
  end
7322
+ if porcelain.instance_of? ProxyCluster
7323
+ plumbing.proxy_cluster = convert_proxy_cluster_to_plumbing(porcelain)
7324
+ end
7321
7325
  if porcelain.instance_of? Relay
7322
7326
  plumbing.relay = convert_relay_to_plumbing(porcelain)
7323
7327
  end
@@ -7331,6 +7335,9 @@ module SDM
7331
7335
  if plumbing.gateway != nil
7332
7336
  return convert_gateway_to_porcelain(plumbing.gateway)
7333
7337
  end
7338
+ if plumbing.proxy_cluster != nil
7339
+ return convert_proxy_cluster_to_porcelain(plumbing.proxy_cluster)
7340
+ end
7334
7341
  if plumbing.relay != nil
7335
7342
  return convert_relay_to_porcelain(plumbing.relay)
7336
7343
  end
@@ -8749,6 +8756,202 @@ module SDM
8749
8756
  end
8750
8757
  items
8751
8758
  end
8759
+ def self.convert_proxy_cluster_to_porcelain(plumbing)
8760
+ if plumbing == nil
8761
+ return nil
8762
+ end
8763
+ porcelain = ProxyCluster.new()
8764
+ porcelain.address = (plumbing.address)
8765
+ porcelain.id = (plumbing.id)
8766
+ porcelain.maintenance_windows = convert_repeated_node_maintenance_window_to_porcelain(plumbing.maintenance_windows)
8767
+ porcelain.name = (plumbing.name)
8768
+ porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
8769
+ porcelain
8770
+ end
8771
+
8772
+ def self.convert_proxy_cluster_to_plumbing(porcelain)
8773
+ if porcelain == nil
8774
+ return nil
8775
+ end
8776
+ plumbing = V1::ProxyCluster.new()
8777
+ plumbing.address = (porcelain.address)
8778
+ plumbing.id = (porcelain.id)
8779
+ plumbing.maintenance_windows += convert_repeated_node_maintenance_window_to_plumbing(porcelain.maintenance_windows)
8780
+ plumbing.name = (porcelain.name)
8781
+ plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
8782
+ plumbing
8783
+ end
8784
+ def self.convert_repeated_proxy_cluster_to_plumbing(porcelains)
8785
+ items = Array.new
8786
+ porcelains.each do |porcelain|
8787
+ plumbing = convert_proxy_cluster_to_plumbing(porcelain)
8788
+ items.append(plumbing)
8789
+ end
8790
+ items
8791
+ end
8792
+
8793
+ def self.convert_repeated_proxy_cluster_to_porcelain(plumbings)
8794
+ items = Array.new
8795
+ plumbings.each do |plumbing|
8796
+ porcelain = convert_proxy_cluster_to_porcelain(plumbing)
8797
+ items.append(porcelain)
8798
+ end
8799
+ items
8800
+ end
8801
+ def self.convert_proxy_cluster_key_to_porcelain(plumbing)
8802
+ if plumbing == nil
8803
+ return nil
8804
+ end
8805
+ porcelain = ProxyClusterKey.new()
8806
+ porcelain.created_at = convert_timestamp_to_porcelain(plumbing.created_at)
8807
+ porcelain.id = (plumbing.id)
8808
+ porcelain.last_used_at = convert_timestamp_to_porcelain(plumbing.last_used_at)
8809
+ porcelain.proxy_cluster_id = (plumbing.proxy_cluster_id)
8810
+ porcelain
8811
+ end
8812
+
8813
+ def self.convert_proxy_cluster_key_to_plumbing(porcelain)
8814
+ if porcelain == nil
8815
+ return nil
8816
+ end
8817
+ plumbing = V1::ProxyClusterKey.new()
8818
+ plumbing.created_at = convert_timestamp_to_plumbing(porcelain.created_at)
8819
+ plumbing.id = (porcelain.id)
8820
+ plumbing.last_used_at = convert_timestamp_to_plumbing(porcelain.last_used_at)
8821
+ plumbing.proxy_cluster_id = (porcelain.proxy_cluster_id)
8822
+ plumbing
8823
+ end
8824
+ def self.convert_repeated_proxy_cluster_key_to_plumbing(porcelains)
8825
+ items = Array.new
8826
+ porcelains.each do |porcelain|
8827
+ plumbing = convert_proxy_cluster_key_to_plumbing(porcelain)
8828
+ items.append(plumbing)
8829
+ end
8830
+ items
8831
+ end
8832
+
8833
+ def self.convert_repeated_proxy_cluster_key_to_porcelain(plumbings)
8834
+ items = Array.new
8835
+ plumbings.each do |plumbing|
8836
+ porcelain = convert_proxy_cluster_key_to_porcelain(plumbing)
8837
+ items.append(porcelain)
8838
+ end
8839
+ items
8840
+ end
8841
+ def self.convert_proxy_cluster_key_create_response_to_porcelain(plumbing)
8842
+ if plumbing == nil
8843
+ return nil
8844
+ end
8845
+ porcelain = ProxyClusterKeyCreateResponse.new()
8846
+ porcelain.meta = convert_create_response_metadata_to_porcelain(plumbing.meta)
8847
+ porcelain.proxy_cluster_key = convert_proxy_cluster_key_to_porcelain(plumbing.proxy_cluster_key)
8848
+ porcelain.rate_limit = convert_rate_limit_metadata_to_porcelain(plumbing.rate_limit)
8849
+ porcelain.secret_key = (plumbing.secret_key)
8850
+ porcelain
8851
+ end
8852
+
8853
+ def self.convert_proxy_cluster_key_create_response_to_plumbing(porcelain)
8854
+ if porcelain == nil
8855
+ return nil
8856
+ end
8857
+ plumbing = V1::ProxyClusterKeyCreateResponse.new()
8858
+ plumbing.meta = convert_create_response_metadata_to_plumbing(porcelain.meta)
8859
+ plumbing.proxy_cluster_key = convert_proxy_cluster_key_to_plumbing(porcelain.proxy_cluster_key)
8860
+ plumbing.rate_limit = convert_rate_limit_metadata_to_plumbing(porcelain.rate_limit)
8861
+ plumbing.secret_key = (porcelain.secret_key)
8862
+ plumbing
8863
+ end
8864
+ def self.convert_repeated_proxy_cluster_key_create_response_to_plumbing(porcelains)
8865
+ items = Array.new
8866
+ porcelains.each do |porcelain|
8867
+ plumbing = convert_proxy_cluster_key_create_response_to_plumbing(porcelain)
8868
+ items.append(plumbing)
8869
+ end
8870
+ items
8871
+ end
8872
+
8873
+ def self.convert_repeated_proxy_cluster_key_create_response_to_porcelain(plumbings)
8874
+ items = Array.new
8875
+ plumbings.each do |plumbing|
8876
+ porcelain = convert_proxy_cluster_key_create_response_to_porcelain(plumbing)
8877
+ items.append(porcelain)
8878
+ end
8879
+ items
8880
+ end
8881
+ def self.convert_proxy_cluster_key_delete_response_to_porcelain(plumbing)
8882
+ if plumbing == nil
8883
+ return nil
8884
+ end
8885
+ porcelain = ProxyClusterKeyDeleteResponse.new()
8886
+ porcelain.meta = convert_delete_response_metadata_to_porcelain(plumbing.meta)
8887
+ porcelain.rate_limit = convert_rate_limit_metadata_to_porcelain(plumbing.rate_limit)
8888
+ porcelain
8889
+ end
8890
+
8891
+ def self.convert_proxy_cluster_key_delete_response_to_plumbing(porcelain)
8892
+ if porcelain == nil
8893
+ return nil
8894
+ end
8895
+ plumbing = V1::ProxyClusterKeyDeleteResponse.new()
8896
+ plumbing.meta = convert_delete_response_metadata_to_plumbing(porcelain.meta)
8897
+ plumbing.rate_limit = convert_rate_limit_metadata_to_plumbing(porcelain.rate_limit)
8898
+ plumbing
8899
+ end
8900
+ def self.convert_repeated_proxy_cluster_key_delete_response_to_plumbing(porcelains)
8901
+ items = Array.new
8902
+ porcelains.each do |porcelain|
8903
+ plumbing = convert_proxy_cluster_key_delete_response_to_plumbing(porcelain)
8904
+ items.append(plumbing)
8905
+ end
8906
+ items
8907
+ end
8908
+
8909
+ def self.convert_repeated_proxy_cluster_key_delete_response_to_porcelain(plumbings)
8910
+ items = Array.new
8911
+ plumbings.each do |plumbing|
8912
+ porcelain = convert_proxy_cluster_key_delete_response_to_porcelain(plumbing)
8913
+ items.append(porcelain)
8914
+ end
8915
+ items
8916
+ end
8917
+ def self.convert_proxy_cluster_key_get_response_to_porcelain(plumbing)
8918
+ if plumbing == nil
8919
+ return nil
8920
+ end
8921
+ porcelain = ProxyClusterKeyGetResponse.new()
8922
+ porcelain.meta = convert_get_response_metadata_to_porcelain(plumbing.meta)
8923
+ porcelain.proxy_cluster_key = convert_proxy_cluster_key_to_porcelain(plumbing.proxy_cluster_key)
8924
+ porcelain.rate_limit = convert_rate_limit_metadata_to_porcelain(plumbing.rate_limit)
8925
+ porcelain
8926
+ end
8927
+
8928
+ def self.convert_proxy_cluster_key_get_response_to_plumbing(porcelain)
8929
+ if porcelain == nil
8930
+ return nil
8931
+ end
8932
+ plumbing = V1::ProxyClusterKeyGetResponse.new()
8933
+ plumbing.meta = convert_get_response_metadata_to_plumbing(porcelain.meta)
8934
+ plumbing.proxy_cluster_key = convert_proxy_cluster_key_to_plumbing(porcelain.proxy_cluster_key)
8935
+ plumbing.rate_limit = convert_rate_limit_metadata_to_plumbing(porcelain.rate_limit)
8936
+ plumbing
8937
+ end
8938
+ def self.convert_repeated_proxy_cluster_key_get_response_to_plumbing(porcelains)
8939
+ items = Array.new
8940
+ porcelains.each do |porcelain|
8941
+ plumbing = convert_proxy_cluster_key_get_response_to_plumbing(porcelain)
8942
+ items.append(plumbing)
8943
+ end
8944
+ items
8945
+ end
8946
+
8947
+ def self.convert_repeated_proxy_cluster_key_get_response_to_porcelain(plumbings)
8948
+ items = Array.new
8949
+ plumbings.each do |plumbing|
8950
+ porcelain = convert_proxy_cluster_key_get_response_to_porcelain(plumbing)
8951
+ items.append(porcelain)
8952
+ end
8953
+ items
8954
+ end
8752
8955
  def self.convert_query_to_porcelain(plumbing)
8753
8956
  if plumbing == nil
8754
8957
  return nil
@@ -0,0 +1,81 @@
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: proxy_cluster_keys.proto
17
+
18
+ require "google/protobuf"
19
+
20
+ require "google/protobuf/timestamp_pb"
21
+ require "options_pb"
22
+ require "spec_pb"
23
+
24
+ Google::Protobuf::DescriptorPool.generated_pool.build do
25
+ add_file("proxy_cluster_keys.proto", :syntax => :proto3) do
26
+ add_message "v1.ProxyClusterKeyCreateRequest" do
27
+ optional :meta, :message, 1, "v1.CreateRequestMetadata"
28
+ optional :proxy_cluster_key, :message, 2, "v1.ProxyClusterKey"
29
+ end
30
+ add_message "v1.ProxyClusterKeyCreateResponse" do
31
+ optional :meta, :message, 1, "v1.CreateResponseMetadata"
32
+ optional :proxy_cluster_key, :message, 2, "v1.ProxyClusterKey"
33
+ optional :secret_key, :string, 3
34
+ optional :rate_limit, :message, 4, "v1.RateLimitMetadata"
35
+ end
36
+ add_message "v1.ProxyClusterKeyGetRequest" do
37
+ optional :meta, :message, 1, "v1.GetRequestMetadata"
38
+ optional :id, :string, 2
39
+ end
40
+ add_message "v1.ProxyClusterKeyGetResponse" do
41
+ optional :meta, :message, 1, "v1.GetResponseMetadata"
42
+ optional :proxy_cluster_key, :message, 2, "v1.ProxyClusterKey"
43
+ optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
44
+ end
45
+ add_message "v1.ProxyClusterKeyDeleteRequest" do
46
+ optional :meta, :message, 1, "v1.DeleteRequestMetadata"
47
+ optional :id, :string, 2
48
+ end
49
+ add_message "v1.ProxyClusterKeyDeleteResponse" do
50
+ optional :meta, :message, 1, "v1.DeleteResponseMetadata"
51
+ optional :rate_limit, :message, 2, "v1.RateLimitMetadata"
52
+ end
53
+ add_message "v1.ProxyClusterKeyListRequest" do
54
+ optional :meta, :message, 1, "v1.ListRequestMetadata"
55
+ optional :filter, :string, 2
56
+ end
57
+ add_message "v1.ProxyClusterKeyListResponse" do
58
+ optional :meta, :message, 1, "v1.ListResponseMetadata"
59
+ repeated :proxy_cluster_keys, :message, 2, "v1.ProxyClusterKey"
60
+ optional :rate_limit, :message, 3, "v1.RateLimitMetadata"
61
+ end
62
+ add_message "v1.ProxyClusterKey" do
63
+ optional :id, :string, 1
64
+ optional :proxy_cluster_id, :string, 2
65
+ optional :created_at, :message, 3, "google.protobuf.Timestamp"
66
+ optional :last_used_at, :message, 4, "google.protobuf.Timestamp"
67
+ end
68
+ end
69
+ end
70
+
71
+ module V1
72
+ ProxyClusterKeyCreateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyCreateRequest").msgclass
73
+ ProxyClusterKeyCreateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyCreateResponse").msgclass
74
+ ProxyClusterKeyGetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyGetRequest").msgclass
75
+ ProxyClusterKeyGetResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyGetResponse").msgclass
76
+ ProxyClusterKeyDeleteRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyDeleteRequest").msgclass
77
+ ProxyClusterKeyDeleteResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyDeleteResponse").msgclass
78
+ ProxyClusterKeyListRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyListRequest").msgclass
79
+ ProxyClusterKeyListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKeyListResponse").msgclass
80
+ ProxyClusterKey = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.ProxyClusterKey").msgclass
81
+ end
@@ -0,0 +1,45 @@
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: proxy_cluster_keys.proto for package 'v1'
17
+
18
+ require "grpc"
19
+ require "proxy_cluster_keys_pb"
20
+
21
+ module V1
22
+ module ProxyClusterKeys
23
+ # Proxy Cluster Keys are authentication keys for all proxies within a cluster.
24
+ # The proxies within a cluster share the same key. One cluster can have
25
+ # multiple keys in order to facilitate key rotation.
26
+ class Service
27
+ include ::GRPC::GenericService
28
+
29
+ self.marshal_class_method = :encode
30
+ self.unmarshal_class_method = :decode
31
+ self.service_name = "v1.ProxyClusterKeys"
32
+
33
+ # Create registers a new ProxyClusterKey.
34
+ rpc :Create, ::V1::ProxyClusterKeyCreateRequest, ::V1::ProxyClusterKeyCreateResponse
35
+ # Get reads one ProxyClusterKey by ID.
36
+ rpc :Get, ::V1::ProxyClusterKeyGetRequest, ::V1::ProxyClusterKeyGetResponse
37
+ # Delete removes a ProxyClusterKey by ID.
38
+ rpc :Delete, ::V1::ProxyClusterKeyDeleteRequest, ::V1::ProxyClusterKeyDeleteResponse
39
+ # List gets a list of ProxyClusterKeys matching a given set of criteria.
40
+ rpc :List, ::V1::ProxyClusterKeyListRequest, ::V1::ProxyClusterKeyListResponse
41
+ end
42
+
43
+ Stub = Service.rpc_stub_class
44
+ end
45
+ end
@@ -8544,6 +8544,175 @@ module SDM
8544
8544
  end
8545
8545
  end
8546
8546
 
8547
+ # ProxyCluster represents a cluster of StrongDM proxies.
8548
+ class ProxyCluster
8549
+ # The public hostname/port tuple at which the proxy cluster will be
8550
+ # accessible to clients.
8551
+ attr_accessor :address
8552
+ # Unique identifier of the Proxy Cluster.
8553
+ attr_accessor :id
8554
+ # Maintenance Windows define when this node is allowed to restart. If a node
8555
+ # is requested to restart, it will check each window to determine if any of
8556
+ # them permit it to restart, and if any do, it will. This check is repeated
8557
+ # per window until the restart is successfully completed.
8558
+ #
8559
+ # If not set here, may be set on the command line or via an environment variable
8560
+ # on the process itself; any server setting will take precedence over local
8561
+ # settings. This setting is ineffective for nodes below version 38.44.0.
8562
+ #
8563
+ # If this setting is not applied via this remote configuration or via local
8564
+ # configuration, the default setting is used: always allow restarts if serving
8565
+ # no connections, and allow a restart even if serving connections between 7-8 UTC, any day.
8566
+ attr_accessor :maintenance_windows
8567
+ # Unique human-readable name of the proxy cluster. Names must
8568
+ # include only letters, numbers, and hyphens (no spaces, underscores, or
8569
+ # other special characters). Generated if not provided on create.
8570
+ attr_accessor :name
8571
+ # Tags is a map of key, value pairs.
8572
+ attr_accessor :tags
8573
+
8574
+ def initialize(
8575
+ address: nil,
8576
+ id: nil,
8577
+ maintenance_windows: nil,
8578
+ name: nil,
8579
+ tags: nil
8580
+ )
8581
+ @address = address == nil ? "" : address
8582
+ @id = id == nil ? "" : id
8583
+ @maintenance_windows = maintenance_windows == nil ? [] : maintenance_windows
8584
+ @name = name == nil ? "" : name
8585
+ @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
8586
+ end
8587
+
8588
+ def to_json(options = {})
8589
+ hash = {}
8590
+ self.instance_variables.each do |var|
8591
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
8592
+ end
8593
+ hash.to_json
8594
+ end
8595
+ end
8596
+
8597
+ # Proxy Cluster Keys are authentication keys for all proxies within a cluster.
8598
+ # The proxies within a cluster share the same key. One cluster can have
8599
+ # multiple keys in order to facilitate key rotation.
8600
+ class ProxyClusterKey
8601
+ # The timestamp when this key was created.
8602
+ attr_accessor :created_at
8603
+ # Unique identifier of the Relay.
8604
+ attr_accessor :id
8605
+ # The timestamp when this key was last used, if at all.
8606
+ attr_accessor :last_used_at
8607
+ # The ID of the proxy cluster which this key authenticates to.
8608
+ attr_accessor :proxy_cluster_id
8609
+
8610
+ def initialize(
8611
+ created_at: nil,
8612
+ id: nil,
8613
+ last_used_at: nil,
8614
+ proxy_cluster_id: nil
8615
+ )
8616
+ @created_at = created_at == nil ? nil : created_at
8617
+ @id = id == nil ? "" : id
8618
+ @last_used_at = last_used_at == nil ? nil : last_used_at
8619
+ @proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
8620
+ end
8621
+
8622
+ def to_json(options = {})
8623
+ hash = {}
8624
+ self.instance_variables.each do |var|
8625
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
8626
+ end
8627
+ hash.to_json
8628
+ end
8629
+ end
8630
+
8631
+ # ProxyClusterKeyCreateResponse reports how the ProxyClusterKeys were created in the system.
8632
+ class ProxyClusterKeyCreateResponse
8633
+ # Reserved for future use.
8634
+ attr_accessor :meta
8635
+ # The created ProxyClusterKey.
8636
+ attr_accessor :proxy_cluster_key
8637
+ # Rate limit information.
8638
+ attr_accessor :rate_limit
8639
+ # The secret key component of this key. It must be saved upon creation
8640
+ # because it will not be available for retrieval later.
8641
+ attr_accessor :secret_key
8642
+
8643
+ def initialize(
8644
+ meta: nil,
8645
+ proxy_cluster_key: nil,
8646
+ rate_limit: nil,
8647
+ secret_key: nil
8648
+ )
8649
+ @meta = meta == nil ? nil : meta
8650
+ @proxy_cluster_key = proxy_cluster_key == nil ? nil : proxy_cluster_key
8651
+ @rate_limit = rate_limit == nil ? nil : rate_limit
8652
+ @secret_key = secret_key == nil ? "" : secret_key
8653
+ end
8654
+
8655
+ def to_json(options = {})
8656
+ hash = {}
8657
+ self.instance_variables.each do |var|
8658
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
8659
+ end
8660
+ hash.to_json
8661
+ end
8662
+ end
8663
+
8664
+ # ProxyClusterKeyDeleteResponse returns information about a ProxyClusterKey that was deleted.
8665
+ class ProxyClusterKeyDeleteResponse
8666
+ # Reserved for future use.
8667
+ attr_accessor :meta
8668
+ # Rate limit information.
8669
+ attr_accessor :rate_limit
8670
+
8671
+ def initialize(
8672
+ meta: nil,
8673
+ rate_limit: nil
8674
+ )
8675
+ @meta = meta == nil ? nil : meta
8676
+ @rate_limit = rate_limit == nil ? nil : rate_limit
8677
+ end
8678
+
8679
+ def to_json(options = {})
8680
+ hash = {}
8681
+ self.instance_variables.each do |var|
8682
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
8683
+ end
8684
+ hash.to_json
8685
+ end
8686
+ end
8687
+
8688
+ # ProxyClusterKeyGetResponse returns a requested ProxyClusterKey.
8689
+ class ProxyClusterKeyGetResponse
8690
+ # Reserved for future use.
8691
+ attr_accessor :meta
8692
+ # The requested ProxyClusterKey.
8693
+ attr_accessor :proxy_cluster_key
8694
+ # Rate limit information.
8695
+ attr_accessor :rate_limit
8696
+
8697
+ def initialize(
8698
+ meta: nil,
8699
+ proxy_cluster_key: nil,
8700
+ rate_limit: nil
8701
+ )
8702
+ @meta = meta == nil ? nil : meta
8703
+ @proxy_cluster_key = proxy_cluster_key == nil ? nil : proxy_cluster_key
8704
+ @rate_limit = rate_limit == nil ? nil : rate_limit
8705
+ end
8706
+
8707
+ def to_json(options = {})
8708
+ hash = {}
8709
+ self.instance_variables.each do |var|
8710
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
8711
+ end
8712
+ hash.to_json
8713
+ end
8714
+ end
8715
+
8547
8716
  # A Query is a record of a single client request to a resource, such as a SQL query.
8548
8717
  # Longer-running queries including long-running SSH commands and SSH, RDP, or Kubernetes
8549
8718
  # interactive sessions will return two Query records with the same identifier, one record
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 = "2024-03-28"
32
- USER_AGENT = "strongdm-sdk-ruby/11.10.1"
32
+ USER_AGENT = "strongdm-sdk-ruby/11.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.
@@ -88,6 +88,7 @@ module SDM #:nodoc:
88
88
  @peering_groups = PeeringGroups.new(@channel, self)
89
89
  @policies = Policies.new(@channel, self)
90
90
  @policies_history = PoliciesHistory.new(@channel, self)
91
+ @proxy_cluster_keys = ProxyClusterKeys.new(@channel, self)
91
92
  @queries = Queries.new(@channel, self)
92
93
  @remote_identities = RemoteIdentities.new(@channel, self)
93
94
  @remote_identities_history = RemoteIdentitiesHistory.new(@channel, self)
@@ -346,6 +347,12 @@ module SDM #:nodoc:
346
347
  #
347
348
  # See {PoliciesHistory}.
348
349
  attr_reader :policies_history
350
+ # Proxy Cluster Keys are authentication keys for all proxies within a cluster.
351
+ # The proxies within a cluster share the same key. One cluster can have
352
+ # multiple keys in order to facilitate key rotation.
353
+ #
354
+ # See {ProxyClusterKeys}.
355
+ attr_reader :proxy_cluster_keys
349
356
  # A Query is a record of a single client request to a resource, such as a SQL query.
350
357
  # Long-running SSH, RDP, or Kubernetes interactive sessions also count as queries.
351
358
  # The Queries service is read-only.
@@ -491,6 +498,7 @@ module SDM #:nodoc:
491
498
  @peering_groups = PeeringGroups.new(@channel, self)
492
499
  @policies = Policies.new(@channel, self)
493
500
  @policies_history = PoliciesHistory.new(@channel, self)
501
+ @proxy_cluster_keys = ProxyClusterKeys.new(@channel, self)
494
502
  @queries = Queries.new(@channel, self)
495
503
  @remote_identities = RemoteIdentities.new(@channel, self)
496
504
  @remote_identities_history = RemoteIdentitiesHistory.new(@channel, self)
@@ -533,6 +541,7 @@ module SDM #:nodoc:
533
541
  @identity_sets = SnapshotIdentitySets.new(client.identity_sets)
534
542
  @nodes = SnapshotNodes.new(client.nodes)
535
543
  @policies = SnapshotPolicies.new(client.policies)
544
+ @proxy_cluster_keys = SnapshotProxyClusterKeys.new(client.proxy_cluster_keys)
536
545
  @remote_identities = SnapshotRemoteIdentities.new(client.remote_identities)
537
546
  @remote_identity_groups = SnapshotRemoteIdentityGroups.new(client.remote_identity_groups)
538
547
  @resources = SnapshotResources.new(client.resources)
@@ -608,6 +617,12 @@ module SDM #:nodoc:
608
617
  #
609
618
  # See {SnapshotPolicies}.
610
619
  attr_reader :policies
620
+ # Proxy Cluster Keys are authentication keys for all proxies within a cluster.
621
+ # The proxies within a cluster share the same key. One cluster can have
622
+ # multiple keys in order to facilitate key rotation.
623
+ #
624
+ # See {SnapshotProxyClusterKeys}.
625
+ attr_reader :proxy_cluster_keys
611
626
  # RemoteIdentities assign a resource directly to an account, giving the account the permission to connect to that resource.
612
627
  #
613
628
  # See {SnapshotRemoteIdentities}.
data/lib/svc.rb CHANGED
@@ -2649,6 +2649,7 @@ module SDM #:nodoc:
2649
2649
  #
2650
2650
  # See:
2651
2651
  # {Gateway}
2652
+ # {ProxyCluster}
2652
2653
  # {Relay}
2653
2654
  class Nodes
2654
2655
  extend Gem::Deprecate
@@ -3827,6 +3828,191 @@ module SDM #:nodoc:
3827
3828
  end
3828
3829
  end
3829
3830
 
3831
+ # Proxy Cluster Keys are authentication keys for all proxies within a cluster.
3832
+ # The proxies within a cluster share the same key. One cluster can have
3833
+ # multiple keys in order to facilitate key rotation.
3834
+ #
3835
+ # See {ProxyClusterKey}.
3836
+ class ProxyClusterKeys
3837
+ extend Gem::Deprecate
3838
+
3839
+ def initialize(channel, parent)
3840
+ begin
3841
+ @stub = V1::ProxyClusterKeys::Stub.new(nil, nil, channel_override: channel)
3842
+ rescue => exception
3843
+ raise Plumbing::convert_error_to_porcelain(exception)
3844
+ end
3845
+ @parent = parent
3846
+ end
3847
+
3848
+ # Create registers a new ProxyClusterKey.
3849
+ def create(
3850
+ proxy_cluster_key,
3851
+ deadline: nil
3852
+ )
3853
+ req = V1::ProxyClusterKeyCreateRequest.new()
3854
+
3855
+ req.proxy_cluster_key = Plumbing::convert_proxy_cluster_key_to_plumbing(proxy_cluster_key)
3856
+ tries = 0
3857
+ plumbing_response = nil
3858
+ loop do
3859
+ begin
3860
+ plumbing_response = @stub.create(req, metadata: @parent.get_metadata("ProxyClusterKeys.Create", req), deadline: deadline)
3861
+ rescue => exception
3862
+ if (@parent.shouldRetry(tries, exception))
3863
+ tries + +@parent.jitterSleep(tries)
3864
+ next
3865
+ end
3866
+ raise Plumbing::convert_error_to_porcelain(exception)
3867
+ end
3868
+ break
3869
+ end
3870
+
3871
+ resp = ProxyClusterKeyCreateResponse.new()
3872
+ resp.meta = Plumbing::convert_create_response_metadata_to_porcelain(plumbing_response.meta)
3873
+ resp.proxy_cluster_key = Plumbing::convert_proxy_cluster_key_to_porcelain(plumbing_response.proxy_cluster_key)
3874
+ resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit)
3875
+ resp.secret_key = (plumbing_response.secret_key)
3876
+ resp
3877
+ end
3878
+
3879
+ # Get reads one ProxyClusterKey by ID.
3880
+ def get(
3881
+ id,
3882
+ deadline: nil
3883
+ )
3884
+ req = V1::ProxyClusterKeyGetRequest.new()
3885
+ if not @parent.snapshot_time.nil?
3886
+ req.meta = V1::GetRequestMetadata.new()
3887
+ req.meta.snapshot_at = @parent.snapshot_time
3888
+ end
3889
+
3890
+ req.id = (id)
3891
+ tries = 0
3892
+ plumbing_response = nil
3893
+ loop do
3894
+ begin
3895
+ plumbing_response = @stub.get(req, metadata: @parent.get_metadata("ProxyClusterKeys.Get", req), deadline: deadline)
3896
+ rescue => exception
3897
+ if (@parent.shouldRetry(tries, exception))
3898
+ tries + +@parent.jitterSleep(tries)
3899
+ next
3900
+ end
3901
+ raise Plumbing::convert_error_to_porcelain(exception)
3902
+ end
3903
+ break
3904
+ end
3905
+
3906
+ resp = ProxyClusterKeyGetResponse.new()
3907
+ resp.meta = Plumbing::convert_get_response_metadata_to_porcelain(plumbing_response.meta)
3908
+ resp.proxy_cluster_key = Plumbing::convert_proxy_cluster_key_to_porcelain(plumbing_response.proxy_cluster_key)
3909
+ resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit)
3910
+ resp
3911
+ end
3912
+
3913
+ # Delete removes a ProxyClusterKey by ID.
3914
+ def delete(
3915
+ id,
3916
+ deadline: nil
3917
+ )
3918
+ req = V1::ProxyClusterKeyDeleteRequest.new()
3919
+
3920
+ req.id = (id)
3921
+ tries = 0
3922
+ plumbing_response = nil
3923
+ loop do
3924
+ begin
3925
+ plumbing_response = @stub.delete(req, metadata: @parent.get_metadata("ProxyClusterKeys.Delete", req), deadline: deadline)
3926
+ rescue => exception
3927
+ if (@parent.shouldRetry(tries, exception))
3928
+ tries + +@parent.jitterSleep(tries)
3929
+ next
3930
+ end
3931
+ raise Plumbing::convert_error_to_porcelain(exception)
3932
+ end
3933
+ break
3934
+ end
3935
+
3936
+ resp = ProxyClusterKeyDeleteResponse.new()
3937
+ resp.meta = Plumbing::convert_delete_response_metadata_to_porcelain(plumbing_response.meta)
3938
+ resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit)
3939
+ resp
3940
+ end
3941
+
3942
+ # List gets a list of ProxyClusterKeys matching a given set of criteria.
3943
+ def list(
3944
+ filter,
3945
+ *args,
3946
+ deadline: nil
3947
+ )
3948
+ req = V1::ProxyClusterKeyListRequest.new()
3949
+ req.meta = V1::ListRequestMetadata.new()
3950
+ if @parent.page_limit > 0
3951
+ req.meta.limit = @parent.page_limit
3952
+ end
3953
+ if not @parent.snapshot_time.nil?
3954
+ req.meta.snapshot_at = @parent.snapshot_time
3955
+ end
3956
+
3957
+ req.filter = Plumbing::quote_filter_args(filter, *args)
3958
+ resp = Enumerator::Generator.new { |g|
3959
+ tries = 0
3960
+ loop do
3961
+ begin
3962
+ plumbing_response = @stub.list(req, metadata: @parent.get_metadata("ProxyClusterKeys.List", req), deadline: deadline)
3963
+ rescue => exception
3964
+ if (@parent.shouldRetry(tries, exception))
3965
+ tries + +@parent.jitterSleep(tries)
3966
+ next
3967
+ end
3968
+ raise Plumbing::convert_error_to_porcelain(exception)
3969
+ end
3970
+ tries = 0
3971
+ plumbing_response.proxy_cluster_keys.each do |plumbing_item|
3972
+ g.yield Plumbing::convert_proxy_cluster_key_to_porcelain(plumbing_item)
3973
+ end
3974
+ break if plumbing_response.meta.next_cursor == ""
3975
+ req.meta.cursor = plumbing_response.meta.next_cursor
3976
+ end
3977
+ }
3978
+ resp
3979
+ end
3980
+ end
3981
+
3982
+ # SnapshotProxyClusterKeys exposes the read only methods of the ProxyClusterKeys
3983
+ # service for historical queries.
3984
+ class SnapshotProxyClusterKeys
3985
+ extend Gem::Deprecate
3986
+
3987
+ def initialize(proxy_cluster_keys)
3988
+ @proxy_cluster_keys = proxy_cluster_keys
3989
+ end
3990
+
3991
+ # Get reads one ProxyClusterKey by ID.
3992
+ def get(
3993
+ id,
3994
+ deadline: nil
3995
+ )
3996
+ return @proxy_cluster_keys.get(
3997
+ id,
3998
+ deadline: deadline,
3999
+ )
4000
+ end
4001
+
4002
+ # List gets a list of ProxyClusterKeys matching a given set of criteria.
4003
+ def list(
4004
+ filter,
4005
+ *args,
4006
+ deadline: nil
4007
+ )
4008
+ return @proxy_cluster_keys.list(
4009
+ filter,
4010
+ *args,
4011
+ deadline: deadline,
4012
+ )
4013
+ end
4014
+ end
4015
+
3830
4016
  # A Query is a record of a single client request to a resource, such as a SQL query.
3831
4017
  # Long-running SSH, RDP, or Kubernetes interactive sessions also count as queries.
3832
4018
  # The Queries service is read-only.
data/lib/version CHANGED
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
  #
15
15
  module SDM
16
- VERSION = "11.10.1"
16
+ VERSION = "11.11.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 = "11.10.1"
16
+ VERSION = "11.11.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: 11.10.1
4
+ version: 11.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: 2024-09-16 00:00:00.000000000 Z
11
+ date: 2024-09-19 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-3fc97673a40bf3c5faa9b3f479247208661eb2ee.idx"
85
- - "./.git/objects/pack/pack-3fc97673a40bf3c5faa9b3f479247208661eb2ee.pack"
84
+ - "./.git/objects/pack/pack-df60916a72c8fa7d9555723e00c0d0a37328eb73.idx"
85
+ - "./.git/objects/pack/pack-df60916a72c8fa7d9555723e00c0d0a37328eb73.pack"
86
86
  - "./.git/packed-refs"
87
87
  - "./.git/refs/heads/master"
88
88
  - "./.git/refs/remotes/origin/HEAD"
@@ -161,6 +161,8 @@ files:
161
161
  - "./lib/grpc/policies_history_services_pb.rb"
162
162
  - "./lib/grpc/policies_pb.rb"
163
163
  - "./lib/grpc/policies_services_pb.rb"
164
+ - "./lib/grpc/proxy_cluster_keys_pb.rb"
165
+ - "./lib/grpc/proxy_cluster_keys_services_pb.rb"
164
166
  - "./lib/grpc/queries_pb.rb"
165
167
  - "./lib/grpc/queries_services_pb.rb"
166
168
  - "./lib/grpc/remote_identities_history_pb.rb"