strongdm 5.0.3__zip → 6.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-6.0.0/LICENSE +201 -0
- strongdm-6.0.0/PKG-INFO +97 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/setup.py +2 -2
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/client.py +3 -3
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/constants.py +7 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/drivers_pb2.py +134 -134
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/models.py +17 -16
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/nodes_pb2.py +68 -31
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/plumbing.py +4 -2
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/svc.py +1 -1
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_approvers_pb2.py +8 -6
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_approvers_pb2_grpc.py +3 -3
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflows_pb2.py +5 -5
- strongdm-6.0.0/strongdm.egg-info/PKG-INFO +97 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm.egg-info/SOURCES.txt +1 -0
- strongdm-5.0.3/PKG-INFO +0 -94
- strongdm-5.0.3/strongdm.egg-info/PKG-INFO +0 -94
- {strongdm-5.0.3 → strongdm-6.0.0}/README.md +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/setup.cfg +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/__init__.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/access_request_events_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/access_requests_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/access_requests_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/access_requests_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_attachments_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_attachments_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_grants_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_grants_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_grants_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_permissions_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_resources_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_resources_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/account_resources_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/accounts_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/accounts_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/accounts_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/activities_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/activities_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/control_panel_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/control_panel_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/drivers_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/errors.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/nodes_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/nodes_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/options_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/options_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/organization_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/organization_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_group_nodes_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_group_peers_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_group_resources_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_groups_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/queries_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/queries_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identities_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identities_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identity_groups_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/replays_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/replays_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/resources_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/resources_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/resources_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/resources_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/role_resources_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/role_resources_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/role_resources_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/roles_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/roles_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/roles_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/roles_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/secret_store_types_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/secret_stores_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/secret_stores_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/spec_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/spec_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/tags_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/tags_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_assignments_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_assignments_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_assignments_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_assignments_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_roles_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_roles_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflows_history_pb2.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm/workflows_pb2_grpc.py +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm.egg-info/dependency_links.txt +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm.egg-info/requires.txt +0 -0
- {strongdm-5.0.3 → strongdm-6.0.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -4679,10 +4679,6 @@ class AuroraPostgres:
|
|
4679
4679
|
|
4680
4680
|
|
4681
4681
|
class AuroraPostgresIAM:
|
4682
|
-
'''
|
4683
|
-
AuroraPostgresIAM is currently unstable, and its API may change, or it may be removed,
|
4684
|
-
without a major version bump.
|
4685
|
-
'''
|
4686
4682
|
__slots__ = [
|
4687
4683
|
'bind_interface',
|
4688
4684
|
'database',
|
@@ -14617,10 +14613,6 @@ class RDP:
|
|
14617
14613
|
|
14618
14614
|
|
14619
14615
|
class RDSPostgresIAM:
|
14620
|
-
'''
|
14621
|
-
RDSPostgresIAM is currently unstable, and its API may change, or it may be removed,
|
14622
|
-
without a major version bump.
|
14623
|
-
'''
|
14624
14616
|
__slots__ = [
|
14625
14617
|
'bind_interface',
|
14626
14618
|
'database',
|
@@ -19822,28 +19814,34 @@ class Workflow:
|
|
19822
19814
|
|
19823
19815
|
class WorkflowApprover:
|
19824
19816
|
'''
|
19825
|
-
WorkflowApprover is an account with the ability to approve requests bound to a workflow.
|
19817
|
+
WorkflowApprover is an account or a role with the ability to approve requests bound to a workflow.
|
19826
19818
|
'''
|
19827
19819
|
__slots__ = [
|
19828
|
-
'
|
19820
|
+
'account_id',
|
19829
19821
|
'id',
|
19822
|
+
'role_id',
|
19830
19823
|
'workflow_id',
|
19831
19824
|
]
|
19832
19825
|
|
19833
19826
|
def __init__(
|
19834
19827
|
self,
|
19835
|
-
|
19828
|
+
account_id=None,
|
19836
19829
|
id=None,
|
19830
|
+
role_id=None,
|
19837
19831
|
workflow_id=None,
|
19838
19832
|
):
|
19839
|
-
self.
|
19833
|
+
self.account_id = account_id if account_id is not None else ''
|
19840
19834
|
'''
|
19841
|
-
The approver id.
|
19835
|
+
The approver account id.
|
19842
19836
|
'''
|
19843
19837
|
self.id = id if id is not None else ''
|
19844
19838
|
'''
|
19845
19839
|
Unique identifier of the WorkflowApprover.
|
19846
19840
|
'''
|
19841
|
+
self.role_id = role_id if role_id is not None else ''
|
19842
|
+
'''
|
19843
|
+
The approver role id
|
19844
|
+
'''
|
19847
19845
|
self.workflow_id = workflow_id if workflow_id is not None else ''
|
19848
19846
|
'''
|
19849
19847
|
The workflow id.
|
@@ -19851,23 +19849,26 @@ class WorkflowApprover:
|
|
19851
19849
|
|
19852
19850
|
def __repr__(self):
|
19853
19851
|
return '<sdm.WorkflowApprover ' + \
|
19854
|
-
'
|
19852
|
+
'account_id: ' + repr(self.account_id) + ' ' +\
|
19855
19853
|
'id: ' + repr(self.id) + ' ' +\
|
19854
|
+
'role_id: ' + repr(self.role_id) + ' ' +\
|
19856
19855
|
'workflow_id: ' + repr(self.workflow_id) + ' ' +\
|
19857
19856
|
'>'
|
19858
19857
|
|
19859
19858
|
def to_dict(self):
|
19860
19859
|
return {
|
19861
|
-
'
|
19860
|
+
'account_id': self.account_id,
|
19862
19861
|
'id': self.id,
|
19862
|
+
'role_id': self.role_id,
|
19863
19863
|
'workflow_id': self.workflow_id,
|
19864
19864
|
}
|
19865
19865
|
|
19866
19866
|
@classmethod
|
19867
19867
|
def from_dict(cls, d):
|
19868
19868
|
return cls(
|
19869
|
-
|
19869
|
+
account_id=d.get('account_id'),
|
19870
19870
|
id=d.get('id'),
|
19871
|
+
role_id=d.get('role_id'),
|
19871
19872
|
workflow_id=d.get('workflow_id'),
|
19872
19873
|
)
|
19873
19874
|
|
@@ -26,12 +26,13 @@ from google.protobuf import symbol_database as _symbol_database
|
|
26
26
|
_sym_db = _symbol_database.Default()
|
27
27
|
|
28
28
|
|
29
|
+
from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
|
29
30
|
from . import options_pb2 as options__pb2
|
30
31
|
from . import spec_pb2 as spec__pb2
|
31
32
|
from . import tags_pb2 as tags__pb2
|
32
33
|
|
33
34
|
|
34
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0bnodes.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\x1a\ntags.proto\"`\n\x11NodeCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xf3\x01\n\x12NodeCreateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\x05token\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xf0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x04 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"N\n\x0eNodeGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xcd\x01\n\x0fNodeGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"l\n\x11NodeUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\n\n\x02id\x18\x02 \x01(\t\x12\"\n\x04node\x18\x03 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd3\x01\n\x12NodeUpdateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"T\n\x11NodeDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xaf\x01\n\x12NodeDeleteResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"T\n\x0fNodeListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xb8\x01\n\x10NodeListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12#\n\x05nodes\x18\x02 \x03(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\"\xc5\x01\n\x04Node\x12\x1a\n\x05relay\x18\x01 \x01(\x0b\x32\t.v1.RelayH\x00\x12\x1e\n\x07gateway\x18\x02 \x01(\x0b\x32\x0b.v1.GatewayH\x00:[\xfa\xf8\xb3\x07L\xc2\xf3\xb3\x07G\xa2\xf3\xb3\x07\x1dtf_examples/node_resource.txt\xaa\xf3\xb3\x07 tf_examples/node_data_source.txt\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x42$\n\x04node\x12\x1c\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04tags\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04name\"\
|
35
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0bnodes.proto\x12\x02v1\x1a\x1egoogle/protobuf/duration.proto\x1a\roptions.proto\x1a\nspec.proto\x1a\ntags.proto\"`\n\x11NodeCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xf3\x01\n\x12NodeCreateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\x05token\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xf0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x04 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"N\n\x0eNodeGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xcd\x01\n\x0fNodeGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"l\n\x11NodeUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\n\n\x02id\x18\x02 \x01(\t\x12\"\n\x04node\x18\x03 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd3\x01\n\x12NodeUpdateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x04node\x18\x02 \x01(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"T\n\x11NodeDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xaf\x01\n\x12NodeDeleteResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"T\n\x0fNodeListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xb8\x01\n\x10NodeListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12#\n\x05nodes\x18\x02 \x03(\x0b\x32\x08.v1.NodeB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\"\xc5\x01\n\x04Node\x12\x1a\n\x05relay\x18\x01 \x01(\x0b\x32\t.v1.RelayH\x00\x12\x1e\n\x07gateway\x18\x02 \x01(\x0b\x32\x0b.v1.GatewayH\x00:[\xfa\xf8\xb3\x07L\xc2\xf3\xb3\x07G\xa2\xf3\xb3\x07\x1dtf_examples/node_resource.txt\xaa\xf3\xb3\x07 tf_examples/node_data_source.txt\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x42$\n\x04node\x12\x1c\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04tags\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04name\"\xa8\x04\n\x05Relay\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xd0\xf4\xb3\x07\x01\x12<\n\x05state\x18\x03 \x01(\tB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider\x12\"\n\x04tags\x18\x04 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x0egateway_filter\x18\x05 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x06\x64\x65vice\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12!\n\x08location\x18\x07 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12 \n\x07version\x18\x08 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12,\n\x04uuid\x18\t \x01(\tB\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\ngo_private\x12t\n\x13maintenance_windows\x18\x0b \x03(\x0b\x32\x19.v1.NodeMaintenanceWindowB<\xf2\xf8\xb3\x07\x37\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07-\xc2\xf4\xb3\x07(\n\x12terraform-provider\x12\x12maintenance_window\x12L\n\x10\x64iscovery_config\x18\x0c \x01(\x0b\x32\x17.v1.NodeDiscoveryConfigB\x19\xf2\xf8\xb3\x07\x14\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\ngo_private:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x84\x05\n\x07Gateway\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xd0\xf4\xb3\x07\x01\x12<\n\x05state\x18\x03 \x01(\tB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x13!terraform-provider\x12,\n\x0elisten_address\x18\x04 \x01(\tB\x14\xf2\xf8\xb3\x07\x0f\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xe0\xf3\xb3\x07\x01\x12*\n\x0c\x62ind_address\x18\x05 \x01(\tB\x14\xf2\xf8\xb3\x07\x0f\xb0\xf3\xb3\x07\x01\xe0\xf3\xb3\x07\x01\xd0\xf4\xb3\x07\x01\x12\"\n\x04tags\x18\x06 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\"\n\x0egateway_filter\x18\x07 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x06\x64\x65vice\x18\x08 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12!\n\x08location\x18\t \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12 \n\x07version\x18\n \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12,\n\x04uuid\x18\x0b \x01(\tB\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\ngo_private\x12t\n\x13maintenance_windows\x18\r \x03(\x0b\x32\x19.v1.NodeMaintenanceWindowB<\xf2\xf8\xb3\x07\x37\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07-\xc2\xf4\xb3\x07(\n\x12terraform-provider\x12\x12maintenance_window\x12L\n\x10\x64iscovery_config\x18\x0e \x01(\x0b\x32\x17.v1.NodeDiscoveryConfigB\x19\xf2\xf8\xb3\x07\x14\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\ngo_private:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xb6\x01\n\x15NodeMaintenanceWindow\x12!\n\rcron_schedule\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12$\n\x10require_idleness\x18\x02 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:T\xfa\xf8\xb3\x07O\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x45\xf2\xf3\xb3\x07\x1e\n\x12terraform-provider\x12\x08TypeList\xfa\xf3\xb3\x07\x1dnodeMaintenanceWindowElemType\"\xc3\x01\n\x13NodeDiscoveryConfig\x12\x1b\n\x07\x65nabled\x18\x01 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x06period\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12=\n\x0c\x65nabledTypes\x18\x03 \x03(\x0b\x32\x1b.v1.NodeDiscoveryTypeConfigB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\x19\xfa\xf8\xb3\x07\x14\xa8\xf3\xb3\x07\x01\xd2\xf3\xb3\x07\ngo_private\"N\n\x17NodeDiscoveryTypeConfig\x12\x18\n\x04type\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\x19\xfa\xf8\xb3\x07\x14\xa8\xf3\xb3\x07\x01\xd2\xf3\xb3\x07\ngo_private2\xee\x03\n\x05Nodes\x12Z\n\x06\x43reate\x12\x15.v1.NodeCreateRequest\x1a\x16.v1.NodeCreateResponse\"!\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x0e\xaa\xf3\xb3\x07\t/v1/nodes\x12U\n\x03Get\x12\x12.v1.NodeGetRequest\x1a\x13.v1.NodeGetResponse\"%\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x13\xaa\xf3\xb3\x07\x0e/v1/nodes/{id}\x12^\n\x06Update\x12\x15.v1.NodeUpdateRequest\x1a\x16.v1.NodeUpdateResponse\"%\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07\x13\xaa\xf3\xb3\x07\x0e/v1/nodes/{id}\x12\x61\n\x06\x44\x65lete\x12\x15.v1.NodeDeleteRequest\x1a\x16.v1.NodeDeleteResponse\"(\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x13\xaa\xf3\xb3\x07\x0e/v1/nodes/{id}\x12S\n\x04List\x12\x13.v1.NodeListRequest\x1a\x14.v1.NodeListResponse\" \x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x0e\xaa\xf3\xb3\x07\t/v1/nodes\x1a\x1a\xca\xf9\xb3\x07\t\xc2\xf9\xb3\x07\x04Node\xca\xf9\xb3\x07\x07\xd2\xf9\xb3\x07\x02n-Ba\n\x19\x63om.strongdm.api.plumbingB\rNodesPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
|
35
36
|
|
36
37
|
|
37
38
|
|
@@ -49,6 +50,8 @@ _NODE = DESCRIPTOR.message_types_by_name['Node']
|
|
49
50
|
_RELAY = DESCRIPTOR.message_types_by_name['Relay']
|
50
51
|
_GATEWAY = DESCRIPTOR.message_types_by_name['Gateway']
|
51
52
|
_NODEMAINTENANCEWINDOW = DESCRIPTOR.message_types_by_name['NodeMaintenanceWindow']
|
53
|
+
_NODEDISCOVERYCONFIG = DESCRIPTOR.message_types_by_name['NodeDiscoveryConfig']
|
54
|
+
_NODEDISCOVERYTYPECONFIG = DESCRIPTOR.message_types_by_name['NodeDiscoveryTypeConfig']
|
52
55
|
NodeCreateRequest = _reflection.GeneratedProtocolMessageType('NodeCreateRequest', (_message.Message,), {
|
53
56
|
'DESCRIPTOR' : _NODECREATEREQUEST,
|
54
57
|
'__module__' : 'nodes_pb2'
|
@@ -147,6 +150,20 @@ NodeMaintenanceWindow = _reflection.GeneratedProtocolMessageType('NodeMaintenanc
|
|
147
150
|
})
|
148
151
|
_sym_db.RegisterMessage(NodeMaintenanceWindow)
|
149
152
|
|
153
|
+
NodeDiscoveryConfig = _reflection.GeneratedProtocolMessageType('NodeDiscoveryConfig', (_message.Message,), {
|
154
|
+
'DESCRIPTOR' : _NODEDISCOVERYCONFIG,
|
155
|
+
'__module__' : 'nodes_pb2'
|
156
|
+
# @@protoc_insertion_point(class_scope:v1.NodeDiscoveryConfig)
|
157
|
+
})
|
158
|
+
_sym_db.RegisterMessage(NodeDiscoveryConfig)
|
159
|
+
|
160
|
+
NodeDiscoveryTypeConfig = _reflection.GeneratedProtocolMessageType('NodeDiscoveryTypeConfig', (_message.Message,), {
|
161
|
+
'DESCRIPTOR' : _NODEDISCOVERYTYPECONFIG,
|
162
|
+
'__module__' : 'nodes_pb2'
|
163
|
+
# @@protoc_insertion_point(class_scope:v1.NodeDiscoveryTypeConfig)
|
164
|
+
})
|
165
|
+
_sym_db.RegisterMessage(NodeDiscoveryTypeConfig)
|
166
|
+
|
150
167
|
_NODES = DESCRIPTOR.services_by_name['Nodes']
|
151
168
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
152
169
|
|
@@ -222,6 +239,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
222
239
|
_RELAY.fields_by_name['uuid']._serialized_options = b'\362\370\263\007\031\260\363\263\007\001\230\364\263\007\001\262\364\263\007\ngo_private'
|
223
240
|
_RELAY.fields_by_name['maintenance_windows']._options = None
|
224
241
|
_RELAY.fields_by_name['maintenance_windows']._serialized_options = b'\362\370\263\0077\260\363\263\007\001\312\363\263\007-\302\364\263\007(\n\022terraform-provider\022\022maintenance_window'
|
242
|
+
_RELAY.fields_by_name['discovery_config']._options = None
|
243
|
+
_RELAY.fields_by_name['discovery_config']._serialized_options = b'\362\370\263\007\024\260\363\263\007\001\262\364\263\007\ngo_private'
|
225
244
|
_RELAY._options = None
|
226
245
|
_RELAY._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
|
227
246
|
_GATEWAY.fields_by_name['id']._options = None
|
@@ -248,6 +267,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
248
267
|
_GATEWAY.fields_by_name['uuid']._serialized_options = b'\362\370\263\007\031\260\363\263\007\001\230\364\263\007\001\262\364\263\007\ngo_private'
|
249
268
|
_GATEWAY.fields_by_name['maintenance_windows']._options = None
|
250
269
|
_GATEWAY.fields_by_name['maintenance_windows']._serialized_options = b'\362\370\263\0077\260\363\263\007\001\312\363\263\007-\302\364\263\007(\n\022terraform-provider\022\022maintenance_window'
|
270
|
+
_GATEWAY.fields_by_name['discovery_config']._options = None
|
271
|
+
_GATEWAY.fields_by_name['discovery_config']._serialized_options = b'\362\370\263\007\024\260\363\263\007\001\262\364\263\007\ngo_private'
|
251
272
|
_GATEWAY._options = None
|
252
273
|
_GATEWAY._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
|
253
274
|
_NODEMAINTENANCEWINDOW.fields_by_name['cron_schedule']._options = None
|
@@ -256,6 +277,18 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
256
277
|
_NODEMAINTENANCEWINDOW.fields_by_name['require_idleness']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
257
278
|
_NODEMAINTENANCEWINDOW._options = None
|
258
279
|
_NODEMAINTENANCEWINDOW._serialized_options = b'\372\370\263\007O\250\363\263\007\001\312\363\263\007E\362\363\263\007\036\n\022terraform-provider\022\010TypeList\372\363\263\007\035nodeMaintenanceWindowElemType'
|
280
|
+
_NODEDISCOVERYCONFIG.fields_by_name['enabled']._options = None
|
281
|
+
_NODEDISCOVERYCONFIG.fields_by_name['enabled']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
282
|
+
_NODEDISCOVERYCONFIG.fields_by_name['period']._options = None
|
283
|
+
_NODEDISCOVERYCONFIG.fields_by_name['period']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
284
|
+
_NODEDISCOVERYCONFIG.fields_by_name['enabledTypes']._options = None
|
285
|
+
_NODEDISCOVERYCONFIG.fields_by_name['enabledTypes']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
286
|
+
_NODEDISCOVERYCONFIG._options = None
|
287
|
+
_NODEDISCOVERYCONFIG._serialized_options = b'\372\370\263\007\024\250\363\263\007\001\322\363\263\007\ngo_private'
|
288
|
+
_NODEDISCOVERYTYPECONFIG.fields_by_name['type']._options = None
|
289
|
+
_NODEDISCOVERYTYPECONFIG.fields_by_name['type']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
290
|
+
_NODEDISCOVERYTYPECONFIG._options = None
|
291
|
+
_NODEDISCOVERYTYPECONFIG._serialized_options = b'\372\370\263\007\024\250\363\263\007\001\322\363\263\007\ngo_private'
|
259
292
|
_NODES._options = None
|
260
293
|
_NODES._serialized_options = b'\312\371\263\007\t\302\371\263\007\004Node\312\371\263\007\007\322\371\263\007\002n-'
|
261
294
|
_NODES.methods_by_name['Create']._options = None
|
@@ -268,34 +301,38 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
268
301
|
_NODES.methods_by_name['Delete']._serialized_options = b'\202\371\263\007\013\242\363\263\007\006delete\202\371\263\007\023\252\363\263\007\016/v1/nodes/{id}'
|
269
302
|
_NODES.methods_by_name['List']._options = None
|
270
303
|
_NODES.methods_by_name['List']._serialized_options = b'\202\371\263\007\010\242\363\263\007\003get\202\371\263\007\016\252\363\263\007\t/v1/nodes'
|
271
|
-
_NODECREATEREQUEST._serialized_start=
|
272
|
-
_NODECREATEREQUEST._serialized_end=
|
273
|
-
_NODECREATERESPONSE._serialized_start=
|
274
|
-
_NODECREATERESPONSE._serialized_end=
|
275
|
-
_NODEGETREQUEST._serialized_start=
|
276
|
-
_NODEGETREQUEST._serialized_end=
|
277
|
-
_NODEGETRESPONSE._serialized_start=
|
278
|
-
_NODEGETRESPONSE._serialized_end=
|
279
|
-
_NODEUPDATEREQUEST._serialized_start=
|
280
|
-
_NODEUPDATEREQUEST._serialized_end=
|
281
|
-
_NODEUPDATERESPONSE._serialized_start=
|
282
|
-
_NODEUPDATERESPONSE._serialized_end=
|
283
|
-
_NODEDELETEREQUEST._serialized_start=
|
284
|
-
_NODEDELETEREQUEST._serialized_end=
|
285
|
-
_NODEDELETERESPONSE._serialized_start=
|
286
|
-
_NODEDELETERESPONSE._serialized_end=
|
287
|
-
_NODELISTREQUEST._serialized_start=
|
288
|
-
_NODELISTREQUEST._serialized_end=
|
289
|
-
_NODELISTRESPONSE._serialized_start=
|
290
|
-
_NODELISTRESPONSE._serialized_end=
|
291
|
-
_NODE._serialized_start=
|
292
|
-
_NODE._serialized_end=
|
293
|
-
_RELAY._serialized_start=
|
294
|
-
_RELAY._serialized_end=
|
295
|
-
_GATEWAY._serialized_start=
|
296
|
-
_GATEWAY._serialized_end=
|
297
|
-
_NODEMAINTENANCEWINDOW._serialized_start=
|
298
|
-
_NODEMAINTENANCEWINDOW._serialized_end=
|
299
|
-
|
300
|
-
|
304
|
+
_NODECREATEREQUEST._serialized_start=90
|
305
|
+
_NODECREATEREQUEST._serialized_end=186
|
306
|
+
_NODECREATERESPONSE._serialized_start=189
|
307
|
+
_NODECREATERESPONSE._serialized_end=432
|
308
|
+
_NODEGETREQUEST._serialized_start=434
|
309
|
+
_NODEGETREQUEST._serialized_end=512
|
310
|
+
_NODEGETRESPONSE._serialized_start=515
|
311
|
+
_NODEGETRESPONSE._serialized_end=720
|
312
|
+
_NODEUPDATEREQUEST._serialized_start=722
|
313
|
+
_NODEUPDATEREQUEST._serialized_end=830
|
314
|
+
_NODEUPDATERESPONSE._serialized_start=833
|
315
|
+
_NODEUPDATERESPONSE._serialized_end=1044
|
316
|
+
_NODEDELETEREQUEST._serialized_start=1046
|
317
|
+
_NODEDELETEREQUEST._serialized_end=1130
|
318
|
+
_NODEDELETERESPONSE._serialized_start=1133
|
319
|
+
_NODEDELETERESPONSE._serialized_end=1308
|
320
|
+
_NODELISTREQUEST._serialized_start=1310
|
321
|
+
_NODELISTREQUEST._serialized_end=1394
|
322
|
+
_NODELISTRESPONSE._serialized_start=1397
|
323
|
+
_NODELISTRESPONSE._serialized_end=1581
|
324
|
+
_NODE._serialized_start=1584
|
325
|
+
_NODE._serialized_end=1781
|
326
|
+
_RELAY._serialized_start=1784
|
327
|
+
_RELAY._serialized_end=2336
|
328
|
+
_GATEWAY._serialized_start=2339
|
329
|
+
_GATEWAY._serialized_end=2983
|
330
|
+
_NODEMAINTENANCEWINDOW._serialized_start=2986
|
331
|
+
_NODEMAINTENANCEWINDOW._serialized_end=3168
|
332
|
+
_NODEDISCOVERYCONFIG._serialized_start=3171
|
333
|
+
_NODEDISCOVERYCONFIG._serialized_end=3366
|
334
|
+
_NODEDISCOVERYTYPECONFIG._serialized_start=3368
|
335
|
+
_NODEDISCOVERYTYPECONFIG._serialized_end=3446
|
336
|
+
_NODES._serialized_start=3449
|
337
|
+
_NODES._serialized_end=3943
|
301
338
|
# @@protoc_insertion_point(module_scope)
|
@@ -9529,8 +9529,9 @@ def convert_workflow_approver_to_porcelain(plumbing):
|
|
9529
9529
|
if plumbing is None:
|
9530
9530
|
return None
|
9531
9531
|
porcelain = models.WorkflowApprover()
|
9532
|
-
porcelain.
|
9532
|
+
porcelain.account_id = (plumbing.account_id)
|
9533
9533
|
porcelain.id = (plumbing.id)
|
9534
|
+
porcelain.role_id = (plumbing.role_id)
|
9534
9535
|
porcelain.workflow_id = (plumbing.workflow_id)
|
9535
9536
|
return porcelain
|
9536
9537
|
|
@@ -9539,8 +9540,9 @@ def convert_workflow_approver_to_plumbing(porcelain):
|
|
9539
9540
|
plumbing = WorkflowApprover()
|
9540
9541
|
if porcelain is None:
|
9541
9542
|
return plumbing
|
9542
|
-
plumbing.
|
9543
|
+
plumbing.account_id = (porcelain.account_id)
|
9543
9544
|
plumbing.id = (porcelain.id)
|
9545
|
+
plumbing.role_id = (porcelain.role_id)
|
9544
9546
|
plumbing.workflow_id = (porcelain.workflow_id)
|
9545
9547
|
return plumbing
|
9546
9548
|
|
@@ -3794,7 +3794,7 @@ class SecretStoresHistory:
|
|
3794
3794
|
|
3795
3795
|
class WorkflowApprovers:
|
3796
3796
|
'''
|
3797
|
-
WorkflowApprovers is an account with the ability to approve requests bound to a workflow.
|
3797
|
+
WorkflowApprovers is an account or a role with the ability to approve requests bound to a workflow.
|
3798
3798
|
See `strongdm.models.WorkflowApprover`.
|
3799
3799
|
'''
|
3800
3800
|
def __init__(self, channel, client):
|
@@ -30,7 +30,7 @@ from . import options_pb2 as options__pb2
|
|
30
30
|
from . import spec_pb2 as spec__pb2
|
31
31
|
|
32
32
|
|
33
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18workflow_approvers.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\"\x92\x01\n\x1eWorkflowApproversCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12;\n\x11workflow_approver\x18\x02 \x01(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xed\x01\n\x1fWorkflowApproversCreateResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadata\x12;\n\x11workflow_approver\x18\x02 \x01(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"Z\n\x1aWorkflowApproverGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xf2\x01\n\x1bWorkflowApproverGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12;\n\x11workflow_approver\x18\x02 \x01(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"m\n\x1eWorkflowApproversDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xb0\x01\n\x1fWorkflowApproversDeleteResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadata\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"s\n\x1cWorkflowApproversListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\x10\xfa\xf8\xb3\x07\x0b\xa8\xf3\xb3\x07\x01\xd2\xf3\xb3\x07\x01*\"\xf0\x01\n\x1dWorkflowApproversListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12<\n\x12workflow_approvers\x18\x02 \x03(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\x10\xfa\xf8\xb3\x07\x0b\xa8\xf3\xb3\x07\x01\xd2\xf3\xb3\x07\x01*\"\
|
33
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18workflow_approvers.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\"\x92\x01\n\x1eWorkflowApproversCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12;\n\x11workflow_approver\x18\x02 \x01(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xed\x01\n\x1fWorkflowApproversCreateResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadata\x12;\n\x11workflow_approver\x18\x02 \x01(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"Z\n\x1aWorkflowApproverGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xf2\x01\n\x1bWorkflowApproverGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12;\n\x11workflow_approver\x18\x02 \x01(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"m\n\x1eWorkflowApproversDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xb0\x01\n\x1fWorkflowApproversDeleteResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadata\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"s\n\x1cWorkflowApproversListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\x10\xfa\xf8\xb3\x07\x0b\xa8\xf3\xb3\x07\x01\xd2\xf3\xb3\x07\x01*\"\xf0\x01\n\x1dWorkflowApproversListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12<\n\x12workflow_approvers\x18\x02 \x03(\x0b\x32\x14.v1.WorkflowApproverB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\x10\xfa\xf8\xb3\x07\x0b\xa8\xf3\xb3\x07\x01\xd2\xf3\xb3\x07\x01*\"\x85\x02\n\x10WorkflowApprover\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12$\n\x0bworkflow_id\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1e\n\naccount_id\x18\x03 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1b\n\x07role_id\x18\x04 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:v\xfa\xf8\xb3\x07q\xa8\xf3\xb3\x07\x01\xc2\xf3\xb3\x07\x61\xa2\xf3\xb3\x07*tf_examples/workflow_approver_resource.txt\xaa\xf3\xb3\x07-tf_examples/workflow_approver_data_source.txt\xd2\xf3\xb3\x07\x01*2\xbd\x04\n\x11WorkflowApprovers\x12\x81\x01\n\x06\x43reate\x12\".v1.WorkflowApproversCreateRequest\x1a#.v1.WorkflowApproversCreateResponse\".\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x1b\xaa\xf3\xb3\x07\x16/v1/workflow-approvers\x12y\n\x03Get\x12\x1e.v1.WorkflowApproverGetRequest\x1a\x1f.v1.WorkflowApproverGetResponse\"1\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1f\xaa\xf3\xb3\x07\x1a/v1/workflow-approver/{id}\x12\x83\x01\n\x06\x44\x65lete\x12\".v1.WorkflowApproversDeleteRequest\x1a#.v1.WorkflowApproversDeleteResponse\"0\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x1b\xaa\xf3\xb3\x07\x16/v1/workflow-approvers\x12z\n\x04List\x12 .v1.WorkflowApproversListRequest\x1a!.v1.WorkflowApproversListResponse\"-\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1b\xaa\xf3\xb3\x07\x16/v1/workflow-approvers\x1a\'\xca\xf9\xb3\x07\x15\xc2\xf9\xb3\x07\x10WorkflowApprover\xca\xf9\xb3\x07\x08\xd2\xf9\xb3\x07\x03nt-Bm\n\x19\x63om.strongdm.api.plumbingB\x19WorkflowApproversPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
|
34
34
|
|
35
35
|
|
36
36
|
|
@@ -153,8 +153,10 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
153
153
|
_WORKFLOWAPPROVER.fields_by_name['id']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
154
154
|
_WORKFLOWAPPROVER.fields_by_name['workflow_id']._options = None
|
155
155
|
_WORKFLOWAPPROVER.fields_by_name['workflow_id']._serialized_options = b'\362\370\263\007\n\260\363\263\007\001\300\363\263\007\001'
|
156
|
-
_WORKFLOWAPPROVER.fields_by_name['
|
157
|
-
_WORKFLOWAPPROVER.fields_by_name['
|
156
|
+
_WORKFLOWAPPROVER.fields_by_name['account_id']._options = None
|
157
|
+
_WORKFLOWAPPROVER.fields_by_name['account_id']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
158
|
+
_WORKFLOWAPPROVER.fields_by_name['role_id']._options = None
|
159
|
+
_WORKFLOWAPPROVER.fields_by_name['role_id']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
158
160
|
_WORKFLOWAPPROVER._options = None
|
159
161
|
_WORKFLOWAPPROVER._serialized_options = b'\372\370\263\007q\250\363\263\007\001\302\363\263\007a\242\363\263\007*tf_examples/workflow_approver_resource.txt\252\363\263\007-tf_examples/workflow_approver_data_source.txt\322\363\263\007\001*'
|
160
162
|
_WORKFLOWAPPROVERS._options = None
|
@@ -184,7 +186,7 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
184
186
|
_WORKFLOWAPPROVERSLISTRESPONSE._serialized_start=1193
|
185
187
|
_WORKFLOWAPPROVERSLISTRESPONSE._serialized_end=1433
|
186
188
|
_WORKFLOWAPPROVER._serialized_start=1436
|
187
|
-
_WORKFLOWAPPROVER._serialized_end=
|
188
|
-
_WORKFLOWAPPROVERS._serialized_start=
|
189
|
-
_WORKFLOWAPPROVERS._serialized_end=
|
189
|
+
_WORKFLOWAPPROVER._serialized_end=1697
|
190
|
+
_WORKFLOWAPPROVERS._serialized_start=1700
|
191
|
+
_WORKFLOWAPPROVERS._serialized_end=2273
|
190
192
|
# @@protoc_insertion_point(module_scope)
|
@@ -20,7 +20,7 @@ from . import workflow_approvers_pb2 as workflow__approvers__pb2
|
|
20
20
|
|
21
21
|
|
22
22
|
class WorkflowApproversStub(object):
|
23
|
-
"""WorkflowApprovers is an account with the ability to approve requests bound to a workflow.
|
23
|
+
"""WorkflowApprovers is an account or a role with the ability to approve requests bound to a workflow.
|
24
24
|
"""
|
25
25
|
|
26
26
|
def __init__(self, channel):
|
@@ -52,7 +52,7 @@ class WorkflowApproversStub(object):
|
|
52
52
|
|
53
53
|
|
54
54
|
class WorkflowApproversServicer(object):
|
55
|
-
"""WorkflowApprovers is an account with the ability to approve requests bound to a workflow.
|
55
|
+
"""WorkflowApprovers is an account or a role with the ability to approve requests bound to a workflow.
|
56
56
|
"""
|
57
57
|
|
58
58
|
def Create(self, request, context):
|
@@ -114,7 +114,7 @@ def add_WorkflowApproversServicer_to_server(servicer, server):
|
|
114
114
|
|
115
115
|
# This class is part of an EXPERIMENTAL API.
|
116
116
|
class WorkflowApprovers(object):
|
117
|
-
"""WorkflowApprovers is an account with the ability to approve requests bound to a workflow.
|
117
|
+
"""WorkflowApprovers is an account or a role with the ability to approve requests bound to a workflow.
|
118
118
|
"""
|
119
119
|
|
120
120
|
@staticmethod
|
@@ -30,7 +30,7 @@ from . import options_pb2 as options__pb2
|
|
30
30
|
from . import spec_pb2 as spec__pb2
|
31
31
|
|
32
32
|
|
33
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fworkflows.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\"l\n\x15WorkflowCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd3\x01\n\x16WorkflowCreateResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"R\n\x12WorkflowGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd9\x01\n\x13WorkflowGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"l\n\x15WorkflowUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd3\x01\n\x16WorkflowUpdateResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"X\n\x15WorkflowDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xbf\x01\n\x16WorkflowDeleteResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"X\n\x13WorkflowListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd0\x01\n\x14WorkflowListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12+\n\tworkflows\x18\x02 \x03(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\
|
33
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0fworkflows.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\"l\n\x15WorkflowCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd3\x01\n\x16WorkflowCreateResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"R\n\x12WorkflowGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd9\x01\n\x13WorkflowGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"l\n\x15WorkflowUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd3\x01\n\x16WorkflowUpdateResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadata\x12*\n\x08workflow\x18\x02 \x01(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"X\n\x15WorkflowDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.DeleteRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xbf\x01\n\x16WorkflowDeleteResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"X\n\x13WorkflowListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\"\xd0\x01\n\x14WorkflowListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12+\n\tworkflows\x18\x02 \x03(\x0b\x32\x0c.v1.WorkflowB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xcf\x04\n\x08Workflow\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1f\n\x0b\x64\x65scription\x18\x03 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x06weight\x18\x04 \x01(\x03\x42\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xd0\xf4\xb3\x07\x01\x12\x1e\n\nauto_grant\x18\x05 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1b\n\x07\x65nabled\x18\x06 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\x0frequires_reason\x18\x07 \x01(\x08\x42\x19\xf2\xf8\xb3\x07\x14\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\ngo_private\x12\xf2\x01\n\x0c\x61\x63\x63\x65ss_rules\x18\x08 \x01(\tB\xdb\x01\xf2\xf8\xb3\x07\xd5\x01\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\xa9\x01\xea\xf3\xb3\x07\x0c\x61\x63\x63\x65ss_rules\xf2\xf3\xb3\x07\x11\n\x02go\x12\x0b\x41\x63\x63\x65ssRules\xf2\xf3\xb3\x07\x19\n\ngo_private\x12\x0b\x41\x63\x63\x65ssRules\xf2\xf3\xb3\x07\x1b\n\x0cgo_terraform\x12\x0b\x41\x63\x63\x65ssRules\xf2\xf3\xb3\x07\x18\n\x04java\x12\x10List<AccessRule>\xf2\xf3\xb3\x07\"\n\x0cjson_gateway\x12\x12models.AccessRules\xba\xf4\xb3\x07\x17\x61\x63\x63\x65ssRulesDiffSuppress\xd0\xf4\xb3\x07\x01:d\xfa\xf8\xb3\x07_\xa8\xf3\xb3\x07\x01\xc2\xf3\xb3\x07O\xa2\xf3\xb3\x07!tf_examples/workflow_resource.txt\xaa\xf3\xb3\x07$tf_examples/workflow_data_source.txt\xd2\xf3\xb3\x07\x01*2\xa8\x04\n\tWorkflows\x12\x66\n\x06\x43reate\x12\x19.v1.WorkflowCreateRequest\x1a\x1a.v1.WorkflowCreateResponse\"%\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x12\xaa\xf3\xb3\x07\r/v1/workflows\x12`\n\x03Get\x12\x16.v1.WorkflowGetRequest\x1a\x17.v1.WorkflowGetResponse\"(\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x16\xaa\xf3\xb3\x07\x11/v1/workflow/{id}\x12h\n\x06\x44\x65lete\x12\x19.v1.WorkflowDeleteRequest\x1a\x1a.v1.WorkflowDeleteResponse\"\'\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x12\xaa\xf3\xb3\x07\r/v1/workflows\x12\x65\n\x06Update\x12\x19.v1.WorkflowUpdateRequest\x1a\x1a.v1.WorkflowUpdateResponse\"$\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07\x12\xaa\xf3\xb3\x07\r/v1/workflows\x12_\n\x04List\x12\x17.v1.WorkflowListRequest\x1a\x18.v1.WorkflowListResponse\"$\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x12\xaa\xf3\xb3\x07\r/v1/workflows\x1a\x1f\xca\xf9\xb3\x07\r\xc2\xf9\xb3\x07\x08Workflow\xca\xf9\xb3\x07\x08\xd2\xf9\xb3\x07\x03\x61w-Be\n\x19\x63om.strongdm.api.plumbingB\x11WorkflowsPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
|
34
34
|
|
35
35
|
|
36
36
|
|
@@ -176,7 +176,7 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
176
176
|
_WORKFLOW.fields_by_name['description']._options = None
|
177
177
|
_WORKFLOW.fields_by_name['description']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
178
178
|
_WORKFLOW.fields_by_name['weight']._options = None
|
179
|
-
_WORKFLOW.fields_by_name['weight']._serialized_options = b'\362\370\263\007\
|
179
|
+
_WORKFLOW.fields_by_name['weight']._serialized_options = b'\362\370\263\007\n\260\363\263\007\001\320\364\263\007\001'
|
180
180
|
_WORKFLOW.fields_by_name['auto_grant']._options = None
|
181
181
|
_WORKFLOW.fields_by_name['auto_grant']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
|
182
182
|
_WORKFLOW.fields_by_name['enabled']._options = None
|
@@ -220,7 +220,7 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
220
220
|
_WORKFLOWLISTRESPONSE._serialized_start=1377
|
221
221
|
_WORKFLOWLISTRESPONSE._serialized_end=1585
|
222
222
|
_WORKFLOW._serialized_start=1588
|
223
|
-
_WORKFLOW._serialized_end=
|
224
|
-
_WORKFLOWS._serialized_start=
|
225
|
-
_WORKFLOWS._serialized_end=
|
223
|
+
_WORKFLOW._serialized_end=2179
|
224
|
+
_WORKFLOWS._serialized_start=2182
|
225
|
+
_WORKFLOWS._serialized_end=2734
|
226
226
|
# @@protoc_insertion_point(module_scope)
|
@@ -0,0 +1,97 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: strongdm
|
3
|
+
Version: 6.0.0
|
4
|
+
Summary: strongDM SDK for the Python programming language.
|
5
|
+
Home-page: https://github.com/strongdm/strongdm-sdk-python
|
6
|
+
Author: strongDM Team
|
7
|
+
Author-email: sdk-feedback@strongdm.com
|
8
|
+
License: apache-2.0
|
9
|
+
Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v6.0.0.tar.gz
|
10
|
+
Keywords: strongDM,sdm,api,automation,security,audit,database,server,ssh,rdp
|
11
|
+
Platform: UNKNOWN
|
12
|
+
Classifier: Development Status :: 4 - Beta
|
13
|
+
Classifier: Intended Audience :: Developers
|
14
|
+
Classifier: Topic :: Security
|
15
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
17
|
+
Description-Content-Type: text/markdown
|
18
|
+
License-File: LICENSE
|
19
|
+
|
20
|
+
# strongDM SDK for Python
|
21
|
+
|
22
|
+
This is the official [strongDM](https://www.strongdm.com/) SDK for the Python
|
23
|
+
programming language.
|
24
|
+
|
25
|
+
Learn more with our [📚strongDM API docs](https://www.strongdm.com/docs/api/) or
|
26
|
+
[📓browse the SDK
|
27
|
+
reference](https://strongdm.github.io/strongdm-sdk-python-docs/).
|
28
|
+
|
29
|
+
## Installation
|
30
|
+
|
31
|
+
```bash
|
32
|
+
$ pip install strongdm
|
33
|
+
```
|
34
|
+
|
35
|
+
strongDM uses [semantic versioning](https://semver.org/). We do not guarantee
|
36
|
+
compatibility between major versions. Be sure to use version constraints to pin
|
37
|
+
your dependency to the desired major version of the strongDM SDK.
|
38
|
+
|
39
|
+
## Authentication
|
40
|
+
|
41
|
+
If you don't already have them you will need to generate a set of API keys,
|
42
|
+
instructions are here: [API
|
43
|
+
Credentials](https://www.strongdm.com/docs/admin-guide/api-credentials/)
|
44
|
+
|
45
|
+
Add the keys as environment variables; the SDK will need to access these keys
|
46
|
+
for every request.
|
47
|
+
|
48
|
+
```bash
|
49
|
+
$ export SDM_API_ACCESS_KEY=<YOUR ACCESS KEY>
|
50
|
+
$ export SDM_API_SECRET_KEY=<YOUR SECRET KEY>
|
51
|
+
```
|
52
|
+
|
53
|
+
## List Users
|
54
|
+
|
55
|
+
The following code lists all registered users:
|
56
|
+
|
57
|
+
```python
|
58
|
+
import os
|
59
|
+
import strongdm
|
60
|
+
|
61
|
+
def main():
|
62
|
+
client = strongdm.Client(os.getenv("SDM_API_ACCESS_KEY"),
|
63
|
+
os.getenv("SDM_API_SECRET_KEY"))
|
64
|
+
|
65
|
+
users = client.accounts.list('')
|
66
|
+
for user in users:
|
67
|
+
print(user)
|
68
|
+
|
69
|
+
if __name__ == "__main__":
|
70
|
+
main()
|
71
|
+
```
|
72
|
+
|
73
|
+
## Useful Links
|
74
|
+
|
75
|
+
- Documentation: [strongdm package](https://strongdm.github.io/strongdm-sdk-python-docs/)
|
76
|
+
- [Migrating from v2 to v3](https://github.com/strongdm/strongdm-sdk-python/releases/tag/v3.0.0)
|
77
|
+
- [Migrating from Role Grants to Access Rules](https://github.com/strongdm/strongdm-sdk-python/wiki/Migrating-from-Role-Grants-to-Access-Rules)
|
78
|
+
- Examples: [GitHub - strongdm/strongdm-sdk-python-examples](https://github.com/strongdm/strongdm-sdk-python-examples)
|
79
|
+
1. [Managing Resources](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/1_managing_resources)
|
80
|
+
2. [Managing Accounts](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/2_managing_accounts)
|
81
|
+
3. [Managing Roles](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/3_managing_roles)
|
82
|
+
4. [Managing Gateways](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/4_managing_gateways)
|
83
|
+
5. [Auditing](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/5_auditing)
|
84
|
+
6. [Managing Access Workflows](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/6_managing_workflows)
|
85
|
+
|
86
|
+
## License
|
87
|
+
|
88
|
+
[Apache 2](https://github.com/strongdm/strongdm-sdk-python/blob/master/LICENSE)
|
89
|
+
|
90
|
+
## Contributing
|
91
|
+
|
92
|
+
Currently, we are not accepting pull requests directly to this repository, but
|
93
|
+
our users are some of the most resourceful and ambitious folks out there. So, if
|
94
|
+
you have something to contribute, find a bug, or just want to give us some
|
95
|
+
feedback, please email <support@strongdm.com>.
|
96
|
+
|
97
|
+
|
strongdm-5.0.3/PKG-INFO
DELETED
@@ -1,94 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: strongdm
|
3
|
-
Version: 5.0.3
|
4
|
-
Summary: strongDM SDK for the Python programming language.
|
5
|
-
Home-page: https://github.com/strongdm/strongdm-sdk-python
|
6
|
-
Author: strongDM Team
|
7
|
-
Author-email: sdk-feedback@strongdm.com
|
8
|
-
License: apache-2.0
|
9
|
-
Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v5.0.3.tar.gz
|
10
|
-
Description: # strongDM SDK for Python
|
11
|
-
|
12
|
-
This is the official [strongDM](https://www.strongdm.com/) SDK for the Python
|
13
|
-
programming language.
|
14
|
-
|
15
|
-
Learn more with our [📚strongDM API docs](https://www.strongdm.com/docs/api/) or
|
16
|
-
[📓browse the SDK
|
17
|
-
reference](https://strongdm.github.io/strongdm-sdk-python-docs/).
|
18
|
-
|
19
|
-
## Installation
|
20
|
-
|
21
|
-
```bash
|
22
|
-
$ pip install strongdm
|
23
|
-
```
|
24
|
-
|
25
|
-
strongDM uses [semantic versioning](https://semver.org/). We do not guarantee
|
26
|
-
compatibility between major versions. Be sure to use version constraints to pin
|
27
|
-
your dependency to the desired major version of the strongDM SDK.
|
28
|
-
|
29
|
-
## Authentication
|
30
|
-
|
31
|
-
If you don't already have them you will need to generate a set of API keys,
|
32
|
-
instructions are here: [API
|
33
|
-
Credentials](https://www.strongdm.com/docs/admin-guide/api-credentials/)
|
34
|
-
|
35
|
-
Add the keys as environment variables; the SDK will need to access these keys
|
36
|
-
for every request.
|
37
|
-
|
38
|
-
```bash
|
39
|
-
$ export SDM_API_ACCESS_KEY=<YOUR ACCESS KEY>
|
40
|
-
$ export SDM_API_SECRET_KEY=<YOUR SECRET KEY>
|
41
|
-
```
|
42
|
-
|
43
|
-
## List Users
|
44
|
-
|
45
|
-
The following code lists all registered users:
|
46
|
-
|
47
|
-
```python
|
48
|
-
import os
|
49
|
-
import strongdm
|
50
|
-
|
51
|
-
def main():
|
52
|
-
client = strongdm.Client(os.getenv("SDM_API_ACCESS_KEY"),
|
53
|
-
os.getenv("SDM_API_SECRET_KEY"))
|
54
|
-
|
55
|
-
users = client.accounts.list('')
|
56
|
-
for user in users:
|
57
|
-
print(user)
|
58
|
-
|
59
|
-
if __name__ == "__main__":
|
60
|
-
main()
|
61
|
-
```
|
62
|
-
|
63
|
-
## Useful Links
|
64
|
-
|
65
|
-
- Documentation: [strongdm package](https://strongdm.github.io/strongdm-sdk-python-docs/)
|
66
|
-
- [Migrating from v2 to v3](https://github.com/strongdm/strongdm-sdk-python/releases/tag/v3.0.0)
|
67
|
-
- [Migrating from Role Grants to Access Rules](https://github.com/strongdm/strongdm-sdk-python/wiki/Migrating-from-Role-Grants-to-Access-Rules)
|
68
|
-
- Examples: [GitHub - strongdm/strongdm-sdk-python-examples](https://github.com/strongdm/strongdm-sdk-python-examples)
|
69
|
-
1. [Managing Resources](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/1_managing_resources)
|
70
|
-
2. [Managing Accounts](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/2_managing_accounts)
|
71
|
-
3. [Managing Roles](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/3_managing_roles)
|
72
|
-
4. [Managing Gateways](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/4_managing_gateways)
|
73
|
-
5. [Auditing](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/5_auditing)
|
74
|
-
6. [Managing Access Workflows](https://github.com/strongdm/strongdm-sdk-python-examples/tree/master/6_managing_workflows)
|
75
|
-
|
76
|
-
## License
|
77
|
-
|
78
|
-
[Apache 2](https://github.com/strongdm/strongdm-sdk-python/blob/master/LICENSE)
|
79
|
-
|
80
|
-
## Contributing
|
81
|
-
|
82
|
-
Currently, we are not accepting pull requests directly to this repository, but
|
83
|
-
our users are some of the most resourceful and ambitious folks out there. So, if
|
84
|
-
you have something to contribute, find a bug, or just want to give us some
|
85
|
-
feedback, please email <support@strongdm.com>.
|
86
|
-
|
87
|
-
Keywords: strongDM,sdm,api,automation,security,audit,database,server,ssh,rdp
|
88
|
-
Platform: UNKNOWN
|
89
|
-
Classifier: Development Status :: 4 - Beta
|
90
|
-
Classifier: Intended Audience :: Developers
|
91
|
-
Classifier: Topic :: Security
|
92
|
-
Classifier: License :: OSI Approved :: Apache Software License
|
93
|
-
Classifier: Programming Language :: Python :: 3
|
94
|
-
Description-Content-Type: text/markdown
|