strongdm 6.8.0 → 7.0.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.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/.git/ORIG_HEAD +1 -1
  3. data/.git/index +0 -0
  4. data/.git/logs/HEAD +3 -3
  5. data/.git/logs/refs/heads/master +2 -2
  6. data/.git/logs/refs/remotes/origin/HEAD +1 -1
  7. data/.git/objects/pack/{pack-8e713d387f255f0ec0181dce3e2a505478deb064.idx → pack-35100f17336a9a56e777373870676ef90dc420dc.idx} +0 -0
  8. data/.git/objects/pack/{pack-8e713d387f255f0ec0181dce3e2a505478deb064.pack → pack-35100f17336a9a56e777373870676ef90dc420dc.pack} +0 -0
  9. data/.git/packed-refs +4 -2
  10. data/.git/refs/heads/master +1 -1
  11. data/lib/constants.rb +1 -0
  12. data/lib/grpc/accounts_pb.rb +2 -0
  13. data/lib/grpc/approval_workflow_approvers_history_pb.rb +49 -0
  14. data/lib/grpc/approval_workflow_approvers_history_services_pb.rb +37 -0
  15. data/lib/grpc/approval_workflow_approvers_pb.rb +81 -0
  16. data/lib/grpc/approval_workflow_approvers_services_pb.rb +43 -0
  17. data/lib/grpc/approval_workflow_steps_history_pb.rb +49 -0
  18. data/lib/grpc/approval_workflow_steps_history_services_pb.rb +37 -0
  19. data/lib/grpc/approval_workflow_steps_pb.rb +78 -0
  20. data/lib/grpc/approval_workflow_steps_services_pb.rb +43 -0
  21. data/lib/grpc/approval_workflows_history_pb.rb +49 -0
  22. data/lib/grpc/approval_workflows_history_services_pb.rb +37 -0
  23. data/lib/grpc/approval_workflows_pb.rb +91 -0
  24. data/lib/grpc/approval_workflows_services_pb.rb +46 -0
  25. data/lib/grpc/plumbing.rb +716 -62
  26. data/lib/models/porcelain.rb +516 -2
  27. data/lib/strongdm.rb +55 -2
  28. data/lib/svc.rb +738 -0
  29. data/lib/version +1 -1
  30. data/lib/version.rb +1 -1
  31. metadata +16 -4
@@ -2193,6 +2193,520 @@ module SDM
2193
2193
  end
2194
2194
  end
2195
2195
 
