strongdm 15.37.0 → 15.40.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 +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-7e67875b028cbc214a2e0c8edcb20fca17ee9f87.idx → pack-dd6bb6985cf76fa5e48c637d1f8ed6669c30c1c5.idx} +0 -0
- data/.git/objects/pack/{pack-7e67875b028cbc214a2e0c8edcb20fca17ee9f87.pack → pack-dd6bb6985cf76fa5e48c637d1f8ed6669c30c1c5.pack} +0 -0
- data/.git/packed-refs +4 -2
- data/.git/refs/heads/master +1 -1
- data/lib/constants.rb +2 -0
- data/lib/grpc/discovery_connectors_pb.rb +132 -0
- data/lib/grpc/discovery_connectors_services_pb.rb +46 -0
- data/lib/grpc/drivers_pb.rb +16 -0
- data/lib/grpc/options_pb.rb +6 -0
- data/lib/grpc/plumbing.rb +618 -0
- data/lib/models/porcelain.rb +457 -0
- data/lib/strongdm.rb +14 -1
- data/lib/svc.rb +215 -0
- data/lib/version +1 -1
- data/lib/version.rb +1 -1
- metadata +6 -4
data/lib/models/porcelain.rb
CHANGED
|
@@ -636,6 +636,59 @@ module SDM
|
|
|
636
636
|
end
|
|
637
637
|
end
|
|
638
638
|
|
|
639
|
+
class AWSConnector
|
|
640
|
+
# AccountIds is the list of AWS Accounts to scan
|
|
641
|
+
attr_accessor :account_ids
|
|
642
|
+
# Description of the Connector.
|
|
643
|
+
attr_accessor :description
|
|
644
|
+
# ExcludeTags filters out discovered resources that have the tag and value.
|
|
645
|
+
# We do allow duplicate tag names for ExcludeTags to support multiple excluded values for the tag.
|
|
646
|
+
attr_accessor :exclude_tags
|
|
647
|
+
# Unique identifier of the Connector.
|
|
648
|
+
attr_accessor :id
|
|
649
|
+
# IncludeTags only discovers cloud resources that have one of the included tags.
|
|
650
|
+
# We do not allow duplicate tag names for IncludeTags
|
|
651
|
+
attr_accessor :include_tags
|
|
652
|
+
# Unique human-readable name of the Connector.
|
|
653
|
+
attr_accessor :name
|
|
654
|
+
# RoleName is the Role we're assuming into for an account
|
|
655
|
+
attr_accessor :role_name
|
|
656
|
+
# ScanPeriod identifies which remote system this Connector discovers
|
|
657
|
+
attr_accessor :scan_period
|
|
658
|
+
# Services is a list of services this connector should scan.
|
|
659
|
+
attr_accessor :services
|
|
660
|
+
|
|
661
|
+
def initialize(
|
|
662
|
+
account_ids: nil,
|
|
663
|
+
description: nil,
|
|
664
|
+
exclude_tags: nil,
|
|
665
|
+
id: nil,
|
|
666
|
+
include_tags: nil,
|
|
667
|
+
name: nil,
|
|
668
|
+
role_name: nil,
|
|
669
|
+
scan_period: nil,
|
|
670
|
+
services: nil
|
|
671
|
+
)
|
|
672
|
+
@account_ids = account_ids == nil ? [] : account_ids
|
|
673
|
+
@description = description == nil ? "" : description
|
|
674
|
+
@exclude_tags = exclude_tags == nil ? [] : exclude_tags
|
|
675
|
+
@id = id == nil ? "" : id
|
|
676
|
+
@include_tags = include_tags == nil ? [] : include_tags
|
|
677
|
+
@name = name == nil ? "" : name
|
|
678
|
+
@role_name = role_name == nil ? "" : role_name
|
|
679
|
+
@scan_period = scan_period == nil ? "" : scan_period
|
|
680
|
+
@services = services == nil ? [] : services
|
|
681
|
+
end
|
|
682
|
+
|
|
683
|
+
def to_json(options = {})
|
|
684
|
+
hash = {}
|
|
685
|
+
self.instance_variables.each do |var|
|
|
686
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
687
|
+
end
|
|
688
|
+
hash.to_json
|
|
689
|
+
end
|
|
690
|
+
end
|
|
691
|
+
|
|
639
692
|
class AWSConsole
|
|
640
693
|
# 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.
|
|
641
694
|
attr_accessor :bind_interface
|
|
@@ -4180,6 +4233,63 @@ module SDM
|
|
|
4180
4233
|
end
|
|
4181
4234
|
end
|
|
4182
4235
|
|
|
4236
|
+
class AzureConnector
|
|
4237
|
+
# ClientId is the ID of the Application / Service Account we're acting as
|
|
4238
|
+
attr_accessor :client_id
|
|
4239
|
+
# Description of the Connector.
|
|
4240
|
+
attr_accessor :description
|
|
4241
|
+
# ExcludeTags filters out discovered resources that have the tag and value.
|
|
4242
|
+
# We do allow duplicate tag names for ExcludeTags to support multiple excluded values for the tag.
|
|
4243
|
+
attr_accessor :exclude_tags
|
|
4244
|
+
# Unique identifier of the Connector.
|
|
4245
|
+
attr_accessor :id
|
|
4246
|
+
# IncludeTags only discovers cloud resources that have one of the included tags.
|
|
4247
|
+
# We do not allow duplicate tag names for IncludeTags
|
|
4248
|
+
attr_accessor :include_tags
|
|
4249
|
+
# Unique human-readable name of the Connector.
|
|
4250
|
+
attr_accessor :name
|
|
4251
|
+
# ScanPeriod identifies which remote system this Connector discovers
|
|
4252
|
+
attr_accessor :scan_period
|
|
4253
|
+
# Services is a list of services this connector should scan.
|
|
4254
|
+
attr_accessor :services
|
|
4255
|
+
# SubscriptionIds are the targets of discovery.
|
|
4256
|
+
attr_accessor :subscription_ids
|
|
4257
|
+
# TenantId is the Azure Tenant we're discovering in
|
|
4258
|
+
attr_accessor :tenant_id
|
|
4259
|
+
|
|
4260
|
+
def initialize(
|
|
4261
|
+
client_id: nil,
|
|
4262
|
+
description: nil,
|
|
4263
|
+
exclude_tags: nil,
|
|
4264
|
+
id: nil,
|
|
4265
|
+
include_tags: nil,
|
|
4266
|
+
name: nil,
|
|
4267
|
+
scan_period: nil,
|
|
4268
|
+
services: nil,
|
|
4269
|
+
subscription_ids: nil,
|
|
4270
|
+
tenant_id: nil
|
|
4271
|
+
)
|
|
4272
|
+
@client_id = client_id == nil ? "" : client_id
|
|
4273
|
+
@description = description == nil ? "" : description
|
|
4274
|
+
@exclude_tags = exclude_tags == nil ? [] : exclude_tags
|
|
4275
|
+
@id = id == nil ? "" : id
|
|
4276
|
+
@include_tags = include_tags == nil ? [] : include_tags
|
|
4277
|
+
@name = name == nil ? "" : name
|
|
4278
|
+
@scan_period = scan_period == nil ? "" : scan_period
|
|
4279
|
+
@services = services == nil ? [] : services
|
|
4280
|
+
@subscription_ids = subscription_ids == nil ? [] : subscription_ids
|
|
4281
|
+
@tenant_id = tenant_id == nil ? "" : tenant_id
|
|
4282
|
+
end
|
|
4283
|
+
|
|
4284
|
+
def to_json(options = {})
|
|
4285
|
+
hash = {}
|
|
4286
|
+
self.instance_variables.each do |var|
|
|
4287
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
4288
|
+
end
|
|
4289
|
+
hash.to_json
|
|
4290
|
+
end
|
|
4291
|
+
end
|
|
4292
|
+
|
|
4183
4293
|
class AzureMysql
|
|
4184
4294
|
# 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.
|
|
4185
4295
|
attr_accessor :bind_interface
|
|
@@ -5147,6 +5257,228 @@ module SDM
|
|
|
5147
5257
|
end
|
|
5148
5258
|
end
|
|
5149
5259
|
|
|
5260
|
+
# ConnectorCreateRequest specifies a connector to create.
|
|
5261
|
+
class ConnectorCreateRequest
|
|
5262
|
+
# Parameters to define the new Connector.
|
|
5263
|
+
attr_accessor :connector
|
|
5264
|
+
|
|
5265
|
+
def initialize(
|
|
5266
|
+
connector: nil
|
|
5267
|
+
)
|
|
5268
|
+
@connector = connector == nil ? nil : connector
|
|
5269
|
+
end
|
|
5270
|
+
|
|
5271
|
+
def to_json(options = {})
|
|
5272
|
+
hash = {}
|
|
5273
|
+
self.instance_variables.each do |var|
|
|
5274
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5275
|
+
end
|
|
5276
|
+
hash.to_json
|
|
5277
|
+
end
|
|
5278
|
+
end
|
|
5279
|
+
|
|
5280
|
+
# ConnectorCreateResponse reports the result of a create.
|
|
5281
|
+
class ConnectorCreateResponse
|
|
5282
|
+
# The created Connector.
|
|
5283
|
+
attr_accessor :connector
|
|
5284
|
+
# Rate limit information.
|
|
5285
|
+
attr_accessor :rate_limit
|
|
5286
|
+
|
|
5287
|
+
def initialize(
|
|
5288
|
+
connector: nil,
|
|
5289
|
+
rate_limit: nil
|
|
5290
|
+
)
|
|
5291
|
+
@connector = connector == nil ? nil : connector
|
|
5292
|
+
@rate_limit = rate_limit == nil ? nil : rate_limit
|
|
5293
|
+
end
|
|
5294
|
+
|
|
5295
|
+
def to_json(options = {})
|
|
5296
|
+
hash = {}
|
|
5297
|
+
self.instance_variables.each do |var|
|
|
5298
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5299
|
+
end
|
|
5300
|
+
hash.to_json
|
|
5301
|
+
end
|
|
5302
|
+
end
|
|
5303
|
+
|
|
5304
|
+
# ConnectorDeleteRequest identifies a connector by ID to delete.
|
|
5305
|
+
class ConnectorDeleteRequest
|
|
5306
|
+
# The unique identifier of the connector to delete.
|
|
5307
|
+
attr_accessor :id
|
|
5308
|
+
|
|
5309
|
+
def initialize(
|
|
5310
|
+
id: nil
|
|
5311
|
+
)
|
|
5312
|
+
@id = id == nil ? "" : id
|
|
5313
|
+
end
|
|
5314
|
+
|
|
5315
|
+
def to_json(options = {})
|
|
5316
|
+
hash = {}
|
|
5317
|
+
self.instance_variables.each do |var|
|
|
5318
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5319
|
+
end
|
|
5320
|
+
hash.to_json
|
|
5321
|
+
end
|
|
5322
|
+
end
|
|
5323
|
+
|
|
5324
|
+
# ConnectorDeleteResponse returns information about a connector that was deleted.
|
|
5325
|
+
class ConnectorDeleteResponse
|
|
5326
|
+
# Reserved for future use.
|
|
5327
|
+
attr_accessor :meta
|
|
5328
|
+
# Rate limit information.
|
|
5329
|
+
attr_accessor :rate_limit
|
|
5330
|
+
|
|
5331
|
+
def initialize(
|
|
5332
|
+
meta: nil,
|
|
5333
|
+
rate_limit: nil
|
|
5334
|
+
)
|
|
5335
|
+
@meta = meta == nil ? nil : meta
|
|
5336
|
+
@rate_limit = rate_limit == nil ? nil : rate_limit
|
|
5337
|
+
end
|
|
5338
|
+
|
|
5339
|
+
def to_json(options = {})
|
|
5340
|
+
hash = {}
|
|
5341
|
+
self.instance_variables.each do |var|
|
|
5342
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5343
|
+
end
|
|
5344
|
+
hash.to_json
|
|
5345
|
+
end
|
|
5346
|
+
end
|
|
5347
|
+
|
|
5348
|
+
# ConnectorGetRequest specifies which Connector to retrieve.
|
|
5349
|
+
class ConnectorGetRequest
|
|
5350
|
+
# The unique identifier of the Connector to retrieve.
|
|
5351
|
+
attr_accessor :id
|
|
5352
|
+
|
|
5353
|
+
def initialize(
|
|
5354
|
+
id: nil
|
|
5355
|
+
)
|
|
5356
|
+
@id = id == nil ? "" : id
|
|
5357
|
+
end
|
|
5358
|
+
|
|
5359
|
+
def to_json(options = {})
|
|
5360
|
+
hash = {}
|
|
5361
|
+
self.instance_variables.each do |var|
|
|
5362
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5363
|
+
end
|
|
5364
|
+
hash.to_json
|
|
5365
|
+
end
|
|
5366
|
+
end
|
|
5367
|
+
|
|
5368
|
+
# ConnectorGetResponse returns a requested Connector.
|
|
5369
|
+
class ConnectorGetResponse
|
|
5370
|
+
# The requested Connector.
|
|
5371
|
+
attr_accessor :connector
|
|
5372
|
+
# Reserved for future use.
|
|
5373
|
+
attr_accessor :meta
|
|
5374
|
+
# Rate limit information.
|
|
5375
|
+
attr_accessor :rate_limit
|
|
5376
|
+
|
|
5377
|
+
def initialize(
|
|
5378
|
+
connector: nil,
|
|
5379
|
+
meta: nil,
|
|
5380
|
+
rate_limit: nil
|
|
5381
|
+
)
|
|
5382
|
+
@connector = connector == nil ? nil : connector
|
|
5383
|
+
@meta = meta == nil ? nil : meta
|
|
5384
|
+
@rate_limit = rate_limit == nil ? nil : rate_limit
|
|
5385
|
+
end
|
|
5386
|
+
|
|
5387
|
+
def to_json(options = {})
|
|
5388
|
+
hash = {}
|
|
5389
|
+
self.instance_variables.each do |var|
|
|
5390
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5391
|
+
end
|
|
5392
|
+
hash.to_json
|
|
5393
|
+
end
|
|
5394
|
+
end
|
|
5395
|
+
|
|
5396
|
+
# ConnectorListRequest specifies criteria for retrieving a list of connectors.
|
|
5397
|
+
class ConnectorListRequest
|
|
5398
|
+
# A human-readable filter query string.
|
|
5399
|
+
attr_accessor :filter
|
|
5400
|
+
|
|
5401
|
+
def initialize(
|
|
5402
|
+
filter: nil
|
|
5403
|
+
)
|
|
5404
|
+
@filter = filter == nil ? "" : filter
|
|
5405
|
+
end
|
|
5406
|
+
|
|
5407
|
+
def to_json(options = {})
|
|
5408
|
+
hash = {}
|
|
5409
|
+
self.instance_variables.each do |var|
|
|
5410
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5411
|
+
end
|
|
5412
|
+
hash.to_json
|
|
5413
|
+
end
|
|
5414
|
+
end
|
|
5415
|
+
|
|
5416
|
+
# ConnectorListResponse returns a list of connectors that meet the criteria of a
|
|
5417
|
+
# ConnectorListRequest.
|
|
5418
|
+
class ConnectorListResponse
|
|
5419
|
+
# Rate limit information.
|
|
5420
|
+
attr_accessor :rate_limit
|
|
5421
|
+
|
|
5422
|
+
def initialize(
|
|
5423
|
+
rate_limit: nil
|
|
5424
|
+
)
|
|
5425
|
+
@rate_limit = rate_limit == nil ? nil : rate_limit
|
|
5426
|
+
end
|
|
5427
|
+
|
|
5428
|
+
def to_json(options = {})
|
|
5429
|
+
hash = {}
|
|
5430
|
+
self.instance_variables.each do |var|
|
|
5431
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5432
|
+
end
|
|
5433
|
+
hash.to_json
|
|
5434
|
+
end
|
|
5435
|
+
end
|
|
5436
|
+
|
|
5437
|
+
# ConnectorUpdateRequest updates a connector.
|
|
5438
|
+
class ConnectorUpdateRequest
|
|
5439
|
+
# Parameters to overwrite the specified connector.
|
|
5440
|
+
attr_accessor :connector
|
|
5441
|
+
|
|
5442
|
+
def initialize(
|
|
5443
|
+
connector: nil
|
|
5444
|
+
)
|
|
5445
|
+
@connector = connector == nil ? nil : connector
|
|
5446
|
+
end
|
|
5447
|
+
|
|
5448
|
+
def to_json(options = {})
|
|
5449
|
+
hash = {}
|
|
5450
|
+
self.instance_variables.each do |var|
|
|
5451
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5452
|
+
end
|
|
5453
|
+
hash.to_json
|
|
5454
|
+
end
|
|
5455
|
+
end
|
|
5456
|
+
|
|
5457
|
+
# ConnectorUpdateResponse returns the fields of a connector after it has been updated by
|
|
5458
|
+
# a connectorUpdateRequest.
|
|
5459
|
+
class ConnectorUpdateResponse
|
|
5460
|
+
# The updated connector.
|
|
5461
|
+
attr_accessor :connector
|
|
5462
|
+
# Rate limit information.
|
|
5463
|
+
attr_accessor :rate_limit
|
|
5464
|
+
|
|
5465
|
+
def initialize(
|
|
5466
|
+
connector: nil,
|
|
5467
|
+
rate_limit: nil
|
|
5468
|
+
)
|
|
5469
|
+
@connector = connector == nil ? nil : connector
|
|
5470
|
+
@rate_limit = rate_limit == nil ? nil : rate_limit
|
|
5471
|
+
end
|
|
5472
|
+
|
|
5473
|
+
def to_json(options = {})
|
|
5474
|
+
hash = {}
|
|
5475
|
+
self.instance_variables.each do |var|
|
|
5476
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
5477
|
+
end
|
|
5478
|
+
hash.to_json
|
|
5479
|
+
end
|
|
5480
|
+
end
|
|
5481
|
+
|
|
5150
5482
|
# ControlPanelGetRDPCAPublicKeyResponse represents a request for an
|
|
5151
5483
|
# organization's RDP Certificate Authority public key.
|
|
5152
5484
|
class ControlPanelGetRDPCAPublicKeyResponse
|
|
@@ -6629,6 +6961,67 @@ module SDM
|
|
|
6629
6961
|
end
|
|
6630
6962
|
end
|
|
6631
6963
|
|
|
6964
|
+
class GCPConnector
|
|
6965
|
+
# Description of the Connector.
|
|
6966
|
+
attr_accessor :description
|
|
6967
|
+
# ExcludeTags filters out discovered resources that have the tag and value.
|
|
6968
|
+
# We do allow duplicate tag names for ExcludeTags to support multiple excluded values for the tag.
|
|
6969
|
+
attr_accessor :exclude_tags
|
|
6970
|
+
# Unique identifier of the Connector.
|
|
6971
|
+
attr_accessor :id
|
|
6972
|
+
# IncludeTags only discovers cloud resources that have one of the included tags.
|
|
6973
|
+
# We do not allow duplicate tag names for IncludeTags
|
|
6974
|
+
attr_accessor :include_tags
|
|
6975
|
+
# Unique human-readable name of the Connector.
|
|
6976
|
+
attr_accessor :name
|
|
6977
|
+
# PoolId is the GCP Workload Pool Identifier used to authenticate our JWT
|
|
6978
|
+
attr_accessor :pool_id
|
|
6979
|
+
# ProjectIds is the list of GCP Projects the connector will scan
|
|
6980
|
+
attr_accessor :project_ids
|
|
6981
|
+
# ProjectNumber is the GCP Project the Workload Pool is defined in
|
|
6982
|
+
attr_accessor :project_number
|
|
6983
|
+
# ProviderId is the GCP Workload Provider Identifier used to authenticate our JWT
|
|
6984
|
+
attr_accessor :provider_id
|
|
6985
|
+
# ScanPeriod identifies which remote system this Connector discovers
|
|
6986
|
+
attr_accessor :scan_period
|
|
6987
|
+
# Services is a list of services this connector should scan.
|
|
6988
|
+
attr_accessor :services
|
|
6989
|
+
|
|
6990
|
+
def initialize(
|
|
6991
|
+
description: nil,
|
|
6992
|
+
exclude_tags: nil,
|
|
6993
|
+
id: nil,
|
|
6994
|
+
include_tags: nil,
|
|
6995
|
+
name: nil,
|
|
6996
|
+
pool_id: nil,
|
|
6997
|
+
project_ids: nil,
|
|
6998
|
+
project_number: nil,
|
|
6999
|
+
provider_id: nil,
|
|
7000
|
+
scan_period: nil,
|
|
7001
|
+
services: nil
|
|
7002
|
+
)
|
|
7003
|
+
@description = description == nil ? "" : description
|
|
7004
|
+
@exclude_tags = exclude_tags == nil ? [] : exclude_tags
|
|
7005
|
+
@id = id == nil ? "" : id
|
|
7006
|
+
@include_tags = include_tags == nil ? [] : include_tags
|
|
7007
|
+
@name = name == nil ? "" : name
|
|
7008
|
+
@pool_id = pool_id == nil ? "" : pool_id
|
|
7009
|
+
@project_ids = project_ids == nil ? [] : project_ids
|
|
7010
|
+
@project_number = project_number == nil ? "" : project_number
|
|
7011
|
+
@provider_id = provider_id == nil ? "" : provider_id
|
|
7012
|
+
@scan_period = scan_period == nil ? "" : scan_period
|
|
7013
|
+
@services = services == nil ? [] : services
|
|
7014
|
+
end
|
|
7015
|
+
|
|
7016
|
+
def to_json(options = {})
|
|
7017
|
+
hash = {}
|
|
7018
|
+
self.instance_variables.each do |var|
|
|
7019
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
7020
|
+
end
|
|
7021
|
+
hash.to_json
|
|
7022
|
+
end
|
|
7023
|
+
end
|
|
7024
|
+
|
|
6632
7025
|
class GCPConsole
|
|
6633
7026
|
# 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.
|
|
6634
7027
|
attr_accessor :bind_interface
|
|
@@ -11323,6 +11716,70 @@ module SDM
|
|
|
11323
11716
|
end
|
|
11324
11717
|
end
|
|
11325
11718
|
|
|
11719
|
+
# OktaGroups is currently unstable, and its API may change, or it may be removed, without a major version bump.
|
|
11720
|
+
class OktaGroups
|
|
11721
|
+
# 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.
|
|
11722
|
+
attr_accessor :bind_interface
|
|
11723
|
+
# Represents the Okta Org Client URL
|
|
11724
|
+
attr_accessor :domain
|
|
11725
|
+
# A filter applied to the routing logic to pin datasource to nodes.
|
|
11726
|
+
attr_accessor :egress_filter
|
|
11727
|
+
# True if the datasource is reachable and the credentials are valid.
|
|
11728
|
+
attr_accessor :healthy
|
|
11729
|
+
# Unique identifier of the Resource.
|
|
11730
|
+
attr_accessor :id
|
|
11731
|
+
# The ID of the identity set to use for identity connections.
|
|
11732
|
+
attr_accessor :identity_set_id
|
|
11733
|
+
# Unique human-readable name of the Resource.
|
|
11734
|
+
attr_accessor :name
|
|
11735
|
+
# The privilege levels specify which Groups are managed externally
|
|
11736
|
+
attr_accessor :privilege_levels
|
|
11737
|
+
# ID of the proxy cluster for this resource, if any.
|
|
11738
|
+
attr_accessor :proxy_cluster_id
|
|
11739
|
+
# ID of the secret store containing credentials for this resource, if any.
|
|
11740
|
+
attr_accessor :secret_store_id
|
|
11741
|
+
# DNS subdomain through which this resource may be accessed on clients. (e.g. "app-prod1" allows the resource to be accessed at "app-prod1.your-org-name.sdm-proxy-domain"). Only applicable to HTTP-based resources or resources using virtual networking mode.
|
|
11742
|
+
attr_accessor :subdomain
|
|
11743
|
+
# Tags is a map of key, value pairs.
|
|
11744
|
+
attr_accessor :tags
|
|
11745
|
+
|
|
11746
|
+
def initialize(
|
|
11747
|
+
bind_interface: nil,
|
|
11748
|
+
domain: nil,
|
|
11749
|
+
egress_filter: nil,
|
|
11750
|
+
healthy: nil,
|
|
11751
|
+
id: nil,
|
|
11752
|
+
identity_set_id: nil,
|
|
11753
|
+
name: nil,
|
|
11754
|
+
privilege_levels: nil,
|
|
11755
|
+
proxy_cluster_id: nil,
|
|
11756
|
+
secret_store_id: nil,
|
|
11757
|
+
subdomain: nil,
|
|
11758
|
+
tags: nil
|
|
11759
|
+
)
|
|
11760
|
+
@bind_interface = bind_interface == nil ? "" : bind_interface
|
|
11761
|
+
@domain = domain == nil ? "" : domain
|
|
11762
|
+
@egress_filter = egress_filter == nil ? "" : egress_filter
|
|
11763
|
+
@healthy = healthy == nil ? false : healthy
|
|
11764
|
+
@id = id == nil ? "" : id
|
|
11765
|
+
@identity_set_id = identity_set_id == nil ? "" : identity_set_id
|
|
11766
|
+
@name = name == nil ? "" : name
|
|
11767
|
+
@privilege_levels = privilege_levels == nil ? "" : privilege_levels
|
|
11768
|
+
@proxy_cluster_id = proxy_cluster_id == nil ? "" : proxy_cluster_id
|
|
11769
|
+
@secret_store_id = secret_store_id == nil ? "" : secret_store_id
|
|
11770
|
+
@subdomain = subdomain == nil ? "" : subdomain
|
|
11771
|
+
@tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
|
|
11772
|
+
end
|
|
11773
|
+
|
|
11774
|
+
def to_json(options = {})
|
|
11775
|
+
hash = {}
|
|
11776
|
+
self.instance_variables.each do |var|
|
|
11777
|
+
hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
|
|
11778
|
+
end
|
|
11779
|
+
hash.to_json
|
|
11780
|
+
end
|
|
11781
|
+
end
|
|
11782
|
+
|
|
11326
11783
|
class Oracle
|
|
11327
11784
|
# 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.
|
|
11328
11785
|
attr_accessor :bind_interface
|
data/lib/strongdm.rb
CHANGED
|
@@ -30,7 +30,7 @@ module SDM #:nodoc:
|
|
|
30
30
|
DEFAULT_RETRY_FACTOR = 1.6
|
|
31
31
|
DEFAULT_RETRY_JITTER = 0.2
|
|
32
32
|
API_VERSION = "2025-04-14"
|
|
33
|
-
USER_AGENT = "strongdm-sdk-ruby/15.
|
|
33
|
+
USER_AGENT = "strongdm-sdk-ruby/15.40.0"
|
|
34
34
|
private_constant :DEFAULT_BASE_RETRY_DELAY, :DEFAULT_MAX_RETRY_DELAY, :DEFAULT_RETRY_FACTOR, :DEFAULT_RETRY_JITTER, :API_VERSION, :USER_AGENT
|
|
35
35
|
|
|
36
36
|
# Creates a new strongDM API client.
|
|
@@ -79,6 +79,7 @@ module SDM #:nodoc:
|
|
|
79
79
|
@approval_workflows = ApprovalWorkflows.new(@channel, self)
|
|
80
80
|
@approval_workflows_history = ApprovalWorkflowsHistory.new(@channel, self)
|
|
81
81
|
@control_panel = ControlPanel.new(@channel, self)
|
|
82
|
+
@discovery_connectors = DiscoveryConnectors.new(@channel, self)
|
|
82
83
|
@roles = Roles.new(@channel, self)
|
|
83
84
|
@groups = Groups.new(@channel, self)
|
|
84
85
|
@groups_history = GroupsHistory.new(@channel, self)
|
|
@@ -329,6 +330,11 @@ module SDM #:nodoc:
|
|
|
329
330
|
#
|
|
330
331
|
# See {ControlPanel}.
|
|
331
332
|
attr_reader :control_panel
|
|
333
|
+
# A Discovery Connector is a configuration object for performing Resource
|
|
334
|
+
# Scans in remote systems such as AWS, GCP, Azure, and other systems.
|
|
335
|
+
#
|
|
336
|
+
# See {DiscoveryConnectors}.
|
|
337
|
+
attr_reader :discovery_connectors
|
|
332
338
|
# A Role has a list of access rules which determine which Resources the members
|
|
333
339
|
# of the Role have access to. An Account can be a member of multiple Roles via
|
|
334
340
|
# AccountAttachments.
|
|
@@ -550,6 +556,7 @@ module SDM #:nodoc:
|
|
|
550
556
|
@approval_workflows = ApprovalWorkflows.new(@channel, self)
|
|
551
557
|
@approval_workflows_history = ApprovalWorkflowsHistory.new(@channel, self)
|
|
552
558
|
@control_panel = ControlPanel.new(@channel, self)
|
|
559
|
+
@discovery_connectors = DiscoveryConnectors.new(@channel, self)
|
|
553
560
|
@roles = Roles.new(@channel, self)
|
|
554
561
|
@groups = Groups.new(@channel, self)
|
|
555
562
|
@groups_history = GroupsHistory.new(@channel, self)
|
|
@@ -608,6 +615,7 @@ module SDM #:nodoc:
|
|
|
608
615
|
@approval_workflow_approvers = SnapshotApprovalWorkflowApprovers.new(client.approval_workflow_approvers)
|
|
609
616
|
@approval_workflow_steps = SnapshotApprovalWorkflowSteps.new(client.approval_workflow_steps)
|
|
610
617
|
@approval_workflows = SnapshotApprovalWorkflows.new(client.approval_workflows)
|
|
618
|
+
@discovery_connectors = SnapshotDiscoveryConnectors.new(client.discovery_connectors)
|
|
611
619
|
@roles = SnapshotRoles.new(client.roles)
|
|
612
620
|
@groups = SnapshotGroups.new(client.groups)
|
|
613
621
|
@groups_roles = SnapshotGroupsRoles.new(client.groups_roles)
|
|
@@ -672,6 +680,11 @@ module SDM #:nodoc:
|
|
|
672
680
|
#
|
|
673
681
|
# See {SnapshotApprovalWorkflows}.
|
|
674
682
|
attr_reader :approval_workflows
|
|
683
|
+
# A Discovery Connector is a configuration object for performing Resource
|
|
684
|
+
# Scans in remote systems such as AWS, GCP, Azure, and other systems.
|
|
685
|
+
#
|
|
686
|
+
# See {SnapshotDiscoveryConnectors}.
|
|
687
|
+
attr_reader :discovery_connectors
|
|
675
688
|
# A Role has a list of access rules which determine which Resources the members
|
|
676
689
|
# of the Role have access to. An Account can be a member of multiple Roles via
|
|
677
690
|
# AccountAttachments.
|