strongdm 7.1.0 → 8.0.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-9cd0615b40bc7f8b12560a1af725da3a06bcb1d9.idx → pack-69c9823403bcd0961320d5e472ca7682c217e13f.idx} +0 -0
- data/.git/objects/pack/{pack-9cd0615b40bc7f8b12560a1af725da3a06bcb1d9.pack → pack-69c9823403bcd0961320d5e472ca7682c217e13f.pack} +0 -0
- data/.git/packed-refs +3 -2
- data/.git/refs/heads/master +1 -1
- data/lib/grpc/accounts_pb.rb +6 -0
- data/lib/grpc/accounts_services_pb.rb +1 -0
- data/lib/grpc/plumbing.rb +60 -0
- data/lib/models/porcelain.rb +61 -0
- data/lib/strongdm.rb +4 -2
- data/lib/svc.rb +4 -0
- 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: 1692786ff878322b92229abdcf3a833c53a3ac2fcc282c908b88746b39c50a10
|
4
|
+
data.tar.gz: 523e925b33b3b3246e53f3819820c50095305ad79c486e6b21cb09e5558c89e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8d6a587a20eb66b2d917c2587f553f98325d1e270b8f321ce628eb3d22fb5b0437b655e5f3ed2b38e48971d3e6302775db7473e3d1397bc436e77cba926fe65e
|
7
|
+
data.tar.gz: 8cb03acd29cce7f386c47956607d3e3e2b7457cd30200fcfdcf4760bb3a0539bf4811d7ad42c4ea88c0b707405a069b4bdb86fd5ff418e0c506585f52d2d4f86
|
data/.git/ORIG_HEAD
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
f34575bc142eabf113dbbc5b40b3a16e0c026355
|
data/.git/index
CHANGED
Binary file
|
data/.git/logs/HEAD
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
0000000000000000000000000000000000000000
|
2
|
-
|
3
|
-
|
1
|
+
0000000000000000000000000000000000000000 f34575bc142eabf113dbbc5b40b3a16e0c026355 sdmrelease <support@strongdm.com> 1712692017 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
2
|
+
f34575bc142eabf113dbbc5b40b3a16e0c026355 f34575bc142eabf113dbbc5b40b3a16e0c026355 sdmrelease <support@strongdm.com> 1712692017 +0000 checkout: moving from master to master
|
3
|
+
f34575bc142eabf113dbbc5b40b3a16e0c026355 7659a644ef149debee2515386136b7e2d5e917ea sdmrelease <support@strongdm.com> 1712692017 +0000 merge origin/development: Fast-forward
|
data/.git/logs/refs/heads/master
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
0000000000000000000000000000000000000000
|
2
|
-
|
1
|
+
0000000000000000000000000000000000000000 f34575bc142eabf113dbbc5b40b3a16e0c026355 sdmrelease <support@strongdm.com> 1712692017 +0000 clone: from github.com:strongdm/strongdm-sdk-ruby.git
|
2
|
+
f34575bc142eabf113dbbc5b40b3a16e0c026355 7659a644ef149debee2515386136b7e2d5e917ea sdmrelease <support@strongdm.com> 1712692017 +0000 merge origin/development: Fast-forward
|
@@ -1 +1 @@
|
|
1
|
-
0000000000000000000000000000000000000000
|
1
|
+
0000000000000000000000000000000000000000 f34575bc142eabf113dbbc5b40b3a16e0c026355 sdmrelease <support@strongdm.com> 1712692017 +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
|
+
7659a644ef149debee2515386136b7e2d5e917ea refs/remotes/origin/development
|
3
|
+
f34575bc142eabf113dbbc5b40b3a16e0c026355 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
|
@@ -103,3 +103,4 @@ e37aa2b50ffd917949a8e1c7a1fa28d12071fa69 refs/tags/v6.7.0
|
|
103
103
|
0429c9a2739f699ea33db7e6dd85e6be47e9190e refs/tags/v6.8.0
|
104
104
|
d8a1092c15d3618de31ada43875014d96bd21e36 refs/tags/v6.9.0
|
105
105
|
c69cd1f08e014470bbe2e4dbc4ad494d4bf78d6c refs/tags/v7.0.0
|
106
|
+
f34575bc142eabf113dbbc5b40b3a16e0c026355 refs/tags/v7.1.0
|
data/.git/refs/heads/master
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
7659a644ef149debee2515386136b7e2d5e917ea
|
data/lib/grpc/accounts_pb.rb
CHANGED
@@ -17,6 +17,7 @@
|
|
17
17
|
|
18
18
|
require "google/protobuf"
|
19
19
|
|
20
|
+
require "google/protobuf/duration_pb"
|
20
21
|
require "google/protobuf/timestamp_pb"
|
21
22
|
require "options_pb"
|
22
23
|
require "spec_pb"
|
@@ -33,6 +34,8 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
33
34
|
optional :account, :message, 2, "v1.Account"
|
34
35
|
optional :token, :string, 3
|
35
36
|
optional :rate_limit, :message, 4, "v1.RateLimitMetadata"
|
37
|
+
optional :access_key, :string, 5
|
38
|
+
optional :secret_key, :string, 6
|
36
39
|
end
|
37
40
|
add_message "v1.AccountGetRequest" do
|
38
41
|
optional :meta, :message, 1, "v1.GetRequestMetadata"
|
@@ -103,6 +106,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
103
106
|
optional :tags, :message, 4, "v1.Tags"
|
104
107
|
optional :rekeyed, :message, 5, "google.protobuf.Timestamp"
|
105
108
|
optional :deadline, :message, 6, "google.protobuf.Timestamp"
|
109
|
+
optional :account_type, :string, 7
|
110
|
+
repeated :permissions, :string, 8
|
111
|
+
optional :duration, :message, 9, "google.protobuf.Duration"
|
106
112
|
end
|
107
113
|
end
|
108
114
|
end
|
@@ -23,6 +23,7 @@ module V1
|
|
23
23
|
# Accounts are users that have access to strongDM. There are two types of accounts:
|
24
24
|
# 1. **Users:** humans who are authenticated through username and password or SSO.
|
25
25
|
# 2. **Service Accounts:** machines that are authenticated using a service token.
|
26
|
+
# 3. **Tokens** are access keys with permissions that can be used for authentication.
|
26
27
|
class Service
|
27
28
|
include ::GRPC::GenericService
|
28
29
|
|
data/lib/grpc/plumbing.rb
CHANGED
@@ -1041,6 +1041,9 @@ module SDM
|
|
1041
1041
|
if porcelain.instance_of? Service
|
1042
1042
|
plumbing.service = convert_service_to_plumbing(porcelain)
|
1043
1043
|
end
|
1044
|
+
if porcelain.instance_of? Token
|
1045
|
+
plumbing.token = convert_token_to_plumbing(porcelain)
|
1046
|
+
end
|
1044
1047
|
if porcelain.instance_of? User
|
1045
1048
|
plumbing.user = convert_user_to_plumbing(porcelain)
|
1046
1049
|
end
|
@@ -1054,6 +1057,9 @@ module SDM
|
|
1054
1057
|
if plumbing.service != nil
|
1055
1058
|
return convert_service_to_porcelain(plumbing.service)
|
1056
1059
|
end
|
1060
|
+
if plumbing.token != nil
|
1061
|
+
return convert_token_to_porcelain(plumbing.token)
|
1062
|
+
end
|
1057
1063
|
if plumbing.user != nil
|
1058
1064
|
return convert_user_to_porcelain(plumbing.user)
|
1059
1065
|
end
|
@@ -1271,9 +1277,11 @@ module SDM
|
|
1271
1277
|
return nil
|
1272
1278
|
end
|
1273
1279
|
porcelain = AccountCreateResponse.new()
|
1280
|
+
porcelain.access_key = (plumbing.access_key)
|
1274
1281
|
porcelain.account = convert_account_to_porcelain(plumbing.account)
|
1275
1282
|
porcelain.meta = convert_create_response_metadata_to_porcelain(plumbing.meta)
|
1276
1283
|
porcelain.rate_limit = convert_rate_limit_metadata_to_porcelain(plumbing.rate_limit)
|
1284
|
+
porcelain.secret_key = (plumbing.secret_key)
|
1277
1285
|
porcelain.token = (plumbing.token)
|
1278
1286
|
porcelain
|
1279
1287
|
end
|
@@ -1283,9 +1291,11 @@ module SDM
|
|
1283
1291
|
return nil
|
1284
1292
|
end
|
1285
1293
|
plumbing = V1::AccountCreateResponse.new()
|
1294
|
+
plumbing.access_key = (porcelain.access_key)
|
1286
1295
|
plumbing.account = convert_account_to_plumbing(porcelain.account)
|
1287
1296
|
plumbing.meta = convert_create_response_metadata_to_plumbing(porcelain.meta)
|
1288
1297
|
plumbing.rate_limit = convert_rate_limit_metadata_to_plumbing(porcelain.rate_limit)
|
1298
|
+
plumbing.secret_key = (porcelain.secret_key)
|
1289
1299
|
plumbing.token = (porcelain.token)
|
1290
1300
|
plumbing
|
1291
1301
|
end
|
@@ -11207,6 +11217,56 @@ module SDM
|
|
11207
11217
|
end
|
11208
11218
|
items
|
11209
11219
|
end
|
11220
|
+
def self.convert_token_to_porcelain(plumbing)
|
11221
|
+
if plumbing == nil
|
11222
|
+
return nil
|
11223
|
+
end
|
11224
|
+
porcelain = Token.new()
|
11225
|
+
porcelain.account_type = (plumbing.account_type)
|
11226
|
+
porcelain.deadline = convert_timestamp_to_porcelain(plumbing.deadline)
|
11227
|
+
porcelain.duration = convert_duration_to_porcelain(plumbing.duration)
|
11228
|
+
porcelain.id = (plumbing.id)
|
11229
|
+
porcelain.name = (plumbing.name)
|
11230
|
+
porcelain.permissions = (plumbing.permissions)
|
11231
|
+
porcelain.rekeyed = convert_timestamp_to_porcelain(plumbing.rekeyed)
|
11232
|
+
porcelain.suspended = (plumbing.suspended)
|
11233
|
+
porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
|
11234
|
+
porcelain
|
11235
|
+
end
|
11236
|
+
|
11237
|
+
def self.convert_token_to_plumbing(porcelain)
|
11238
|
+
if porcelain == nil
|
11239
|
+
return nil
|
11240
|
+
end
|
11241
|
+
plumbing = V1::Token.new()
|
11242
|
+
plumbing.account_type = (porcelain.account_type)
|
11243
|
+
plumbing.deadline = convert_timestamp_to_plumbing(porcelain.deadline)
|
11244
|
+
plumbing.duration = convert_duration_to_plumbing(porcelain.duration)
|
11245
|
+
plumbing.id = (porcelain.id)
|
11246
|
+
plumbing.name = (porcelain.name)
|
11247
|
+
plumbing.permissions += (porcelain.permissions)
|
11248
|
+
plumbing.rekeyed = convert_timestamp_to_plumbing(porcelain.rekeyed)
|
11249
|
+
plumbing.suspended = (porcelain.suspended)
|
11250
|
+
plumbing.tags = convert_tags_to_plumbing(porcelain.tags)
|
11251
|
+
plumbing
|
11252
|
+
end
|
11253
|
+
def self.convert_repeated_token_to_plumbing(porcelains)
|
11254
|
+
items = Array.new
|
11255
|
+
porcelains.each do |porcelain|
|
11256
|
+
plumbing = convert_token_to_plumbing(porcelain)
|
11257
|
+
items.append(plumbing)
|
11258
|
+
end
|
11259
|
+
items
|
11260
|
+
end
|
11261
|
+
|
11262
|
+
def self.convert_repeated_token_to_porcelain(plumbings)
|
11263
|
+
items = Array.new
|
11264
|
+
plumbings.each do |plumbing|
|
11265
|
+
porcelain = convert_token_to_porcelain(plumbing)
|
11266
|
+
items.append(porcelain)
|
11267
|
+
end
|
11268
|
+
items
|
11269
|
+
end
|
11210
11270
|
def self.convert_trino_to_porcelain(plumbing)
|
11211
11271
|
if plumbing == nil
|
11212
11272
|
return nil
|
data/lib/models/porcelain.rb
CHANGED
@@ -1081,25 +1081,33 @@ module SDM
|
|
1081
1081
|
|
1082
1082
|
# AccountCreateResponse reports how the Accounts were created in the system.
|
1083
1083
|
class AccountCreateResponse
|
1084
|
+
# ID part of the API key.
|
1085
|
+
attr_accessor :access_key
|
1084
1086
|
# The created Account.
|
1085
1087
|
attr_accessor :account
|
1086
1088
|
# Reserved for future use.
|
1087
1089
|
attr_accessor :meta
|
1088
1090
|
# Rate limit information.
|
1089
1091
|
attr_accessor :rate_limit
|
1092
|
+
# Secret part of the API key.
|
1093
|
+
attr_accessor :secret_key
|
1090
1094
|
# The auth token generated for the Account. The Account will use this token to
|
1091
1095
|
# authenticate with the strongDM API.
|
1092
1096
|
attr_accessor :token
|
1093
1097
|
|
1094
1098
|
def initialize(
|
1099
|
+
access_key: nil,
|
1095
1100
|
account: nil,
|
1096
1101
|
meta: nil,
|
1097
1102
|
rate_limit: nil,
|
1103
|
+
secret_key: nil,
|
1098
1104
|
token: nil
|
1099
1105
|
)
|
1106
|
+
@access_key = access_key == nil ? "" : access_key
|
1100
1107
|
@account = account == nil ? nil : account
|
1101
1108
|
@meta = meta == nil ? nil : meta
|
1102
1109
|
@rate_limit = rate_limit == nil ? nil : rate_limit
|
1110
|
+
@secret_key = secret_key == nil ? "" : secret_key
|
1103
1111
|
@token = token == nil ? "" : token
|
1104
1112
|
end
|
1105
1113
|
|
@@ -10409,6 +10417,59 @@ module SDM
|
|
10409
10417
|
end
|
10410
10418
|
end
|
10411
10419
|
|
10420
|
+
# A Token is an account providing tokenized access for automation or integration use.
|
10421
|
+
# Tokens include admin tokens, API keys, and SCIM tokens.
|
10422
|
+
class Token
|
10423
|
+
# Corresponds to the type of token, e.g. api or admin-token.
|
10424
|
+
attr_accessor :account_type
|
10425
|
+
# The timestamp when the Token will expire.
|
10426
|
+
attr_accessor :deadline
|
10427
|
+
# Duration from token creation to expiration.
|
10428
|
+
attr_accessor :duration
|
10429
|
+
# Unique identifier of the Token.
|
10430
|
+
attr_accessor :id
|
10431
|
+
# Unique human-readable name of the Token.
|
10432
|
+
attr_accessor :name
|
10433
|
+
# Permissions assigned to the token, e.g. role:create.
|
10434
|
+
attr_accessor :permissions
|
10435
|
+
# The timestamp when the Token was last rekeyed.
|
10436
|
+
attr_accessor :rekeyed
|
10437
|
+
# Reserved for future use. Always false for tokens.
|
10438
|
+
attr_accessor :suspended
|
10439
|
+
# Tags is a map of key, value pairs.
|
10440
|
+
attr_accessor :tags
|
10441
|
+
|
10442
|
+
def initialize(
|
10443
|
+
account_type: nil,
|
10444
|
+
deadline: nil,
|
10445
|
+
duration: nil,
|
10446
|
+
id: nil,
|
10447
|
+
name: nil,
|
10448
|
+
permissions: nil,
|
10449
|
+
rekeyed: nil,
|
10450
|
+
suspended: nil,
|
10451
|
+
tags: nil
|
10452
|
+
)
|
10453
|
+
@account_type = account_type == nil ? "" : account_type
|
10454
|
+
@deadline = deadline == nil ? nil : deadline
|
10455
|
+
@duration = duration == nil ? nil : duration
|
10456
|
+
@id = id == nil ? "" : id
|
10457
|
+
@name = name == nil ? "" : name
|
10458
|
+
@permissions = permissions == nil ? [] : permissions
|
10459
|
+
@rekeyed = rekeyed == nil ? nil : rekeyed
|
10460
|
+
@suspended = suspended == nil ? false : suspended
|
10461
|
+
@tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
|
10462
|
+
end
|
10463
|
+
|
10464
|
+
def to_json(options = {})
|
10465
|
+
hash = {}
|
10466
|
+
self.instance_variables.each do |var|
|
10467
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
10468
|
+
end
|
10469
|
+
hash.to_json
|
10470
|
+
end
|
10471
|
+
end
|
10472
|
+
|
10412
10473
|
# Trino is currently unstable, and its API may change, or it may be removed, without a major version bump.
|
10413
10474
|
class Trino
|
10414
10475
|
# 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.
|
data/lib/strongdm.rb
CHANGED
@@ -28,8 +28,8 @@ module SDM #:nodoc:
|
|
28
28
|
DEFAULT_MAX_RETRIES = 3
|
29
29
|
DEFAULT_BASE_RETRY_DELAY = 0.0030 # 30 ms
|
30
30
|
DEFAULT_MAX_RETRY_DELAY = 300 # 300 seconds
|
31
|
-
API_VERSION = "2024-03-
|
32
|
-
USER_AGENT = "strongdm-sdk-ruby/
|
31
|
+
API_VERSION = "2024-03-28"
|
32
|
+
USER_AGENT = "strongdm-sdk-ruby/8.0.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.
|
@@ -240,6 +240,7 @@ module SDM #:nodoc:
|
|
240
240
|
# Accounts are users that have access to strongDM. There are two types of accounts:
|
241
241
|
# 1. **Users:** humans who are authenticated through username and password or SSO.
|
242
242
|
# 2. **Service Accounts:** machines that are authenticated using a service token.
|
243
|
+
# 3. **Tokens** are access keys with permissions that can be used for authentication.
|
243
244
|
#
|
244
245
|
# See {Accounts}.
|
245
246
|
attr_reader :accounts
|
@@ -527,6 +528,7 @@ module SDM #:nodoc:
|
|
527
528
|
# Accounts are users that have access to strongDM. There are two types of accounts:
|
528
529
|
# 1. **Users:** humans who are authenticated through username and password or SSO.
|
529
530
|
# 2. **Service Accounts:** machines that are authenticated using a service token.
|
531
|
+
# 3. **Tokens** are access keys with permissions that can be used for authentication.
|
530
532
|
#
|
531
533
|
# See {SnapshotAccounts}.
|
532
534
|
attr_reader :accounts
|
data/lib/svc.rb
CHANGED
@@ -902,9 +902,11 @@ module SDM #:nodoc:
|
|
902
902
|
# Accounts are users that have access to strongDM. There are two types of accounts:
|
903
903
|
# 1. **Users:** humans who are authenticated through username and password or SSO.
|
904
904
|
# 2. **Service Accounts:** machines that are authenticated using a service token.
|
905
|
+
# 3. **Tokens** are access keys with permissions that can be used for authentication.
|
905
906
|
#
|
906
907
|
# See:
|
907
908
|
# {Service}
|
909
|
+
# {Token}
|
908
910
|
# {User}
|
909
911
|
class Accounts
|
910
912
|
extend Gem::Deprecate
|
@@ -942,9 +944,11 @@ module SDM #:nodoc:
|
|
942
944
|
end
|
943
945
|
|
944
946
|
resp = AccountCreateResponse.new()
|
947
|
+
resp.access_key = (plumbing_response.access_key)
|
945
948
|
resp.account = Plumbing::convert_account_to_porcelain(plumbing_response.account)
|
946
949
|
resp.meta = Plumbing::convert_create_response_metadata_to_porcelain(plumbing_response.meta)
|
947
950
|
resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit)
|
951
|
+
resp.secret_key = (plumbing_response.secret_key)
|
948
952
|
resp.token = (plumbing_response.token)
|
949
953
|
resp
|
950
954
|
end
|
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:
|
4
|
+
version: 8.0.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-
|
11
|
+
date: 2024-04-09 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-69c9823403bcd0961320d5e472ca7682c217e13f.idx"
|
85
|
+
- "./.git/objects/pack/pack-69c9823403bcd0961320d5e472ca7682c217e13f.pack"
|
86
86
|
- "./.git/packed-refs"
|
87
87
|
- "./.git/refs/heads/master"
|
88
88
|
- "./.git/refs/remotes/origin/HEAD"
|