2196
+ # ApprovalWorkflows are the mechanism by which requests for access can be viewed by authorized
2197
+ # approvers and be approved or denied.
2198
+ class ApprovalWorkflow
2199
+ # Approval mode of the ApprovalWorkflow
2200
+ attr_accessor :approval_mode
2201
+ # Optional description of the ApprovalWorkflow.
2202
+ attr_accessor :description
2203
+ # Unique identifier of the ApprovalWorkflow.
2204
+ attr_accessor :id
2205
+ # Unique human-readable name of the ApprovalWorkflow.
2206
+ attr_accessor :name
2207
+
2208
+ def initialize(
2209
+ approval_mode: nil,
2210
+ description: nil,
2211
+ id: nil,
2212
+ name: nil
2213
+ )
2214
+ @approval_mode = approval_mode == nil ? "" : approval_mode
2215
+ @description = description == nil ? "" : description
2216
+ @id = id == nil ? "" : id
2217
+ @name = name == nil ? "" : name
2218
+ end
2219
+
2220
+ def to_json(options = {})
2221
+ hash = {}
2222
+ self.instance_variables.each do |var|
2223
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2224
+ end
2225
+ hash.to_json
2226
+ end
2227
+ end
2228
+
2229
+ # ApprovalWorkflowApprover links an approval workflow approver to an ApprovalWorkflowStep
2230
+ class ApprovalWorkflowApprover
2231
+ # The approver account id.
2232
+ attr_accessor :account_id
2233
+ # The approval flow id specified the approval workflow that this approver belongs to
2234
+ attr_accessor :approval_flow_id
2235
+ # The approval step id specified the approval flow step that this approver belongs to
2236
+ attr_accessor :approval_step_id
2237
+ # Unique identifier of the ApprovalWorkflowApprover.
2238
+ attr_accessor :id
2239
+ # The approver role id
2240
+ attr_accessor :role_id
2241
+
2242
+ def initialize(
2243
+ account_id: nil,
2244
+ approval_flow_id: nil,
2245
+ approval_step_id: nil,
2246
+ id: nil,
2247
+ role_id: nil
2248
+ )
2249
+ @account_id = account_id == nil ? "" : account_id
2250
+ @approval_flow_id = approval_flow_id == nil ? "" : approval_flow_id
2251
+ @approval_step_id = approval_step_id == nil ? "" : approval_step_id
2252
+ @id = id == nil ? "" : id
2253
+ @role_id = role_id == nil ? "" : role_id
2254
+ end
2255
+
2256
+ def to_json(options = {})
2257
+ hash = {}
2258
+ self.instance_variables.each do |var|
2259
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2260
+ end
2261
+ hash.to_json
2262
+ end
2263
+ end
2264
+
2265
+ # ApprovalWorkflowApproverCreateResponse reports how the ApprovalWorkflowApprover was created in the system.
2266
+ class ApprovalWorkflowApproverCreateResponse
2267
+ # The created approval workflow approver.
2268
+ attr_accessor :approval_workflow_approver
2269
+ # Rate limit information.
2270
+ attr_accessor :rate_limit
2271
+
2272
+ def initialize(
2273
+ approval_workflow_approver: nil,
2274
+ rate_limit: nil
2275
+ )
2276
+ @approval_workflow_approver = approval_workflow_approver == nil ? nil : approval_workflow_approver
2277
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2278
+ end
2279
+
2280
+ def to_json(options = {})
2281
+ hash = {}
2282
+ self.instance_variables.each do |var|
2283
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2284
+ end
2285
+ hash.to_json
2286
+ end
2287
+ end
2288
+
2289
+ # ApprovalWorkflowApproverDeleteResponse returns information about an ApprovalWorkflowApprover that was deleted.
2290
+ class ApprovalWorkflowApproverDeleteResponse
2291
+ # The deleted approval workflow approver id.
2292
+ attr_accessor :id
2293
+ # Rate limit information.
2294
+ attr_accessor :rate_limit
2295
+
2296
+ def initialize(
2297
+ id: nil,
2298
+ rate_limit: nil
2299
+ )
2300
+ @id = id == nil ? "" : id
2301
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2302
+ end
2303
+
2304
+ def to_json(options = {})
2305
+ hash = {}
2306
+ self.instance_variables.each do |var|
2307
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2308
+ end
2309
+ hash.to_json
2310
+ end
2311
+ end
2312
+
2313
+ # ApprovalWorkflowApproverGetResponse returns a requested ApprovalWorkflowApprover.
2314
+ class ApprovalWorkflowApproverGetResponse
2315
+ # The requested ApprovalWorkflowApprover.
2316
+ attr_accessor :approval_workflow_approver
2317
+ # Reserved for future use.
2318
+ attr_accessor :meta
2319
+ # Rate limit information.
2320
+ attr_accessor :rate_limit
2321
+
2322
+ def initialize(
2323
+ approval_workflow_approver: nil,
2324
+ meta: nil,
2325
+ rate_limit: nil
2326
+ )
2327
+ @approval_workflow_approver = approval_workflow_approver == nil ? nil : approval_workflow_approver
2328
+ @meta = meta == nil ? nil : meta
2329
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2330
+ end
2331
+
2332
+ def to_json(options = {})
2333
+ hash = {}
2334
+ self.instance_variables.each do |var|
2335
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2336
+ end
2337
+ hash.to_json
2338
+ end
2339
+ end
2340
+
2341
+ # ApprovalWorkflowApproverHistory records the state of an ApprovalWorkflowApprover at a given point in time,
2342
+ # where every change (create or delete) to an ApprovalWorkflowApprover produces an
2343
+ # ApprovalWorkflowApproverHistory record.
2344
+ class ApprovalWorkflowApproverHistory
2345
+ # The unique identifier of the Activity that produced this change to the ApprovalWorkflowApprover.
2346
+ # May be empty for some system-initiated updates.
2347
+ attr_accessor :activity_id
2348
+ # The complete ApprovalWorkflowApprover state at this time.
2349
+ attr_accessor :approval_workflow_approver
2350
+ # If this ApprovalWorkflowApprover was deleted, the time it was deleted.
2351
+ attr_accessor :deleted_at
2352
+ # The time at which the ApprovalWorkflowApprover state was recorded.
2353
+ attr_accessor :timestamp
2354
+
2355
+ def initialize(
2356
+ activity_id: nil,
2357
+ approval_workflow_approver: nil,
2358
+ deleted_at: nil,
2359
+ timestamp: nil
2360
+ )
2361
+ @activity_id = activity_id == nil ? "" : activity_id
2362
+ @approval_workflow_approver = approval_workflow_approver == nil ? nil : approval_workflow_approver
2363
+ @deleted_at = deleted_at == nil ? nil : deleted_at
2364
+ @timestamp = timestamp == nil ? nil : timestamp
2365
+ end
2366
+
2367
+ def to_json(options = {})
2368
+ hash = {}
2369
+ self.instance_variables.each do |var|
2370
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2371
+ end
2372
+ hash.to_json
2373
+ end
2374
+ end
2375
+
2376
+ # ApprovalWorkflowApproverListResponse returns a list of ApprovalWorkflowApprover records that meet
2377
+ # the criteria of an ApprovalWorkflowApproverListRequest.
2378
+ class ApprovalWorkflowApproverListResponse
2379
+ # Rate limit information.
2380
+ attr_accessor :rate_limit
2381
+
2382
+ def initialize(
2383
+ rate_limit: nil
2384
+ )
2385
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2386
+ end
2387
+
2388
+ def to_json(options = {})
2389
+ hash = {}
2390
+ self.instance_variables.each do |var|
2391
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2392
+ end
2393
+ hash.to_json
2394
+ end
2395
+ end
2396
+
2397
+ # ApprovalWorkflowCreateResponse reports how the ApprovalWorkflow was created in the system.
2398
+ class ApprovalWorkflowCreateResponse
2399
+ # The created approval workflow.
2400
+ attr_accessor :approval_workflow
2401
+ # Rate limit information.
2402
+ attr_accessor :rate_limit
2403
+
2404
+ def initialize(
2405
+ approval_workflow: nil,
2406
+ rate_limit: nil
2407
+ )
2408
+ @approval_workflow = approval_workflow == nil ? nil : approval_workflow
2409
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2410
+ end
2411
+
2412
+ def to_json(options = {})
2413
+ hash = {}
2414
+ self.instance_variables.each do |var|
2415
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2416
+ end
2417
+ hash.to_json
2418
+ end
2419
+ end
2420
+
2421
+ # ApprovalWorkflowDeleteResponse returns information about an ApprovalWorkflow that was deleted.
2422
+ class ApprovalWorkflowDeleteResponse
2423
+ # The deleted approval workflow id.
2424
+ attr_accessor :id
2425
+ # Rate limit information.
2426
+ attr_accessor :rate_limit
2427
+
2428
+ def initialize(
2429
+ id: nil,
2430
+ rate_limit: nil
2431
+ )
2432
+ @id = id == nil ? "" : id
2433
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2434
+ end
2435
+
2436
+ def to_json(options = {})
2437
+ hash = {}
2438
+ self.instance_variables.each do |var|
2439
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2440
+ end
2441
+ hash.to_json
2442
+ end
2443
+ end
2444
+
2445
+ # ApprovalWorkflowGetResponse returns a requested ApprovalWorkflow.
2446
+ class ApprovalWorkflowGetResponse
2447
+ # The requested ApprovalWorkflow.
2448
+ attr_accessor :approval_workflow
2449
+ # Reserved for future use.
2450
+ attr_accessor :meta
2451
+ # Rate limit information.
2452
+ attr_accessor :rate_limit
2453
+
2454
+ def initialize(
2455
+ approval_workflow: nil,
2456
+ meta: nil,
2457
+ rate_limit: nil
2458
+ )
2459
+ @approval_workflow = approval_workflow == nil ? nil : approval_workflow
2460
+ @meta = meta == nil ? nil : meta
2461
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2462
+ end
2463
+
2464
+ def to_json(options = {})
2465
+ hash = {}
2466
+ self.instance_variables.each do |var|
2467
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2468
+ end
2469
+ hash.to_json
2470
+ end
2471
+ end
2472
+
2473
+ # ApprovalWorkflowHistory records the state of an ApprovalWorkflow at a given point in time,
2474
+ # where every change (create, update and delete) to an ApprovalWorkflow produces an
2475
+ # ApprovalWorkflowHistory record.
2476
+ class ApprovalWorkflowHistory
2477
+ # The unique identifier of the Activity that produced this change to the ApprovalWorkflow.
2478
+ # May be empty for some system-initiated updates.
2479
+ attr_accessor :activity_id
2480
+ # The complete ApprovalWorkflow state at this time.
2481
+ attr_accessor :approval_workflow
2482
+ # If this ApprovalWorkflow was deleted, the time it was deleted.
2483
+ attr_accessor :deleted_at
2484
+ # The time at which the ApprovalWorkflow state was recorded.
2485
+ attr_accessor :timestamp
2486
+
2487
+ def initialize(
2488
+ activity_id: nil,
2489
+ approval_workflow: nil,
2490
+ deleted_at: nil,
2491
+ timestamp: nil
2492
+ )
2493
+ @activity_id = activity_id == nil ? "" : activity_id
2494
+ @approval_workflow = approval_workflow == nil ? nil : approval_workflow
2495
+ @deleted_at = deleted_at == nil ? nil : deleted_at
2496
+ @timestamp = timestamp == nil ? nil : timestamp
2497
+ end
2498
+
2499
+ def to_json(options = {})
2500
+ hash = {}
2501
+ self.instance_variables.each do |var|
2502
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2503
+ end
2504
+ hash.to_json
2505
+ end
2506
+ end
2507
+
2508
+ # ApprovalWorkflowListResponse returns a list of ApprovalWorkflow records that meet
2509
+ # the criteria of an ApprovalWorkflowListRequest.
2510
+ class ApprovalWorkflowListResponse
2511
+ # Rate limit information.
2512
+ attr_accessor :rate_limit
2513
+
2514
+ def initialize(
2515
+ rate_limit: nil
2516
+ )
2517
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2518
+ end
2519
+
2520
+ def to_json(options = {})
2521
+ hash = {}
2522
+ self.instance_variables.each do |var|
2523
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2524
+ end
2525
+ hash.to_json
2526
+ end
2527
+ end
2528
+
2529
+ # ApprovalWorkflowStep links an approval workflow step to an ApprovalWorkflow
2530
+ class ApprovalWorkflowStep
2531
+ # The approval flow id specified the approval workfflow that this step belongs to
2532
+ attr_accessor :approval_flow_id
2533
+ # Unique identifier of the ApprovalWorkflowStep.
2534
+ attr_accessor :id
2535
+
2536
+ def initialize(
2537
+ approval_flow_id: nil,
2538
+ id: nil
2539
+ )
2540
+ @approval_flow_id = approval_flow_id == nil ? "" : approval_flow_id
2541
+ @id = id == nil ? "" : id
2542
+ end
2543
+
2544
+ def to_json(options = {})
2545
+ hash = {}
2546
+ self.instance_variables.each do |var|
2547
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2548
+ end
2549
+ hash.to_json
2550
+ end
2551
+ end
2552
+
2553
+ # ApprovalWorkflowStepCreateResponse reports how the ApprovalWorkflowStep was created in the system.
2554
+ class ApprovalWorkflowStepCreateResponse
2555
+ # The created approval workflow step.
2556
+ attr_accessor :approval_workflow_step
2557
+ # Rate limit information.
2558
+ attr_accessor :rate_limit
2559
+
2560
+ def initialize(
2561
+ approval_workflow_step: nil,
2562
+ rate_limit: nil
2563
+ )
2564
+ @approval_workflow_step = approval_workflow_step == nil ? nil : approval_workflow_step
2565
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2566
+ end
2567
+
2568
+ def to_json(options = {})
2569
+ hash = {}
2570
+ self.instance_variables.each do |var|
2571
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2572
+ end
2573
+ hash.to_json
2574
+ end
2575
+ end
2576
+
2577
+ # ApprovalWorkflowStepDeleteResponse returns information about an ApprovalWorkflowStep that was deleted.
2578
+ class ApprovalWorkflowStepDeleteResponse
2579
+ # The deleted approval workflow step id.
2580
+ attr_accessor :id
2581
+ # Rate limit information.
2582
+ attr_accessor :rate_limit
2583
+
2584
+ def initialize(
2585
+ id: nil,
2586
+ rate_limit: nil
2587
+ )
2588
+ @id = id == nil ? "" : id
2589
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2590
+ end
2591
+
2592
+ def to_json(options = {})
2593
+ hash = {}
2594
+ self.instance_variables.each do |var|
2595
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2596
+ end
2597
+ hash.to_json
2598
+ end
2599
+ end
2600
+
2601
+ # ApprovalWorkflowStepGetResponse returns a requested ApprovalWorkflowStep.
2602
+ class ApprovalWorkflowStepGetResponse
2603
+ # The requested ApprovalWorkflowStep.
2604
+ attr_accessor :approval_workflow_step
2605
+ # Reserved for future use.
2606
+ attr_accessor :meta
2607
+ # Rate limit information.
2608
+ attr_accessor :rate_limit
2609
+
2610
+ def initialize(
2611
+ approval_workflow_step: nil,
2612
+ meta: nil,
2613
+ rate_limit: nil
2614
+ )
2615
+ @approval_workflow_step = approval_workflow_step == nil ? nil : approval_workflow_step
2616
+ @meta = meta == nil ? nil : meta
2617
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2618
+ end
2619
+
2620
+ def to_json(options = {})
2621
+ hash = {}
2622
+ self.instance_variables.each do |var|
2623
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2624
+ end
2625
+ hash.to_json
2626
+ end
2627
+ end
2628
+
2629
+ # ApprovalWorkflowStepHistory records the state of an ApprovalWorkflowStep at a given point in time,
2630
+ # where every change (create or delete) to an ApprovalWorkflowStep produces an
2631
+ # ApprovalWorkflowStepHistory record.
2632
+ class ApprovalWorkflowStepHistory
2633
+ # The unique identifier of the Activity that produced this change to the ApprovalWorkflowStep.
2634
+ # May be empty for some system-initiated updates.
2635
+ attr_accessor :activity_id
2636
+ # The complete ApprovalWorkflowStep state at this time.
2637
+ attr_accessor :approval_workflow_step
2638
+ # If this ApprovalWorkflowStep was deleted, the time it was deleted.
2639
+ attr_accessor :deleted_at
2640
+ # The time at which the ApprovalWorkflowStep state was recorded.
2641
+ attr_accessor :timestamp
2642
+
2643
+ def initialize(
2644
+ activity_id: nil,
2645
+ approval_workflow_step: nil,
2646
+ deleted_at: nil,
2647
+ timestamp: nil
2648
+ )
2649
+ @activity_id = activity_id == nil ? "" : activity_id
2650
+ @approval_workflow_step = approval_workflow_step == nil ? nil : approval_workflow_step
2651
+ @deleted_at = deleted_at == nil ? nil : deleted_at
2652
+ @timestamp = timestamp == nil ? nil : timestamp
2653
+ end
2654
+
2655
+ def to_json(options = {})
2656
+ hash = {}
2657
+ self.instance_variables.each do |var|
2658
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2659
+ end
2660
+ hash.to_json
2661
+ end
2662
+ end
2663
+
2664
+ # ApprovalWorkflowStepListResponse returns a list of ApprovalWorkflowStep records that meet
2665
+ # the criteria of an ApprovalWorkflowStepListRequest.
2666
+ class ApprovalWorkflowStepListResponse
2667
+ # Rate limit information.
2668
+ attr_accessor :rate_limit
2669
+
2670
+ def initialize(
2671
+ rate_limit: nil
2672
+ )
2673
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2674
+ end
2675
+
2676
+ def to_json(options = {})
2677
+ hash = {}
2678
+ self.instance_variables.each do |var|
2679
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2680
+ end
2681
+ hash.to_json
2682
+ end
2683
+ end
2684
+
2685
+ # ApprovalWorkflowUpdateResponse returns the fields of an ApprovalWorkflow after it has been updated by
2686
+ # an ApprovalWorkflowUpdateRequest.
2687
+ class ApprovalWorkflowUpdateResponse
2688
+ # The updated approval workflow.
2689
+ attr_accessor :approval_workflow
2690
+ # Rate limit information.
2691
+ attr_accessor :rate_limit
2692
+
2693
+ def initialize(
2694
+ approval_workflow: nil,
2695
+ rate_limit: nil
2696
+ )
2697
+ @approval_workflow = approval_workflow == nil ? nil : approval_workflow
2698
+ @rate_limit = rate_limit == nil ? nil : rate_limit
2699
+ end
2700
+
2701
+ def to_json(options = {})
2702
+ hash = {}
2703
+ self.instance_variables.each do |var|
2704
+ hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
2705
+ end
2706
+ hash.to_json
2707
+ end
2708
+ end
2709
+
2196
2710
  class Athena
