strongdm 14.25.0__zip → 15.0.0__zip
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.
- {strongdm-14.25.0 → strongdm-15.0.0}/PKG-INFO +2 -2
- {strongdm-14.25.0 → strongdm-15.0.0}/setup.py +2 -2
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/client.py +1 -25
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/models.py +0 -172
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/plumbing.py +0 -138
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/svc.py +0 -122
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm.egg-info/PKG-INFO +2 -2
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm.egg-info/SOURCES.txt +0 -4
- strongdm-14.25.0/strongdm/workflow_assignments_history_pb2.py +0 -100
- strongdm-14.25.0/strongdm/workflow_assignments_history_pb2_grpc.py +0 -84
- strongdm-14.25.0/strongdm/workflow_assignments_pb2.py +0 -94
- strongdm-14.25.0/strongdm/workflow_assignments_pb2_grpc.py +0 -87
- {strongdm-14.25.0 → strongdm-15.0.0}/LICENSE +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/README.md +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/setup.cfg +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/__init__.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/access_request_events_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/access_requests_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/access_requests_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/access_requests_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_attachments_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_attachments_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_grants_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_grants_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_grants_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_permissions_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_resources_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_resources_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/account_resources_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/accounts_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/accounts_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/accounts_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/activities_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/activities_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflows_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflows_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/constants.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/control_panel_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/control_panel_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/drivers_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/drivers_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/errors.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/health_checks_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/health_checks_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_aliases_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_aliases_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_sets_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_sets_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/managed_secrets_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/managed_secrets_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/nodes_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/nodes_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/nodes_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/options_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/options_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/organization_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/organization_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_group_nodes_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_group_peers_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_group_resources_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_groups_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/policies_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/policies_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/policies_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/policies_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/queries_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/queries_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identities_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identities_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identity_groups_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/replays_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/replays_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/resources_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/resources_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/resources_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/resources_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/role_resources_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/role_resources_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/role_resources_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/roles_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/roles_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/roles_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/roles_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_engine_policy_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_engine_types_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_engines_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_engines_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_store_healths_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_store_types_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_stores_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_stores_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/spec_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/spec_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/tags_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/tags_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_approvers_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_roles_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_roles_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflows_history_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflows_pb2.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm/workflows_pb2_grpc.py +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm.egg-info/dependency_links.txt +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm.egg-info/requires.txt +0 -0
- {strongdm-14.25.0 → strongdm-15.0.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -1,12 +1,12 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: strongdm
|
3
|
-
Version:
|
3
|
+
Version: 15.0.0
|
4
4
|
Summary: strongDM SDK for the Python programming language.
|
5
5
|
Home-page: https://github.com/strongdm/strongdm-sdk-python
|
6
6
|
Author: strongDM Team
|
7
7
|
Author-email: sdk-feedback@strongdm.com
|
8
8
|
License: apache-2.0
|
9
|
-
Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/
|
9
|
+
Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.0.0.tar.gz
|
10
10
|
Keywords: strongDM,sdm,api,automation,security,audit,database,server,ssh,rdp
|
11
11
|
Platform: UNKNOWN
|
12
12
|
Classifier: Development Status :: 4 - Beta
|
@@ -23,7 +23,7 @@ from setuptools import setup
|
|
23
23
|
setup(
|
24
24
|
name='strongdm',
|
25
25
|
packages=['strongdm'],
|
26
|
-
version='
|
26
|
+
version='15.0.0',
|
27
27
|
license='apache-2.0',
|
28
28
|
description='strongDM SDK for the Python programming language.',
|
29
29
|
long_description=long_description,
|
@@ -32,7 +32,7 @@ setup(
|
|
32
32
|
author_email='sdk-feedback@strongdm.com',
|
33
33
|
url='https://github.com/strongdm/strongdm-sdk-python',
|
34
34
|
download_url=
|
35
|
-
'https://github.com/strongdm/strongdm-sdk-python/archive/
|
35
|
+
'https://github.com/strongdm/strongdm-sdk-python/archive/v15.0.0.tar.gz',
|
36
36
|
keywords=[
|
37
37
|
'strongDM', 'sdm', 'api', 'automation', 'security', 'audit',
|
38
38
|
'database', 'server', 'ssh', 'rdp'
|
@@ -34,7 +34,7 @@ DEFAULT_MAX_RETRY_DELAY = 120 # 120 seconds
|
|
34
34
|
DEFAULT_RETRY_FACTOR = 1.6
|
35
35
|
DEFAULT_RETRY_JITTER = 0.2
|
36
36
|
API_VERSION = '2025-04-14'
|
37
|
-
USER_AGENT = 'strongdm-sdk-python/
|
37
|
+
USER_AGENT = 'strongdm-sdk-python/15.0.0'
|
38
38
|
|
39
39
|
|
40
40
|
class Client:
|
@@ -432,20 +432,6 @@ class Client:
|
|
432
432
|
|
433
433
|
See `strongdm.svc.WorkflowApproversHistory`.
|
434
434
|
'''
|
435
|
-
self.workflow_assignments = svc.WorkflowAssignments(channel, self)
|
436
|
-
'''
|
437
|
-
WorkflowAssignments links a Resource to a Workflow. The assigned resources are those that a user can request
|
438
|
-
access to via the workflow.
|
439
|
-
|
440
|
-
See `strongdm.svc.WorkflowAssignments`.
|
441
|
-
'''
|
442
|
-
self.workflow_assignments_history = svc.WorkflowAssignmentsHistory(
|
443
|
-
channel, self)
|
444
|
-
'''
|
445
|
-
WorkflowAssignmentsHistory provides records of all changes to the state of a WorkflowAssignment.
|
446
|
-
|
447
|
-
See `strongdm.svc.WorkflowAssignmentsHistory`.
|
448
|
-
'''
|
449
435
|
self.workflow_roles = svc.WorkflowRoles(channel, self)
|
450
436
|
'''
|
451
437
|
WorkflowRole links a role to a workflow. The linked roles indicate which roles a user must be a part of
|
@@ -591,8 +577,6 @@ class Client:
|
|
591
577
|
client.secret_stores = svc.SecretStores(client.channel, client)
|
592
578
|
client.workflow_approvers = svc.WorkflowApprovers(
|
593
579
|
client.channel, client)
|
594
|
-
client.workflow_assignments = svc.WorkflowAssignments(
|
595
|
-
client.channel, client)
|
596
580
|
client.workflow_roles = svc.WorkflowRoles(client.channel, client)
|
597
581
|
client.workflows = svc.Workflows(client.channel, client)
|
598
582
|
return SnapshotClient(client)
|
@@ -757,14 +741,6 @@ class SnapshotClient:
|
|
757
741
|
|
758
742
|
See `strongdm.svc.SnapshotWorkflowApprovers`.
|
759
743
|
'''
|
760
|
-
self.workflow_assignments = svc.SnapshotWorkflowAssignments(
|
761
|
-
client.workflow_assignments)
|
762
|
-
'''
|
763
|
-
WorkflowAssignments links a Resource to a Workflow. The assigned resources are those that a user can request
|
764
|
-
access to via the workflow.
|
765
|
-
|
766
|
-
See `strongdm.svc.SnapshotWorkflowAssignments`.
|
767
|
-
'''
|
768
744
|
self.workflow_roles = svc.SnapshotWorkflowRoles(client.workflow_roles)
|
769
745
|
'''
|
770
746
|
WorkflowRole links a role to a workflow. The linked roles indicate which roles a user must be a part of
|
@@ -31516,178 +31516,6 @@ class WorkflowApproversListResponse:
|
|
31516
31516
|
return cls(rate_limit=d.get('rate_limit'), )
|
31517
31517
|
|
31518
31518
|
|
31519
|
-
class WorkflowAssignment:
|
31520
|
-
'''
|
31521
|
-
WorkflowAssignment links a Resource to a Workflow. The assigned resources are those that a user can request
|
31522
|
-
access to via the workflow.
|
31523
|
-
'''
|
31524
|
-
__slots__ = [
|
31525
|
-
'resource_id',
|
31526
|
-
'workflow_id',
|
31527
|
-
]
|
31528
|
-
|
31529
|
-
def __init__(
|
31530
|
-
self,
|
31531
|
-
resource_id=None,
|
31532
|
-
workflow_id=None,
|
31533
|
-
):
|
31534
|
-
self.resource_id = resource_id if resource_id is not None else ''
|
31535
|
-
'''
|
31536
|
-
The resource id.
|
31537
|
-
'''
|
31538
|
-
self.workflow_id = workflow_id if workflow_id is not None else ''
|
31539
|
-
'''
|
31540
|
-
The workflow id.
|
31541
|
-
'''
|
31542
|
-
|
31543
|
-
def __repr__(self):
|
31544
|
-
return '<sdm.WorkflowAssignment ' + \
|
31545
|
-
'resource_id: ' + repr(self.resource_id) + ' ' +\
|
31546
|
-
'workflow_id: ' + repr(self.workflow_id) + ' ' +\
|
31547
|
-
'>'
|
31548
|
-
|
31549
|
-
def to_dict(self):
|
31550
|
-
return {
|
31551
|
-
'resource_id': self.resource_id,
|
31552
|
-
'workflow_id': self.workflow_id,
|
31553
|
-
}
|
31554
|
-
|
31555
|
-
@classmethod
|
31556
|
-
def from_dict(cls, d):
|
31557
|
-
return cls(
|
31558
|
-
resource_id=d.get('resource_id'),
|
31559
|
-
workflow_id=d.get('workflow_id'),
|
31560
|
-
)
|
31561
|
-
|
31562
|
-
|
31563
|
-
class WorkflowAssignmentHistory:
|
31564
|
-
'''
|
31565
|
-
WorkflowAssignmentsHistory provides records of all changes to the state of a WorkflowAssignment.
|
31566
|
-
'''
|
31567
|
-
__slots__ = [
|
31568
|
-
'activity_id',
|
31569
|
-
'deleted_at',
|
31570
|
-
'timestamp',
|
31571
|
-
'workflow_assignment',
|
31572
|
-
]
|
31573
|
-
|
31574
|
-
def __init__(
|
31575
|
-
self,
|
31576
|
-
activity_id=None,
|
31577
|
-
deleted_at=None,
|
31578
|
-
timestamp=None,
|
31579
|
-
workflow_assignment=None,
|
31580
|
-
):
|
31581
|
-
self.activity_id = activity_id if activity_id is not None else ''
|
31582
|
-
'''
|
31583
|
-
The unique identifier of the Activity that produced this change to the WorkflowAssignment.
|
31584
|
-
May be empty for some system-initiated updates.
|
31585
|
-
'''
|
31586
|
-
self.deleted_at = deleted_at if deleted_at is not None else None
|
31587
|
-
'''
|
31588
|
-
If this WorkflowAssignment was deleted, the time it was deleted.
|
31589
|
-
'''
|
31590
|
-
self.timestamp = timestamp if timestamp is not None else None
|
31591
|
-
'''
|
31592
|
-
The time at which the WorkflowAssignment state was recorded.
|
31593
|
-
'''
|
31594
|
-
self.workflow_assignment = workflow_assignment if workflow_assignment is not None else None
|
31595
|
-
'''
|
31596
|
-
The complete WorkflowAssignment state at this time.
|
31597
|
-
'''
|
31598
|
-
|
31599
|
-
def __repr__(self):
|
31600
|
-
return '<sdm.WorkflowAssignmentHistory ' + \
|
31601
|
-
'activity_id: ' + repr(self.activity_id) + ' ' +\
|
31602
|
-
'deleted_at: ' + repr(self.deleted_at) + ' ' +\
|
31603
|
-
'timestamp: ' + repr(self.timestamp) + ' ' +\
|
31604
|
-
'workflow_assignment: ' + repr(self.workflow_assignment) + ' ' +\
|
31605
|
-
'>'
|
31606
|
-
|
31607
|
-
def to_dict(self):
|
31608
|
-
return {
|
31609
|
-
'activity_id': self.activity_id,
|
31610
|
-
'deleted_at': self.deleted_at,
|
31611
|
-
'timestamp': self.timestamp,
|
31612
|
-
'workflow_assignment': self.workflow_assignment,
|
31613
|
-
}
|
31614
|
-
|
31615
|
-
@classmethod
|
31616
|
-
def from_dict(cls, d):
|
31617
|
-
return cls(
|
31618
|
-
activity_id=d.get('activity_id'),
|
31619
|
-
deleted_at=d.get('deleted_at'),
|
31620
|
-
timestamp=d.get('timestamp'),
|
31621
|
-
workflow_assignment=d.get('workflow_assignment'),
|
31622
|
-
)
|
31623
|
-
|
31624
|
-
|
31625
|
-
class WorkflowAssignmentsListRequest:
|
31626
|
-
'''
|
31627
|
-
WorkflowAssignmentsListRequest specifies criteria for retrieving a list of
|
31628
|
-
WorkflowAssignment records
|
31629
|
-
'''
|
31630
|
-
__slots__ = [
|
31631
|
-
'filter',
|
31632
|
-
]
|
31633
|
-
|
31634
|
-
def __init__(
|
31635
|
-
self,
|
31636
|
-
filter=None,
|
31637
|
-
):
|
31638
|
-
self.filter = filter if filter is not None else ''
|
31639
|
-
'''
|
31640
|
-
A human-readable filter query string.
|
31641
|
-
'''
|
31642
|
-
|
31643
|
-
def __repr__(self):
|
31644
|
-
return '<sdm.WorkflowAssignmentsListRequest ' + \
|
31645
|
-
'filter: ' + repr(self.filter) + ' ' +\
|
31646
|
-
'>'
|
31647
|
-
|
31648
|
-
def to_dict(self):
|
31649
|
-
return {
|
31650
|
-
'filter': self.filter,
|
31651
|
-
}
|
31652
|
-
|
31653
|
-
@classmethod
|
31654
|
-
def from_dict(cls, d):
|
31655
|
-
return cls(filter=d.get('filter'), )
|
31656
|
-
|
31657
|
-
|
31658
|
-
class WorkflowAssignmentsListResponse:
|
31659
|
-
'''
|
31660
|
-
WorkflowAssignmentsListResponse returns a list of WorkflowAssignment records that meet
|
31661
|
-
the criteria of a WorkflowAssignmentsListRequest.
|
31662
|
-
'''
|
31663
|
-
__slots__ = [
|
31664
|
-
'rate_limit',
|
31665
|
-
]
|
31666
|
-
|
31667
|
-
def __init__(
|
31668
|
-
self,
|
31669
|
-
rate_limit=None,
|
31670
|
-
):
|
31671
|
-
self.rate_limit = rate_limit if rate_limit is not None else None
|
31672
|
-
'''
|
31673
|
-
Rate limit information.
|
31674
|
-
'''
|
31675
|
-
|
31676
|
-
def __repr__(self):
|
31677
|
-
return '<sdm.WorkflowAssignmentsListResponse ' + \
|
31678
|
-
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
31679
|
-
'>'
|
31680
|
-
|
31681
|
-
def to_dict(self):
|
31682
|
-
return {
|
31683
|
-
'rate_limit': self.rate_limit,
|
31684
|
-
}
|
31685
|
-
|
31686
|
-
@classmethod
|
31687
|
-
def from_dict(cls, d):
|
31688
|
-
return cls(rate_limit=d.get('rate_limit'), )
|
31689
|
-
|
31690
|
-
|
31691
31519
|
class WorkflowCreateResponse:
|
31692
31520
|
'''
|
31693
31521
|
WorkflowCreateResponse reports how the Workflow was created in the system.
|
@@ -85,8 +85,6 @@ from .secret_store_healths_pb2 import *
|
|
85
85
|
from .secret_stores_history_pb2 import *
|
86
86
|
from .workflow_approvers_pb2 import *
|
87
87
|
from .workflow_approvers_history_pb2 import *
|
88
|
-
from .workflow_assignments_pb2 import *
|
89
|
-
from .workflow_assignments_history_pb2 import *
|
90
88
|
from .workflow_roles_pb2 import *
|
91
89
|
from .workflow_roles_history_pb2 import *
|
92
90
|
from .workflows_pb2 import *
|
@@ -15980,142 +15978,6 @@ def convert_repeated_workflow_approvers_list_response_to_porcelain(plumbings):
|
|
15980
15978
|
]
|
15981
15979
|
|
15982
15980
|
|
15983
|
-
def convert_workflow_assignment_to_porcelain(plumbing):
|
15984
|
-
if plumbing is None:
|
15985
|
-
return None
|
15986
|
-
porcelain = models.WorkflowAssignment()
|
15987
|
-
porcelain.resource_id = (plumbing.resource_id)
|
15988
|
-
porcelain.workflow_id = (plumbing.workflow_id)
|
15989
|
-
return porcelain
|
15990
|
-
|
15991
|
-
|
15992
|
-
def convert_workflow_assignment_to_plumbing(porcelain):
|
15993
|
-
plumbing = WorkflowAssignment()
|
15994
|
-
if porcelain is None:
|
15995
|
-
return plumbing
|
15996
|
-
plumbing.resource_id = (porcelain.resource_id)
|
15997
|
-
plumbing.workflow_id = (porcelain.workflow_id)
|
15998
|
-
return plumbing
|
15999
|
-
|
16000
|
-
|
16001
|
-
def convert_repeated_workflow_assignment_to_plumbing(porcelains):
|
16002
|
-
return [
|
16003
|
-
convert_workflow_assignment_to_plumbing(porcelain)
|
16004
|
-
for porcelain in porcelains
|
16005
|
-
]
|
16006
|
-
|
16007
|
-
|
16008
|
-
def convert_repeated_workflow_assignment_to_porcelain(plumbings):
|
16009
|
-
return [
|
16010
|
-
convert_workflow_assignment_to_porcelain(plumbing)
|
16011
|
-
for plumbing in plumbings
|
16012
|
-
]
|
16013
|
-
|
16014
|
-
|
16015
|
-
def convert_workflow_assignment_history_to_porcelain(plumbing):
|
16016
|
-
if plumbing is None:
|
16017
|
-
return None
|
16018
|
-
porcelain = models.WorkflowAssignmentHistory()
|
16019
|
-
porcelain.activity_id = (plumbing.activity_id)
|
16020
|
-
porcelain.deleted_at = convert_timestamp_to_porcelain(plumbing.deleted_at)
|
16021
|
-
porcelain.timestamp = convert_timestamp_to_porcelain(plumbing.timestamp)
|
16022
|
-
porcelain.workflow_assignment = convert_workflow_assignment_to_porcelain(
|
16023
|
-
plumbing.workflow_assignment)
|
16024
|
-
return porcelain
|
16025
|
-
|
16026
|
-
|
16027
|
-
def convert_workflow_assignment_history_to_plumbing(porcelain):
|
16028
|
-
plumbing = WorkflowAssignmentHistory()
|
16029
|
-
if porcelain is None:
|
16030
|
-
return plumbing
|
16031
|
-
plumbing.activity_id = (porcelain.activity_id)
|
16032
|
-
plumbing.deleted_at.CopyFrom(
|
16033
|
-
convert_timestamp_to_plumbing(porcelain.deleted_at))
|
16034
|
-
plumbing.timestamp.CopyFrom(
|
16035
|
-
convert_timestamp_to_plumbing(porcelain.timestamp))
|
16036
|
-
plumbing.workflow_assignment.CopyFrom(
|
16037
|
-
convert_workflow_assignment_to_plumbing(porcelain.workflow_assignment))
|
16038
|
-
return plumbing
|
16039
|
-
|
16040
|
-
|
16041
|
-
def convert_repeated_workflow_assignment_history_to_plumbing(porcelains):
|
16042
|
-
return [
|
16043
|
-
convert_workflow_assignment_history_to_plumbing(porcelain)
|
16044
|
-
for porcelain in porcelains
|
16045
|
-
]
|
16046
|
-
|
16047
|
-
|
16048
|
-
def convert_repeated_workflow_assignment_history_to_porcelain(plumbings):
|
16049
|
-
return [
|
16050
|
-
convert_workflow_assignment_history_to_porcelain(plumbing)
|
16051
|
-
for plumbing in plumbings
|
16052
|
-
]
|
16053
|
-
|
16054
|
-
|
16055
|
-
def convert_workflow_assignments_list_request_to_porcelain(plumbing):
|
16056
|
-
if plumbing is None:
|
16057
|
-
return None
|
16058
|
-
porcelain = models.WorkflowAssignmentsListRequest()
|
16059
|
-
porcelain.filter = (plumbing.filter)
|
16060
|
-
return porcelain
|
16061
|
-
|
16062
|
-
|
16063
|
-
def convert_workflow_assignments_list_request_to_plumbing(porcelain):
|
16064
|
-
plumbing = WorkflowAssignmentsListRequest()
|
16065
|
-
if porcelain is None:
|
16066
|
-
return plumbing
|
16067
|
-
plumbing.filter = (porcelain.filter)
|
16068
|
-
return plumbing
|
16069
|
-
|
16070
|
-
|
16071
|
-
def convert_repeated_workflow_assignments_list_request_to_plumbing(porcelains):
|
16072
|
-
return [
|
16073
|
-
convert_workflow_assignments_list_request_to_plumbing(porcelain)
|
16074
|
-
for porcelain in porcelains
|
16075
|
-
]
|
16076
|
-
|
16077
|
-
|
16078
|
-
def convert_repeated_workflow_assignments_list_request_to_porcelain(plumbings):
|
16079
|
-
return [
|
16080
|
-
convert_workflow_assignments_list_request_to_porcelain(plumbing)
|
16081
|
-
for plumbing in plumbings
|
16082
|
-
]
|
16083
|
-
|
16084
|
-
|
16085
|
-
def convert_workflow_assignments_list_response_to_porcelain(plumbing):
|
16086
|
-
if plumbing is None:
|
16087
|
-
return None
|
16088
|
-
porcelain = models.WorkflowAssignmentsListResponse()
|
16089
|
-
porcelain.rate_limit = convert_rate_limit_metadata_to_porcelain(
|
16090
|
-
plumbing.rate_limit)
|
16091
|
-
return porcelain
|
16092
|
-
|
16093
|
-
|
16094
|
-
def convert_workflow_assignments_list_response_to_plumbing(porcelain):
|
16095
|
-
plumbing = WorkflowAssignmentsListResponse()
|
16096
|
-
if porcelain is None:
|
16097
|
-
return plumbing
|
16098
|
-
plumbing.rate_limit.CopyFrom(
|
16099
|
-
convert_rate_limit_metadata_to_plumbing(porcelain.rate_limit))
|
16100
|
-
return plumbing
|
16101
|
-
|
16102
|
-
|
16103
|
-
def convert_repeated_workflow_assignments_list_response_to_plumbing(
|
16104
|
-
porcelains):
|
16105
|
-
return [
|
16106
|
-
convert_workflow_assignments_list_response_to_plumbing(porcelain)
|
16107
|
-
for porcelain in porcelains
|
16108
|
-
]
|
16109
|
-
|
16110
|
-
|
16111
|
-
def convert_repeated_workflow_assignments_list_response_to_porcelain(
|
16112
|
-
plumbings):
|
16113
|
-
return [
|
16114
|
-
convert_workflow_assignments_list_response_to_porcelain(plumbing)
|
16115
|
-
for plumbing in plumbings
|
16116
|
-
]
|
16117
|
-
|
16118
|
-
|
16119
15981
|
def convert_workflow_create_response_to_porcelain(plumbing):
|
16120
15982
|
if plumbing is None:
|
16121
15983
|
return None
|
@@ -140,10 +140,6 @@ from .workflow_approvers_pb2 import *
|
|
140
140
|
from .workflow_approvers_pb2_grpc import *
|
141
141
|
from .workflow_approvers_history_pb2 import *
|
142
142
|
from .workflow_approvers_history_pb2_grpc import *
|
143
|
-
from .workflow_assignments_pb2 import *
|
144
|
-
from .workflow_assignments_pb2_grpc import *
|
145
|
-
from .workflow_assignments_history_pb2 import *
|
146
|
-
from .workflow_assignments_history_pb2_grpc import *
|
147
143
|
from .workflow_roles_pb2 import *
|
148
144
|
from .workflow_roles_pb2_grpc import *
|
149
145
|
from .workflow_roles_history_pb2 import *
|
@@ -6841,124 +6837,6 @@ class WorkflowApproversHistory:
|
|
6841
6837
|
return generator(self, req)
|
6842
6838
|
|
6843
6839
|
|
6844
|
-
class WorkflowAssignments:
|
6845
|
-
'''
|
6846
|
-
WorkflowAssignments links a Resource to a Workflow. The assigned resources are those that a user can request
|
6847
|
-
access to via the workflow.
|
6848
|
-
See `strongdm.models.WorkflowAssignment`.
|
6849
|
-
'''
|
6850
|
-
def __init__(self, channel, client):
|
6851
|
-
self.parent = client
|
6852
|
-
self.stub = WorkflowAssignmentsStub(channel)
|
6853
|
-
|
6854
|
-
def list(self, filter, *args, timeout=None):
|
6855
|
-
'''
|
6856
|
-
Lists existing workflow assignments.
|
6857
|
-
'''
|
6858
|
-
deadline = None if timeout is None else time.time() + timeout
|
6859
|
-
req = WorkflowAssignmentsListRequest()
|
6860
|
-
req.meta.CopyFrom(ListRequestMetadata())
|
6861
|
-
if self.parent.page_limit > 0:
|
6862
|
-
req.meta.limit = self.parent.page_limit
|
6863
|
-
if self.parent.snapshot_datetime is not None:
|
6864
|
-
req.meta.snapshot_at.FromDatetime(self.parent.snapshot_datetime)
|
6865
|
-
|
6866
|
-
req.filter = plumbing.quote_filter_args(filter, *args)
|
6867
|
-
|
6868
|
-
def generator(svc, req):
|
6869
|
-
tries = 0
|
6870
|
-
while True:
|
6871
|
-
t = None if deadline is None else deadline - time.time()
|
6872
|
-
try:
|
6873
|
-
plumbing_response = svc.stub.List(
|
6874
|
-
req,
|
6875
|
-
metadata=svc.parent.get_metadata(
|
6876
|
-
'WorkflowAssignments.List', req),
|
6877
|
-
timeout=t)
|
6878
|
-
except Exception as e:
|
6879
|
-
if self.parent.shouldRetry(tries, e, deadline):
|
6880
|
-
tries += 1
|
6881
|
-
time.sleep(
|
6882
|
-
self.parent.exponentialBackoff(tries, deadline))
|
6883
|
-
continue
|
6884
|
-
raise plumbing.convert_error_to_porcelain(e) from e
|
6885
|
-
tries = 0
|
6886
|
-
for plumbing_item in plumbing_response.workflow_assignments:
|
6887
|
-
yield plumbing.convert_workflow_assignment_to_porcelain(
|
6888
|
-
plumbing_item)
|
6889
|
-
if plumbing_response.meta.next_cursor == '':
|
6890
|
-
break
|
6891
|
-
req.meta.cursor = plumbing_response.meta.next_cursor
|
6892
|
-
|
6893
|
-
return generator(self, req)
|
6894
|
-
|
6895
|
-
|
6896
|
-
class SnapshotWorkflowAssignments:
|
6897
|
-
'''
|
6898
|
-
SnapshotWorkflowAssignments exposes the read only methods of the WorkflowAssignments
|
6899
|
-
service for historical queries.
|
6900
|
-
'''
|
6901
|
-
def __init__(self, workflow_assignments):
|
6902
|
-
self.workflow_assignments = workflow_assignments
|
6903
|
-
|
6904
|
-
def list(self, filter, *args, timeout=None):
|
6905
|
-
'''
|
6906
|
-
Lists existing workflow assignments.
|
6907
|
-
'''
|
6908
|
-
return self.workflow_assignments.list(filter, *args, timeout=timeout)
|
6909
|
-
|
6910
|
-
|
6911
|
-
class WorkflowAssignmentsHistory:
|
6912
|
-
'''
|
6913
|
-
WorkflowAssignmentsHistory provides records of all changes to the state of a WorkflowAssignment.
|
6914
|
-
See `strongdm.models.WorkflowAssignmentHistory`.
|
6915
|
-
'''
|
6916
|
-
def __init__(self, channel, client):
|
6917
|
-
self.parent = client
|
6918
|
-
self.stub = WorkflowAssignmentsHistoryStub(channel)
|
6919
|
-
|
6920
|
-
def list(self, filter, *args, timeout=None):
|
6921
|
-
'''
|
6922
|
-
List gets a list of WorkflowAssignmentsHistory records matching a given set of criteria.
|
6923
|
-
'''
|
6924
|
-
deadline = None if timeout is None else time.time() + timeout
|
6925
|
-
req = WorkflowAssignmentsHistoryListRequest()
|
6926
|
-
req.meta.CopyFrom(ListRequestMetadata())
|
6927
|
-
if self.parent.page_limit > 0:
|
6928
|
-
req.meta.limit = self.parent.page_limit
|
6929
|
-
if self.parent.snapshot_datetime is not None:
|
6930
|
-
req.meta.snapshot_at.FromDatetime(self.parent.snapshot_datetime)
|
6931
|
-
|
6932
|
-
req.filter = plumbing.quote_filter_args(filter, *args)
|
6933
|
-
|
6934
|
-
def generator(svc, req):
|
6935
|
-
tries = 0
|
6936
|
-
while True:
|
6937
|
-
t = None if deadline is None else deadline - time.time()
|
6938
|
-
try:
|
6939
|
-
plumbing_response = svc.stub.List(
|
6940
|
-
req,
|
6941
|
-
metadata=svc.parent.get_metadata(
|
6942
|
-
'WorkflowAssignmentsHistory.List', req),
|
6943
|
-
timeout=t)
|
6944
|
-
except Exception as e:
|
6945
|
-
if self.parent.shouldRetry(tries, e, deadline):
|
6946
|
-
tries += 1
|
6947
|
-
time.sleep(
|
6948
|
-
self.parent.exponentialBackoff(tries, deadline))
|
6949
|
-
continue
|
6950
|
-
raise plumbing.convert_error_to_porcelain(e) from e
|
6951
|
-
tries = 0
|
6952
|
-
for plumbing_item in plumbing_response.history:
|
6953
|
-
yield plumbing.convert_workflow_assignment_history_to_porcelain(
|
6954
|
-
plumbing_item)
|
6955
|
-
if plumbing_response.meta.next_cursor == '':
|
6956
|
-
break
|
6957
|
-
req.meta.cursor = plumbing_response.meta.next_cursor
|
6958
|
-
|
6959
|
-
return generator(self, req)
|
6960
|
-
|
6961
|
-
|
6962
6840
|
class WorkflowRoles:
|
6963
6841
|
'''
|
6964
6842
|
WorkflowRole links a role to a workflow. The linked roles indicate which roles a user must be a part of
|
@@ -1,12 +1,12 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: strongdm
|
3
|
-
Version:
|
3
|
+
Version: 15.0.0
|
4
4
|
Summary: strongDM SDK for the Python programming language.
|
5
5
|
Home-page: https://github.com/strongdm/strongdm-sdk-python
|
6
6
|
Author: strongDM Team
|
7
7
|
Author-email: sdk-feedback@strongdm.com
|
8
8
|
License: apache-2.0
|
9
|
-
Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/
|
9
|
+
Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.0.0.tar.gz
|
10
10
|
Keywords: strongDM,sdm,api,automation,security,audit,database,server,ssh,rdp
|
11
11
|
Platform: UNKNOWN
|
12
12
|
Classifier: Development Status :: 4 - Beta
|
@@ -130,10 +130,6 @@ strongdm/workflow_approvers_history_pb2.py
|
|
130
130
|
strongdm/workflow_approvers_history_pb2_grpc.py
|
131
131
|
strongdm/workflow_approvers_pb2.py
|
132
132
|
strongdm/workflow_approvers_pb2_grpc.py
|
133
|
-
strongdm/workflow_assignments_history_pb2.py
|
134
|
-
strongdm/workflow_assignments_history_pb2_grpc.py
|
135
|
-
strongdm/workflow_assignments_pb2.py
|
136
|
-
strongdm/workflow_assignments_pb2_grpc.py
|
137
133
|
strongdm/workflow_roles_history_pb2.py
|
138
134
|
strongdm/workflow_roles_history_pb2_grpc.py
|
139
135
|
strongdm/workflow_roles_pb2.py
|