strongdm 5.0.1 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.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-1464029fbb5fce2af2abca245f431e7247432422.idx → pack-4e5f48ff9f2249cddedded686470b0e6771a3eda.idx} +0 -0
- data/.git/objects/pack/{pack-1464029fbb5fce2af2abca245f431e7247432422.pack → pack-4e5f48ff9f2249cddedded686470b0e6771a3eda.pack} +0 -0
- data/.git/packed-refs +3 -2
- data/.git/refs/heads/master +1 -1
- data/lib/grpc/access_requests_pb.rb +18 -0
- data/lib/grpc/access_requests_services_pb.rb +1 -1
- data/lib/grpc/plumbing.rb +87 -1
- data/lib/models/porcelain.rb +78 -1
- data/lib/strongdm.rb +1 -1
- data/lib/svc.rb +2 -2
- 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: 543ca859ee756ad80f1e188d7ca9e2aead82c4d4a3faa93f92f3e6cbff46c14a
|
|
4
|
+
data.tar.gz: 0dcde8f9ca4f741d5896976e861330f87ff15e8938748957f8294da6fed5b488
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 016e60cf503457cc0baee990cd029eef94b3b88433a898e6c80649365ca6ad0783a664bef47fbd0f3f1b40140e9ff065bccb6b5809bc5f145d11be62e7cea429
|
|
7
|
+
data.tar.gz: d76506263619b9f0148b2aabd30657e4fb70b505ad06be7b02580397fa5fccf1eecbfdfd01d7281ed084c9a7098336be2cfc1b392bc06c28fd491ccf79a96445
|
data/.git/ORIG_HEAD
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
c5f2bc7e213b06c810559360246ff6b525c35fab
|
data/.git/index
CHANGED
|
Binary file
|
data/.git/logs/HEAD
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
0000000000000000000000000000000000000000
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
0000000000000000000000000000000000000000 c5f2bc7e213b06c810559360246ff6b525c35fab root <root@453ef89e0e8e.(none)> 1696271284 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
|
2
|
+
c5f2bc7e213b06c810559360246ff6b525c35fab c5f2bc7e213b06c810559360246ff6b525c35fab root <root@453ef89e0e8e.(none)> 1696271284 +0000 checkout: moving from master to master
|
|
3
|
+
c5f2bc7e213b06c810559360246ff6b525c35fab dc6870bd4816d314f5a02818b7ab8823f622abc7 root <root@453ef89e0e8e.(none)> 1696271284 +0000 merge origin/development: Fast-forward
|
data/.git/logs/refs/heads/master
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
0000000000000000000000000000000000000000
|
|
2
|
-
|
|
1
|
+
0000000000000000000000000000000000000000 c5f2bc7e213b06c810559360246ff6b525c35fab root <root@453ef89e0e8e.(none)> 1696271284 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
|
2
|
+
c5f2bc7e213b06c810559360246ff6b525c35fab dc6870bd4816d314f5a02818b7ab8823f622abc7 root <root@453ef89e0e8e.(none)> 1696271284 +0000 merge origin/development: Fast-forward
|
|
@@ -1 +1 @@
|
|
|
1
|
-
0000000000000000000000000000000000000000
|
|
1
|
+
0000000000000000000000000000000000000000 c5f2bc7e213b06c810559360246ff6b525c35fab root <root@453ef89e0e8e.(none)> 1696271284 +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
|
+
dc6870bd4816d314f5a02818b7ab8823f622abc7 refs/remotes/origin/development
|
|
3
|
+
c5f2bc7e213b06c810559360246ff6b525c35fab 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
|
|
@@ -84,3 +84,4 @@ f8dd4b1ce524b487c509dd8b781f2b9676053543 refs/tags/v4.6.1
|
|
|
84
84
|
8a202244671d61f97d90b10f45f693266ea84afa refs/tags/v4.7.0
|
|
85
85
|
fb8fa232eb66f960b4a223ce7fe6eaaf46727bfb refs/tags/v4.8.0
|
|
86
86
|
7f2a0f1d6cbfda294fa9a3ec4a868d0c782c3fd0 refs/tags/v5.0.0
|
|
87
|
+
c5f2bc7e213b06c810559360246ff6b525c35fab refs/tags/v5.0.1
|
data/.git/refs/heads/master
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
dc6870bd4816d314f5a02818b7ab8823f622abc7
|
|
@@ -20,6 +20,7 @@ require "google/protobuf"
|
|
|
20
20
|
require "google/protobuf/timestamp_pb"
|
|
21
21
|
require "options_pb"
|
|
22
22
|
require "spec_pb"
|
|
23
|
+
require "tags_pb"
|
|
23
24
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
24
25
|
add_file("access_requests.proto", :syntax => :proto3) do
|
|
25
26
|
add_message "v1.AccessRequestListRequest" do
|
|
@@ -50,6 +51,21 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
|
50
51
|
optional :type, :string, 4
|
|
51
52
|
optional :metadata, :string, 5
|
|
52
53
|
end
|
|
54
|
+
add_message "v1.RequestableResource" do
|
|
55
|
+
optional :id, :string, 1
|
|
56
|
+
optional :name, :string, 2
|
|
57
|
+
optional :healthy, :bool, 3
|
|
58
|
+
optional :type, :string, 4
|
|
59
|
+
optional :authentication, :string, 5
|
|
60
|
+
optional :tags, :message, 6, "v1.Tags"
|
|
61
|
+
optional :access, :string, 7
|
|
62
|
+
end
|
|
63
|
+
add_message "v1.AccessRequestConfig" do
|
|
64
|
+
optional :resource_id, :string, 1
|
|
65
|
+
optional :reason, :string, 2
|
|
66
|
+
optional :start_from, :message, 3, "google.protobuf.Timestamp"
|
|
67
|
+
optional :duration, :string, 4
|
|
68
|
+
end
|
|
53
69
|
end
|
|
54
70
|
end
|
|
55
71
|
|
|
@@ -58,4 +74,6 @@ module V1
|
|
|
58
74
|
AccessRequestListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRequestListResponse").msgclass
|
|
59
75
|
AccessRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRequest").msgclass
|
|
60
76
|
AccessRequestEvent = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRequestEvent").msgclass
|
|
77
|
+
RequestableResource = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.RequestableResource").msgclass
|
|
78
|
+
AccessRequestConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("v1.AccessRequestConfig").msgclass
|
|
61
79
|
end
|
data/lib/grpc/plumbing.rb
CHANGED
|
@@ -20,6 +20,7 @@ require "google/protobuf/well_known_types"
|
|
|
20
20
|
require "json"
|
|
21
21
|
require_relative "./options_pb"
|
|
22
22
|
require_relative "./spec_pb"
|
|
23
|
+
require_relative "./tags_pb"
|
|
23
24
|
require_relative "./access_requests_pb"
|
|
24
25
|
require_relative "./access_request_events_history_pb"
|
|
25
26
|
require_relative "./access_requests_history_pb"
|
|
@@ -30,7 +31,6 @@ require_relative "./account_grants_history_pb"
|
|
|
30
31
|
require_relative "./account_permissions_pb"
|
|
31
32
|
require_relative "./account_resources_pb"
|
|
32
33
|
require_relative "./account_resources_history_pb"
|
|
33
|
-
require_relative "./tags_pb"
|
|
34
34
|
require_relative "./accounts_pb"
|
|
35
35
|
require_relative "./accounts_history_pb"
|
|
36
36
|
require_relative "./activities_pb"
|
|
@@ -748,6 +748,46 @@ module SDM
|
|
|
748
748
|
end
|
|
749
749
|
items
|
|
750
750
|
end
|
|
751
|
+
def self.convert_access_request_config_to_porcelain(plumbing)
|
|
752
|
+
if plumbing == nil
|
|
753
|
+
return nil
|
|
754
|
+
end
|
|
755
|
+
porcelain = AccessRequestConfig.new()
|
|
756
|
+
porcelain.duration = (plumbing.duration)
|
|
757
|
+
porcelain.reason = (plumbing.reason)
|
|
758
|
+
porcelain.resource_id = (plumbing.resource_id)
|
|
759
|
+
porcelain.start_from = convert_timestamp_to_porcelain(plumbing.start_from)
|
|
760
|
+
porcelain
|
|
761
|
+
end
|
|
762
|
+
|
|
763
|
+
def self.convert_access_request_config_to_plumbing(porcelain)
|
|
764
|
+
if porcelain == nil
|
|
765
|
+
return nil
|
|
766
|
+
end
|
|
767
|
+
plumbing = V1::AccessRequestConfig.new()
|
|
768
|
+
plumbing.duration = (porcelain.duration)
|
|
769
|
+
plumbing.reason = (porcelain.reason)
|
|
770
|
+
plumbing.resource_id = (porcelain.resource_id)
|
|
771
|
+
plumbing.start_from = convert_timestamp_to_plumbing(porcelain.start_from)
|
|
772
|
+
plumbing
|
|
773
|
+
end
|
|
774
|
+
def self.convert_repeated_access_request_config_to_plumbing(porcelains)
|
|
775
|
+
items = Array.new
|
|
776
|
+
porcelains.each do |porcelain|
|
|
777
|
+
plumbing = convert_access_request_config_to_plumbing(porcelain)
|
|
778
|
+
items.append(plumbing)
|
|
779
|
+
end
|
|
780
|
+
items
|
|
781
|
+
end
|
|
782
|
+
|
|
783
|
+
def self.convert_repeated_access_request_config_to_porcelain(plumbings)
|
|
784
|
+
items = Array.new
|
|
785
|
+
plumbings.each do |plumbing|
|
|
786
|
+
porcelain = convert_access_request_config_to_porcelain(plumbing)
|
|
787
|
+
items.append(porcelain)
|
|
788
|
+
end
|
|
789
|
+
items
|
|
790
|
+
end
|
|
751
791
|
def self.convert_access_request_event_to_porcelain(plumbing)
|
|
752
792
|
if plumbing == nil
|
|
753
793
|
return nil
|
|
@@ -7792,6 +7832,52 @@ module SDM
|
|
|
7792
7832
|
end
|
|
7793
7833
|
items
|
|
7794
7834
|
end
|
|
7835
|
+
def self.convert_requestable_resource_to_porcelain(plumbing)
|
|
7836
|
+
if plumbing == nil
|
|
7837
|
+
return nil
|
|
7838
|
+
end
|
|
7839
|
+
porcelain = RequestableResource.new()
|
|
7840
|
+
porcelain.access = (plumbing.access)
|
|
7841
|
+
porcelain.authentication = (plumbing.authentication)
|
|
7842
|
+
porcelain.healthy = (plumbing.healthy)
|
|
7843
|
+
porcelain.id = (plumbing.id)
|
|
7844
|
+
porcelain.name = (plumbing.name)
|
|
7845
|
+
porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
|
|
7846
|
+
porcelain.type = (plumbing.type)
|
|
7847
|
+
porcelain
|
|
7848
|
+
end
|
|
7849
|
+
|
|
7850
|
+
def self.convert_requestable_resource_to_plumbing(porcelain)
|
|
7851
|
+
if porcelain == nil
|
|
7852
|
+
return nil
|
|
7853
|
+
end
|
|
7854
|
+
plumbing = V1::RequestableResource.new()
|
|
7855
|
+
plumbing.access = (porcelain.access)
|
|
7856
|
+
plumbing.authentication = (porcelain.authentication)
|
|
7857
|
+
plumbing.healthy = (porcelain.healthy)
|
|
7858
|
+
plumbing.id = (porcelain.id)
|
|
7859
|
+
plumbing.name = (porcelain.name)
|
|
7860
|
+
plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
|
|
7861
|
+
plumbing.type = (porcelain.type)
|
|
7862
|
+
plumbing
|
|
7863
|
+
end
|
|
7864
|
+
def self.convert_repeated_requestable_resource_to_plumbing(porcelains)
|
|
7865
|
+
items = Array.new
|
|
7866
|
+
porcelains.each do |porcelain|
|
|
7867
|
+
plumbing = convert_requestable_resource_to_plumbing(porcelain)
|
|
7868
|
+
items.append(plumbing)
|
|
7869
|
+
end
|
|
7870
|
+
items
|
|
7871
|
+
end
|
|
7872
|
+
|
|
7873
|
+
def self.convert_repeated_requestable_resource_to_porcelain(plumbings)
|
|
7874
|
+
items = Array.new
|
|
7875
|
+
plumbings.each do |plumbing|
|
|
7876
|
+
porcelain = convert_requestable_resource_to_porcelain(plumbing)
|
|
7877
|
+
items.append(porcelain)
|
|
7878
|
+
end
|
|
7879
|
+
items
|
|
7880
|
+
end
|
|
7795
7881
|
def self.convert_resource_to_plumbing(porcelain)
|
|
7796
7882
|
if porcelain == nil
|
|
7797
7883
|
return nil
|
data/lib/models/porcelain.rb
CHANGED
|
@@ -708,6 +708,38 @@ module SDM
|
|
|
708
708
|
end
|
|
709
709
|
end
|
|
710
710
|
|
|
711
|
+
# AccessRequestConfig holds the information required to request access to a resource
|
|
712
|
+
class AccessRequestConfig
|
|
713
|
+
# The time access should end, defaults to the next occurance of 5 pm
|
|
714
|
+
attr_accessor :duration
|
|
715
|
+
# The reason for access
|
|
716
|
+
attr_accessor :reason
|
|
717
|
+
# The resource for which access is being requested
|
|
718
|
+
attr_accessor :resource_id
|
|
719
|
+
# The time access should start, defaults to now
|
|
720
|
+
attr_accessor :start_from
|
|
721
|
+
|
|
722
|
+
def initialize(
|
|
723
|
+
duration: nil,
|
|
724
|
+
reason: nil,
|
|
725
|
+
resource_id: nil,
|
|
726
|
+
start_from: nil
|
|
727
|
+
)
|
|
728
|
+
@duration = duration == nil ? "" : duration
|
|
729
|
+
@reason = reason == nil ? "" : reason
|
|
730
|
+
@resource_id = resource_id == nil ? "" : resource_id
|
|
731
|
+
@start_from = start_from == nil ? nil : start_from
|
|
732
|
+
end
|
|
733
|
+
|
|
734
|
+
def to_json(options = {})
|
|
735
|
+
hash = {}
|
|
736
|
+
self.instance_variables.each do |var|
|
|
737
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
738
|
+
end
|
|
739
|
+
hash.to_json
|
|
740
|
+
end
|
|
741
|
+
end
|
|
742
|
+
|
|
711
743
|
# AccessRequestEvents hold information about events related to an access
|
|
712
744
|
# request such as creation, approval and denial.
|
|
713
745
|
class AccessRequestEvent
|
|
@@ -836,7 +868,8 @@ module SDM
|
|
|
836
868
|
end
|
|
837
869
|
end
|
|
838
870
|
|
|
839
|
-
# AccessRequestListResponse
|
|
871
|
+
# AccessRequestListResponse returns a list of access requests records that meet
|
|
872
|
+
# the criteria of a AccessRequestListRequest.
|
|
840
873
|
class AccessRequestListResponse
|
|
841
874
|
# Rate limit information.
|
|
842
875
|
attr_accessor :rate_limit
|
|
@@ -7942,6 +7975,50 @@ module SDM
|
|
|
7942
7975
|
end
|
|
7943
7976
|
end
|
|
7944
7977
|
|
|
7978
|
+
# RequestableResource is a resource that can be requested via an AccessRequestConfig
|
|
7979
|
+
class RequestableResource
|
|
7980
|
+
# The current state of the user's access to the resources
|
|
7981
|
+
attr_accessor :access
|
|
7982
|
+
# The type of authentication for the resource
|
|
7983
|
+
attr_accessor :authentication
|
|
7984
|
+
# The health check status of the reasource
|
|
7985
|
+
attr_accessor :healthy
|
|
7986
|
+
# The resource id.
|
|
7987
|
+
attr_accessor :id
|
|
7988
|
+
# The resource name.
|
|
7989
|
+
attr_accessor :name
|
|
7990
|
+
# Any tags attached to this resource
|
|
7991
|
+
attr_accessor :tags
|
|
7992
|
+
# The resource type
|
|
7993
|
+
attr_accessor :type
|
|
7994
|
+
|
|
7995
|
+
def initialize(
|
|
7996
|
+
access: nil,
|
|
7997
|
+
authentication: nil,
|
|
7998
|
+
healthy: nil,
|
|
7999
|
+
id: nil,
|
|
8000
|
+
name: nil,
|
|
8001
|
+
tags: nil,
|
|
8002
|
+
type: nil
|
|
8003
|
+
)
|
|
8004
|
+
@access = access == nil ? "" : access
|
|
8005
|
+
@authentication = authentication == nil ? "" : authentication
|
|
8006
|
+
@healthy = healthy == nil ? false : healthy
|
|
8007
|
+
@id = id == nil ? "" : id
|
|
8008
|
+
@name = name == nil ? "" : name
|
|
8009
|
+
@tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
|
|
8010
|
+
@type = type == nil ? "" : type
|
|
8011
|
+
end
|
|
8012
|
+
|
|
8013
|
+
def to_json(options = {})
|
|
8014
|
+
hash = {}
|
|
8015
|
+
self.instance_variables.each do |var|
|
|
8016
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
8017
|
+
end
|
|
8018
|
+
hash.to_json
|
|
8019
|
+
end
|
|
8020
|
+
end
|
|
8021
|
+
|
|
7945
8022
|
# ResourceCreateResponse reports how the Resources were created in the system.
|
|
7946
8023
|
class ResourceCreateResponse
|
|
7947
8024
|
# Reserved for future use.
|
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/5.0.
|
|
32
|
+
USER_AGENT = "strongdm-sdk-ruby/5.0.2"
|
|
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.
|
data/lib/svc.rb
CHANGED
|
@@ -39,7 +39,7 @@ module SDM #:nodoc:
|
|
|
39
39
|
@parent = parent
|
|
40
40
|
end
|
|
41
41
|
|
|
42
|
-
# Lists existing
|
|
42
|
+
# Lists existing access requests.
|
|
43
43
|
def list(
|
|
44
44
|
filter,
|
|
45
45
|
*args,
|
|
@@ -88,7 +88,7 @@ module SDM #:nodoc:
|
|
|
88
88
|
@access_requests = access_requests
|
|
89
89
|
end
|
|
90
90
|
|
|
91
|
-
# Lists existing
|
|
91
|
+
# Lists existing access requests.
|
|
92
92
|
def list(
|
|
93
93
|
filter,
|
|
94
94
|
*args,
|
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: 5.0.
|
|
4
|
+
version: 5.0.2
|
|
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-10-02 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-4e5f48ff9f2249cddedded686470b0e6771a3eda.idx"
|
|
85
|
+
- "./.git/objects/pack/pack-4e5f48ff9f2249cddedded686470b0e6771a3eda.pack"
|
|
86
86
|
- "./.git/packed-refs"
|
|
87
87
|
- "./.git/refs/heads/master"
|
|
88
88
|
- "./.git/refs/remotes/origin/HEAD"
|