2197
2711
  # The Access Key ID to use to authenticate.
2198
2712
  attr_accessor :access_key
@@ -9995,9 +10509,9 @@ module SDM
9995
10509
  attr_accessor :last_name
9996
10510
  # Managed By is a read only field for what service manages this user, e.g. StrongDM, Okta, Azure.
9997
10511
  attr_accessor :managed_by
9998
- # PermissionLevel is a read only field for the user's permission level e.g. admin, DBA, user.
10512
+ # PermissionLevel is the user's permission level e.g. admin, DBA, user.
9999
10513
  attr_accessor :permission_level
10000
- # The User's suspended state.
10514
+ # Suspended is a read only field for the User's suspended state.
10001
10515
  attr_accessor :suspended
10002
10516
  # Tags is a map of key, value pairs.
10003
10517
  attr_accessor :tags
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 = "2021-08-23"
32
- USER_AGENT = "strongdm-sdk-ruby/6.8.0"
31
+ API_VERSION = "2024-03-14"
32
+ USER_AGENT = "strongdm-sdk-ruby/7.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.
@@ -68,6 +68,12 @@ module SDM #:nodoc:
68
68
  @accounts = Accounts.new(@channel, self)
69
69
  @accounts_history = AccountsHistory.new(@channel, self)
70
70
  @activities = Activities.new(@channel, self)
