strongdm 11.16.0__zip → 11.18.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-11.16.0 → strongdm-11.18.0}/PKG-INFO +2 -2
- {strongdm-11.16.0 → strongdm-11.18.0}/setup.py +2 -2
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/client.py +1 -1
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/drivers_pb2.py +308 -176
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/models.py +483 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/plumbing.py +185 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/svc.py +3 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm.egg-info/PKG-INFO +2 -2
- {strongdm-11.16.0 → strongdm-11.18.0}/LICENSE +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/README.md +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/setup.cfg +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/__init__.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/access_request_events_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/access_requests_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/access_requests_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/access_requests_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_attachments_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_attachments_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_grants_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_grants_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_grants_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_permissions_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_resources_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_resources_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/account_resources_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/accounts_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/accounts_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/accounts_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/activities_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/activities_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflows_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflows_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/constants.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/control_panel_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/control_panel_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/drivers_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/errors.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/health_checks_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/health_checks_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_aliases_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_aliases_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_sets_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_sets_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/nodes_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/nodes_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/nodes_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/options_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/options_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/organization_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/organization_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_group_nodes_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_group_peers_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_group_resources_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_groups_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/policies_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/policies_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/policies_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/policies_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/queries_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/queries_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identities_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identities_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identity_groups_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/replays_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/replays_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/resources_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/resources_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/resources_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/resources_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/role_resources_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/role_resources_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/role_resources_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/roles_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/roles_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/roles_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/roles_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_store_healths_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_store_types_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_stores_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_stores_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/spec_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/spec_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/tags_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/tags_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_approvers_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_assignments_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_assignments_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_assignments_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_assignments_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_roles_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_roles_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflows_history_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflows_pb2.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm/workflows_pb2_grpc.py +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm.egg-info/SOURCES.txt +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm.egg-info/dependency_links.txt +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm.egg-info/requires.txt +0 -0
- {strongdm-11.16.0 → strongdm-11.18.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -1519,6 +1519,154 @@ class AWSConsoleStaticKeyPair:
|
|
1519
1519
|
)
|
1520
1520
|
|
1521
1521
|
|
1522
|
+
class AWSInstanceProfile:
|
1523
|
+
__slots__ = [
|
1524
|
+
'bind_interface',
|
1525
|
+
'egress_filter',
|
1526
|
+
'enable_env_variables',
|
1527
|
+
'healthy',
|
1528
|
+
'id',
|
1529
|
+
'name',
|
1530
|
+
'port_override',
|
1531
|
+
'proxy_cluster_id',
|
1532
|
+
'region',
|
1533
|
+
'role_arn',
|
1534
|
+
'role_external_id',
|
1535
|
+
'secret_store_id',
|
1536
|
+
'subdomain',
|
1537
|
+
'tags',
|
1538
|
+
]
|
1539
|
+
|
1540
|
+
def __init__(
|
1541
|
+
self,
|
1542
|
+
bind_interface=None,
|
1543
|
+
egress_filter=None,
|
1544
|
+
enable_env_variables=None,
|
1545
|
+
healthy=None,
|
1546
|
+
id=None,
|
1547
|
+
name=None,
|
1548
|
+
port_override=None,
|
1549
|
+
proxy_cluster_id=None,
|
1550
|
+
region=None,
|
1551
|
+
role_arn=None,
|
1552
|
+
role_external_id=None,
|
1553
|
+
secret_store_id=None,
|
1554
|
+
subdomain=None,
|
1555
|
+
tags=None,
|
1556
|
+
):
|
1557
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
1558
|
+
'''
|
1559
|
+
The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
|
1560
|
+
'''
|
1561
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
1562
|
+
'''
|
1563
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
1564
|
+
'''
|
1565
|
+
self.enable_env_variables = enable_env_variables if enable_env_variables is not None else False
|
1566
|
+
'''
|
1567
|
+
If true, prefer environment variables to authenticate connection even if EC2 roles are configured.
|
1568
|
+
'''
|
1569
|
+
self.healthy = healthy if healthy is not None else False
|
1570
|
+
'''
|
1571
|
+
True if the datasource is reachable and the credentials are valid.
|
1572
|
+
'''
|
1573
|
+
self.id = id if id is not None else ''
|
1574
|
+
'''
|
1575
|
+
Unique identifier of the Resource.
|
1576
|
+
'''
|
1577
|
+
self.name = name if name is not None else ''
|
1578
|
+
'''
|
1579
|
+
Unique human-readable name of the Resource.
|
1580
|
+
'''
|
1581
|
+
self.port_override = port_override if port_override is not None else 0
|
1582
|
+
'''
|
1583
|
+
The local port used by clients to connect to this resource.
|
1584
|
+
'''
|
1585
|
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
1586
|
+
'''
|
1587
|
+
ID of the proxy cluster for this resource, if any.
|
1588
|
+
'''
|
1589
|
+
self.region = region if region is not None else ''
|
1590
|
+
'''
|
1591
|
+
The AWS region to connect to.
|
1592
|
+
'''
|
1593
|
+
self.role_arn = role_arn if role_arn is not None else ''
|
1594
|
+
'''
|
1595
|
+
The role to assume after logging in.
|
1596
|
+
'''
|
1597
|
+
self.role_external_id = role_external_id if role_external_id is not None else ''
|
1598
|
+
'''
|
1599
|
+
The external ID to associate with assume role requests. Does nothing if a role ARN is not provided.
|
1600
|
+
'''
|
1601
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
1602
|
+
'''
|
1603
|
+
ID of the secret store containing credentials for this resource, if any.
|
1604
|
+
'''
|
1605
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
1606
|
+
'''
|
1607
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
1608
|
+
'''
|
1609
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
1610
|
+
'''
|
1611
|
+
Tags is a map of key, value pairs.
|
1612
|
+
'''
|
1613
|
+
|
1614
|
+
def __repr__(self):
|
1615
|
+
return '<sdm.AWSInstanceProfile ' + \
|
1616
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
1617
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
1618
|
+
'enable_env_variables: ' + repr(self.enable_env_variables) + ' ' +\
|
1619
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
1620
|
+
'id: ' + repr(self.id) + ' ' +\
|
1621
|
+
'name: ' + repr(self.name) + ' ' +\
|
1622
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
1623
|
+
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
1624
|
+
'region: ' + repr(self.region) + ' ' +\
|
1625
|
+
'role_arn: ' + repr(self.role_arn) + ' ' +\
|
1626
|
+
'role_external_id: ' + repr(self.role_external_id) + ' ' +\
|
1627
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
1628
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
1629
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
1630
|
+
'>'
|
1631
|
+
|
1632
|
+
def to_dict(self):
|
1633
|
+
return {
|
1634
|
+
'bind_interface': self.bind_interface,
|
1635
|
+
'egress_filter': self.egress_filter,
|
1636
|
+
'enable_env_variables': self.enable_env_variables,
|
1637
|
+
'healthy': self.healthy,
|
1638
|
+
'id': self.id,
|
1639
|
+
'name': self.name,
|
1640
|
+
'port_override': self.port_override,
|
1641
|
+
'proxy_cluster_id': self.proxy_cluster_id,
|
1642
|
+
'region': self.region,
|
1643
|
+
'role_arn': self.role_arn,
|
1644
|
+
'role_external_id': self.role_external_id,
|
1645
|
+
'secret_store_id': self.secret_store_id,
|
1646
|
+
'subdomain': self.subdomain,
|
1647
|
+
'tags': self.tags,
|
1648
|
+
}
|
1649
|
+
|
1650
|
+
@classmethod
|
1651
|
+
def from_dict(cls, d):
|
1652
|
+
return cls(
|
1653
|
+
bind_interface=d.get('bind_interface'),
|
1654
|
+
egress_filter=d.get('egress_filter'),
|
1655
|
+
enable_env_variables=d.get('enable_env_variables'),
|
1656
|
+
healthy=d.get('healthy'),
|
1657
|
+
id=d.get('id'),
|
1658
|
+
name=d.get('name'),
|
1659
|
+
port_override=d.get('port_override'),
|
1660
|
+
proxy_cluster_id=d.get('proxy_cluster_id'),
|
1661
|
+
region=d.get('region'),
|
1662
|
+
role_arn=d.get('role_arn'),
|
1663
|
+
role_external_id=d.get('role_external_id'),
|
1664
|
+
secret_store_id=d.get('secret_store_id'),
|
1665
|
+
subdomain=d.get('subdomain'),
|
1666
|
+
tags=d.get('tags'),
|
1667
|
+
)
|
1668
|
+
|
1669
|
+
|
1522
1670
|
class AWSStore:
|
1523
1671
|
__slots__ = [
|
1524
1672
|
'id',
|
@@ -10120,6 +10268,169 @@ class GCPCertX509Store:
|
|
10120
10268
|
)
|
10121
10269
|
|
10122
10270
|
|
10271
|
+
class GCPConsole:
|
10272
|
+
'''
|
10273
|
+
GCPConsole is currently unstable, and its API may change, or it may be removed,
|
10274
|
+
without a major version bump.
|
10275
|
+
'''
|
10276
|
+
__slots__ = [
|
10277
|
+
'bind_interface',
|
10278
|
+
'egress_filter',
|
10279
|
+
'healthy',
|
10280
|
+
'id',
|
10281
|
+
'identity_alias_healthcheck_username',
|
10282
|
+
'identity_set_id',
|
10283
|
+
'name',
|
10284
|
+
'port_override',
|
10285
|
+
'proxy_cluster_id',
|
10286
|
+
'secret_store_id',
|
10287
|
+
'session_expiry',
|
10288
|
+
'subdomain',
|
10289
|
+
'tags',
|
10290
|
+
'workforce_pool_id',
|
10291
|
+
'workforce_provider_id',
|
10292
|
+
]
|
10293
|
+
|
10294
|
+
def __init__(
|
10295
|
+
self,
|
10296
|
+
bind_interface=None,
|
10297
|
+
egress_filter=None,
|
10298
|
+
healthy=None,
|
10299
|
+
id=None,
|
10300
|
+
identity_alias_healthcheck_username=None,
|
10301
|
+
identity_set_id=None,
|
10302
|
+
name=None,
|
10303
|
+
port_override=None,
|
10304
|
+
proxy_cluster_id=None,
|
10305
|
+
secret_store_id=None,
|
10306
|
+
session_expiry=None,
|
10307
|
+
subdomain=None,
|
10308
|
+
tags=None,
|
10309
|
+
workforce_pool_id=None,
|
10310
|
+
workforce_provider_id=None,
|
10311
|
+
):
|
10312
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
10313
|
+
'''
|
10314
|
+
The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
|
10315
|
+
'''
|
10316
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
10317
|
+
'''
|
10318
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
10319
|
+
'''
|
10320
|
+
self.healthy = healthy if healthy is not None else False
|
10321
|
+
'''
|
10322
|
+
True if the datasource is reachable and the credentials are valid.
|
10323
|
+
'''
|
10324
|
+
self.id = id if id is not None else ''
|
10325
|
+
'''
|
10326
|
+
Unique identifier of the Resource.
|
10327
|
+
'''
|
10328
|
+
self.identity_alias_healthcheck_username = identity_alias_healthcheck_username if identity_alias_healthcheck_username is not None else ''
|
10329
|
+
'''
|
10330
|
+
The username to use for healthchecks, when clients otherwise connect with their own identity alias username.
|
10331
|
+
'''
|
10332
|
+
self.identity_set_id = identity_set_id if identity_set_id is not None else ''
|
10333
|
+
'''
|
10334
|
+
The ID of the identity set to use for identity connections.
|
10335
|
+
'''
|
10336
|
+
self.name = name if name is not None else ''
|
10337
|
+
'''
|
10338
|
+
Unique human-readable name of the Resource.
|
10339
|
+
'''
|
10340
|
+
self.port_override = port_override if port_override is not None else 0
|
10341
|
+
'''
|
10342
|
+
The local port used by clients to connect to this resource.
|
10343
|
+
'''
|
10344
|
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
10345
|
+
'''
|
10346
|
+
ID of the proxy cluster for this resource, if any.
|
10347
|
+
'''
|
10348
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
10349
|
+
'''
|
10350
|
+
ID of the secret store containing credentials for this resource, if any.
|
10351
|
+
'''
|
10352
|
+
self.session_expiry = session_expiry if session_expiry is not None else 0
|
10353
|
+
'''
|
10354
|
+
The length of time in seconds console sessions will live before needing to reauthenticate.
|
10355
|
+
'''
|
10356
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
10357
|
+
'''
|
10358
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
10359
|
+
'''
|
10360
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
10361
|
+
'''
|
10362
|
+
Tags is a map of key, value pairs.
|
10363
|
+
'''
|
10364
|
+
self.workforce_pool_id = workforce_pool_id if workforce_pool_id is not None else ''
|
10365
|
+
'''
|
10366
|
+
The ID of the Workforce Identity Pool in GCP to use for federated authentication.
|
10367
|
+
'''
|
10368
|
+
self.workforce_provider_id = workforce_provider_id if workforce_provider_id is not None else ''
|
10369
|
+
'''
|
10370
|
+
The ID of the Workforce Identity Provider in GCP to use for federated authentication.
|
10371
|
+
'''
|
10372
|
+
|
10373
|
+
def __repr__(self):
|
10374
|
+
return '<sdm.GCPConsole ' + \
|
10375
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
10376
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
10377
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
10378
|
+
'id: ' + repr(self.id) + ' ' +\
|
10379
|
+
'identity_alias_healthcheck_username: ' + repr(self.identity_alias_healthcheck_username) + ' ' +\
|
10380
|
+
'identity_set_id: ' + repr(self.identity_set_id) + ' ' +\
|
10381
|
+
'name: ' + repr(self.name) + ' ' +\
|
10382
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
10383
|
+
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
10384
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
10385
|
+
'session_expiry: ' + repr(self.session_expiry) + ' ' +\
|
10386
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
10387
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
10388
|
+
'workforce_pool_id: ' + repr(self.workforce_pool_id) + ' ' +\
|
10389
|
+
'workforce_provider_id: ' + repr(self.workforce_provider_id) + ' ' +\
|
10390
|
+
'>'
|
10391
|
+
|
10392
|
+
def to_dict(self):
|
10393
|
+
return {
|
10394
|
+
'bind_interface': self.bind_interface,
|
10395
|
+
'egress_filter': self.egress_filter,
|
10396
|
+
'healthy': self.healthy,
|
10397
|
+
'id': self.id,
|
10398
|
+
'identity_alias_healthcheck_username':
|
10399
|
+
self.identity_alias_healthcheck_username,
|
10400
|
+
'identity_set_id': self.identity_set_id,
|
10401
|
+
'name': self.name,
|
10402
|
+
'port_override': self.port_override,
|
10403
|
+
'proxy_cluster_id': self.proxy_cluster_id,
|
10404
|
+
'secret_store_id': self.secret_store_id,
|
10405
|
+
'session_expiry': self.session_expiry,
|
10406
|
+
'subdomain': self.subdomain,
|
10407
|
+
'tags': self.tags,
|
10408
|
+
'workforce_pool_id': self.workforce_pool_id,
|
10409
|
+
'workforce_provider_id': self.workforce_provider_id,
|
10410
|
+
}
|
10411
|
+
|
10412
|
+
@classmethod
|
10413
|
+
def from_dict(cls, d):
|
10414
|
+
return cls(
|
10415
|
+
bind_interface=d.get('bind_interface'),
|
10416
|
+
egress_filter=d.get('egress_filter'),
|
10417
|
+
healthy=d.get('healthy'),
|
10418
|
+
id=d.get('id'),
|
10419
|
+
identity_alias_healthcheck_username=d.get(
|
10420
|
+
'identity_alias_healthcheck_username'),
|
10421
|
+
identity_set_id=d.get('identity_set_id'),
|
10422
|
+
name=d.get('name'),
|
10423
|
+
port_override=d.get('port_override'),
|
10424
|
+
proxy_cluster_id=d.get('proxy_cluster_id'),
|
10425
|
+
secret_store_id=d.get('secret_store_id'),
|
10426
|
+
session_expiry=d.get('session_expiry'),
|
10427
|
+
subdomain=d.get('subdomain'),
|
10428
|
+
tags=d.get('tags'),
|
10429
|
+
workforce_pool_id=d.get('workforce_pool_id'),
|
10430
|
+
workforce_provider_id=d.get('workforce_provider_id'),
|
10431
|
+
)
|
10432
|
+
|
10433
|
+
|
10123
10434
|
class GCPStore:
|
10124
10435
|
__slots__ = [
|
10125
10436
|
'id',
|
@@ -10178,6 +10489,178 @@ class GCPStore:
|
|
10178
10489
|
)
|
10179
10490
|
|
10180
10491
|
|
10492
|
+
class GCPWIF:
|
10493
|
+
'''
|
10494
|
+
GCPWIF is currently unstable, and its API may change, or it may be removed,
|
10495
|
+
without a major version bump.
|
10496
|
+
'''
|
10497
|
+
__slots__ = [
|
10498
|
+
'bind_interface',
|
10499
|
+
'egress_filter',
|
10500
|
+
'healthy',
|
10501
|
+
'id',
|
10502
|
+
'identity_alias_healthcheck_username',
|
10503
|
+
'identity_set_id',
|
10504
|
+
'name',
|
10505
|
+
'port_override',
|
10506
|
+
'proxy_cluster_id',
|
10507
|
+
'scopes',
|
10508
|
+
'secret_store_id',
|
10509
|
+
'session_expiry',
|
10510
|
+
'subdomain',
|
10511
|
+
'tags',
|
10512
|
+
'workforce_pool_id',
|
10513
|
+
'workforce_provider_id',
|
10514
|
+
]
|
10515
|
+
|
10516
|
+
def __init__(
|
10517
|
+
self,
|
10518
|
+
bind_interface=None,
|
10519
|
+
egress_filter=None,
|
10520
|
+
healthy=None,
|
10521
|
+
id=None,
|
10522
|
+
identity_alias_healthcheck_username=None,
|
10523
|
+
identity_set_id=None,
|
10524
|
+
name=None,
|
10525
|
+
port_override=None,
|
10526
|
+
proxy_cluster_id=None,
|
10527
|
+
scopes=None,
|
10528
|
+
secret_store_id=None,
|
10529
|
+
session_expiry=None,
|
10530
|
+
subdomain=None,
|
10531
|
+
tags=None,
|
10532
|
+
workforce_pool_id=None,
|
10533
|
+
workforce_provider_id=None,
|
10534
|
+
):
|
10535
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
10536
|
+
'''
|
10537
|
+
The bind interface is the IP address to which the port override of a resource is bound (for example, 127.0.0.1). It is automatically generated if not provided.
|
10538
|
+
'''
|
10539
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
10540
|
+
'''
|
10541
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
10542
|
+
'''
|
10543
|
+
self.healthy = healthy if healthy is not None else False
|
10544
|
+
'''
|
10545
|
+
True if the datasource is reachable and the credentials are valid.
|
10546
|
+
'''
|
10547
|
+
self.id = id if id is not None else ''
|
10548
|
+
'''
|
10549
|
+
Unique identifier of the Resource.
|
10550
|
+
'''
|
10551
|
+
self.identity_alias_healthcheck_username = identity_alias_healthcheck_username if identity_alias_healthcheck_username is not None else ''
|
10552
|
+
'''
|
10553
|
+
The username to use for healthchecks, when clients otherwise connect with their own identity alias username.
|
10554
|
+
'''
|
10555
|
+
self.identity_set_id = identity_set_id if identity_set_id is not None else ''
|
10556
|
+
'''
|
10557
|
+
The ID of the identity set to use for identity connections.
|
10558
|
+
'''
|
10559
|
+
self.name = name if name is not None else ''
|
10560
|
+
'''
|
10561
|
+
Unique human-readable name of the Resource.
|
10562
|
+
'''
|
10563
|
+
self.port_override = port_override if port_override is not None else 0
|
10564
|
+
'''
|
10565
|
+
The local port used by clients to connect to this resource.
|
10566
|
+
'''
|
10567
|
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
10568
|
+
'''
|
10569
|
+
ID of the proxy cluster for this resource, if any.
|
10570
|
+
'''
|
10571
|
+
self.scopes = scopes if scopes is not None else ''
|
10572
|
+
'''
|
10573
|
+
Space separated scopes that this login should assume into when authenticating.
|
10574
|
+
'''
|
10575
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
10576
|
+
'''
|
10577
|
+
ID of the secret store containing credentials for this resource, if any.
|
10578
|
+
'''
|
10579
|
+
self.session_expiry = session_expiry if session_expiry is not None else 0
|
10580
|
+
'''
|
10581
|
+
The length of time in seconds console sessions will live before needing to reauthenticate.
|
10582
|
+
'''
|
10583
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
10584
|
+
'''
|
10585
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
10586
|
+
'''
|
10587
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
10588
|
+
'''
|
10589
|
+
Tags is a map of key, value pairs.
|
10590
|
+
'''
|
10591
|
+
self.workforce_pool_id = workforce_pool_id if workforce_pool_id is not None else ''
|
10592
|
+
'''
|
10593
|
+
The ID of the Workforce Identity Pool in GCP to use for federated authentication.
|
10594
|
+
'''
|
10595
|
+
self.workforce_provider_id = workforce_provider_id if workforce_provider_id is not None else ''
|
10596
|
+
'''
|
10597
|
+
The ID of the Workforce Identity Provider in GCP to use for federated authentication.
|
10598
|
+
'''
|
10599
|
+
|
10600
|
+
def __repr__(self):
|
10601
|
+
return '<sdm.GCPWIF ' + \
|
10602
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
10603
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
10604
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
10605
|
+
'id: ' + repr(self.id) + ' ' +\
|
10606
|
+
'identity_alias_healthcheck_username: ' + repr(self.identity_alias_healthcheck_username) + ' ' +\
|
10607
|
+
'identity_set_id: ' + repr(self.identity_set_id) + ' ' +\
|
10608
|
+
'name: ' + repr(self.name) + ' ' +\
|
10609
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
10610
|
+
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
10611
|
+
'scopes: ' + repr(self.scopes) + ' ' +\
|
10612
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
10613
|
+
'session_expiry: ' + repr(self.session_expiry) + ' ' +\
|
10614
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
10615
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
10616
|
+
'workforce_pool_id: ' + repr(self.workforce_pool_id) + ' ' +\
|
10617
|
+
'workforce_provider_id: ' + repr(self.workforce_provider_id) + ' ' +\
|
10618
|
+
'>'
|
10619
|
+
|
10620
|
+
def to_dict(self):
|
10621
|
+
return {
|
10622
|
+
'bind_interface': self.bind_interface,
|
10623
|
+
'egress_filter': self.egress_filter,
|
10624
|
+
'healthy': self.healthy,
|
10625
|
+
'id': self.id,
|
10626
|
+
'identity_alias_healthcheck_username':
|
10627
|
+
self.identity_alias_healthcheck_username,
|
10628
|
+
'identity_set_id': self.identity_set_id,
|
10629
|
+
'name': self.name,
|
10630
|
+
'port_override': self.port_override,
|
10631
|
+
'proxy_cluster_id': self.proxy_cluster_id,
|
10632
|
+
'scopes': self.scopes,
|
10633
|
+
'secret_store_id': self.secret_store_id,
|
10634
|
+
'session_expiry': self.session_expiry,
|
10635
|
+
'subdomain': self.subdomain,
|
10636
|
+
'tags': self.tags,
|
10637
|
+
'workforce_pool_id': self.workforce_pool_id,
|
10638
|
+
'workforce_provider_id': self.workforce_provider_id,
|
10639
|
+
}
|
10640
|
+
|
10641
|
+
@classmethod
|
10642
|
+
def from_dict(cls, d):
|
10643
|
+
return cls(
|
10644
|
+
bind_interface=d.get('bind_interface'),
|
10645
|
+
egress_filter=d.get('egress_filter'),
|
10646
|
+
healthy=d.get('healthy'),
|
10647
|
+
id=d.get('id'),
|
10648
|
+
identity_alias_healthcheck_username=d.get(
|
10649
|
+
'identity_alias_healthcheck_username'),
|
10650
|
+
identity_set_id=d.get('identity_set_id'),
|
10651
|
+
name=d.get('name'),
|
10652
|
+
port_override=d.get('port_override'),
|
10653
|
+
proxy_cluster_id=d.get('proxy_cluster_id'),
|
10654
|
+
scopes=d.get('scopes'),
|
10655
|
+
secret_store_id=d.get('secret_store_id'),
|
10656
|
+
session_expiry=d.get('session_expiry'),
|
10657
|
+
subdomain=d.get('subdomain'),
|
10658
|
+
tags=d.get('tags'),
|
10659
|
+
workforce_pool_id=d.get('workforce_pool_id'),
|
10660
|
+
workforce_provider_id=d.get('workforce_provider_id'),
|
10661
|
+
)
|
10662
|
+
|
10663
|
+
|
10181
10664
|
class Gateway:
|
10182
10665
|
'''
|
10183
10666
|
Gateway represents a StrongDM CLI installation running in gateway mode.
|