strongdm 6.8.0 → 6.9.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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
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/6.8.0"
32
+ USER_AGENT = "strongdm-sdk-ruby/6.9.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.