71
+ @approval_workflow_approvers = ApprovalWorkflowApprovers.new(@channel, self)
72
+ @approval_workflow_approvers_history = ApprovalWorkflowApproversHistory.new(@channel, self)
73
+ @approval_workflow_steps = ApprovalWorkflowSteps.new(@channel, self)
74
+ @approval_workflow_steps_history = ApprovalWorkflowStepsHistory.new(@channel, self)
75
+ @approval_workflows = ApprovalWorkflows.new(@channel, self)
76
+ @approval_workflows_history = ApprovalWorkflowsHistory.new(@channel, self)
71
77
  @control_panel = ControlPanel.new(@channel, self)
72
78
  @nodes = Nodes.new(@channel, self)
73
79
  @nodes_history = NodesHistory.new(@channel, self)
@@ -247,6 +253,31 @@ module SDM #:nodoc:
247
253
  #
248
254
  # See {Activities}.
249
255
  attr_reader :activities
256
+ # ApprovalWorkflowApprovers link approval workflow approvers to an ApprovalWorkflowStep
257
+ #
258
+ # See {ApprovalWorkflowApprovers}.
259
+ attr_reader :approval_workflow_approvers
260
+ # ApprovalWorkflowApproversHistory records all changes to the state of an ApprovalWorkflowApprover.
261
+ #
262
+ # See {ApprovalWorkflowApproversHistory}.
263
+ attr_reader :approval_workflow_approvers_history
264
+ # ApprovalWorkflowSteps link approval workflow steps to an ApprovalWorkflow
265
+ #
266
+ # See {ApprovalWorkflowSteps}.
267
+ attr_reader :approval_workflow_steps
268
+ # ApprovalWorkflowStepsHistory records all changes to the state of an ApprovalWorkflowStep.
269
+ #
270
+ # See {ApprovalWorkflowStepsHistory}.
271
+ attr_reader :approval_workflow_steps_history
272
+ # ApprovalWorkflows are the mechanism by which requests for access can be viewed by authorized
273
+ # approvers and be approved or denied.
274
+ #
275
+ # See {ApprovalWorkflows}.
276
+ attr_reader :approval_workflows
277
+ # ApprovalWorkflowsHistory records all changes to the state of an ApprovalWorkflow.
278
+ #
279
+ # See {ApprovalWorkflowsHistory}.
280
+ attr_reader :approval_workflows_history
250
281
  # ControlPanel contains all administrative controls.
251
282
  #
252
283
  # See {ControlPanel}.
@@ -406,6 +437,12 @@ module SDM #:nodoc:
406
437
  @accounts = Accounts.new(@channel, self)
407
438
  @accounts_history = AccountsHistory.new(@channel, self)
408
439
  @activities = Activities.new(@channel, self)
440
+ @approval_workflow_approvers = ApprovalWorkflowApprovers.new(@channel, self)
441
+ @approval_workflow_approvers_history = ApprovalWorkflowApproversHistory.new(@channel, self)
442
+ @approval_workflow_steps = ApprovalWorkflowSteps.new(@channel, self)
443
+ @approval_workflow_steps_history = ApprovalWorkflowStepsHistory.new(@channel, self)
444
+ @approval_workflows = ApprovalWorkflows.new(@channel, self)
445
+ @approval_workflows_history = ApprovalWorkflowsHistory.new(@channel, self)
409
446
  @control_panel = ControlPanel.new(@channel, self)
410
447
  @nodes = Nodes.new(@channel, self)
411
448
  @nodes_history = NodesHistory.new(@channel, self)
@@ -449,6 +486,9 @@ module SDM #:nodoc:
449
486
  @account_permissions = SnapshotAccountPermissions.new(client.account_permissions)
450
487
  @account_resources = SnapshotAccountResources.new(client.account_resources)
451
488
  @accounts = SnapshotAccounts.new(client.accounts)
489
+ @approval_workflow_approvers = SnapshotApprovalWorkflowApprovers.new(client.approval_workflow_approvers)
490
+ @approval_workflow_steps = SnapshotApprovalWorkflowSteps.new(client.approval_workflow_steps)
491
+ @approval_workflows = SnapshotApprovalWorkflows.new(client.approval_workflows)
452
492
  @nodes = SnapshotNodes.new(client.nodes)
453
493
  @remote_identities = SnapshotRemoteIdentities.new(client.remote_identities)
454
494
  @remote_identity_groups = SnapshotRemoteIdentityGroups.new(client.remote_identity_groups)
@@ -490,6 +530,19 @@ module SDM #:nodoc:
490
530
  #
491
531
  # See {SnapshotAccounts}.
492
532
  attr_reader :accounts
533
+ # ApprovalWorkflowApprovers link approval workflow approvers to an ApprovalWorkflowStep
534
+ #
535
+ # See {SnapshotApprovalWorkflowApprovers}.
536
+ attr_reader :approval_workflow_approvers
537
+ # ApprovalWorkflowSteps link approval workflow steps to an ApprovalWorkflow
538
+ #
539
+ # See {SnapshotApprovalWorkflowSteps}.
540
+ attr_reader :approval_workflow_steps
541
+ # ApprovalWorkflows are the mechanism by which requests for access can be viewed by authorized
542
+ # approvers and be approved or denied.
543
+ #
544
+ # See {SnapshotApprovalWorkflows}.
545
+ attr_reader :approval_workflows
493
546
  # Nodes make up the strongDM network, and allow your users to connect securely to your resources. There are two types of nodes:
494
547
  # - **Gateways** are the entry points into network. They listen for connection from the strongDM client, and provide access to databases and servers.
495
548
  # - **Relays** are used to extend the strongDM network into segmented subnets. They provide access to databases and servers but do not listen for incoming connections.