You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: strongdm/client.py
+11-7Lines changed: 11 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@
34
34
DEFAULT_RETRY_FACTOR=1.6
35
35
DEFAULT_RETRY_JITTER=0.2
36
36
API_VERSION='2025-04-14'
37
-
USER_AGENT='strongdm-sdk-python/15.26.0'
37
+
USER_AGENT='strongdm-sdk-python/15.28.0'
38
38
39
39
40
40
classClient:
@@ -294,9 +294,11 @@ def __init__(self,
294
294
'''
295
295
self.nodes=svc.Nodes(channel, self)
296
296
'''
297
-
Nodes make up the strongDM network, and allow your users to connect securely to your resources. There are two types of nodes:
298
-
- **Gateways** are the entry points into network. They listen for connection from the strongDM client, and provide access to databases and servers.
299
-
- **Relays** are used to extend the strongDM network into segmented subnets. They provide access to databases and servers but do not listen for incoming connections.
297
+
Nodes make up the StrongDM network, and allow your users to connect securely to your resources.
298
+
There are three types of nodes:
299
+
1. **Relay:** creates connectivity to your datasources, while maintaining the egress-only nature of your firewall
300
+
2. **Gateway:** a relay that also listens for connections from StrongDM clients
301
+
3. **Proxy Cluster:** a cluster of workers that together mediate access from clients to resources
300
302
301
303
See `strongdm.svc.Nodes`.
302
304
'''
@@ -735,9 +737,11 @@ def __init__(self, client):
735
737
'''
736
738
self.nodes=svc.SnapshotNodes(client.nodes)
737
739
'''
738
-
Nodes make up the strongDM network, and allow your users to connect securely to your resources. There are two types of nodes:
739
-
- **Gateways** are the entry points into network. They listen for connection from the strongDM client, and provide access to databases and servers.
740
-
- **Relays** are used to extend the strongDM network into segmented subnets. They provide access to databases and servers but do not listen for incoming connections.
740
+
Nodes make up the StrongDM network, and allow your users to connect securely to your resources.
741
+
There are three types of nodes:
742
+
1. **Relay:** creates connectivity to your datasources, while maintaining the egress-only nature of your firewall
743
+
2. **Gateway:** a relay that also listens for connections from StrongDM clients
744
+
3. **Proxy Cluster:** a cluster of workers that together mediate access from clients to resources
Copy file name to clipboardExpand all lines: strongdm/models.py
+260Lines changed: 260 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -12769,6 +12769,185 @@ def from_dict(cls, d):
12769
12769
)
12770
12770
12771
12771
12772
+
class ElasticacheRedisIAM:
12773
+
'''
12774
+
ElasticacheRedisIAM is currently unstable, and its API may change, or it may be removed,
12775
+
without a major version bump.
12776
+
'''
12777
+
__slots__ = [
12778
+
'bind_interface',
12779
+
'egress_filter',
12780
+
'healthy',
12781
+
'hostname',
12782
+
'id',
12783
+
'name',
12784
+
'port',
12785
+
'port_override',
12786
+
'proxy_cluster_id',
12787
+
'region',
12788
+
'role_assumption_arn',
12789
+
'role_external_id',
12790
+
'secret_store_id',
12791
+
'subdomain',
12792
+
'tags',
12793
+
'tls_required',
12794
+
'username',
12795
+
]
12796
+
12797
+
def __init__(
12798
+
self,
12799
+
bind_interface=None,
12800
+
egress_filter=None,
12801
+
healthy=None,
12802
+
hostname=None,
12803
+
id=None,
12804
+
name=None,
12805
+
port=None,
12806
+
port_override=None,
12807
+
proxy_cluster_id=None,
12808
+
region=None,
12809
+
role_assumption_arn=None,
12810
+
role_external_id=None,
12811
+
secret_store_id=None,
12812
+
subdomain=None,
12813
+
tags=None,
12814
+
tls_required=None,
12815
+
username=None,
12816
+
):
12817
+
self.bind_interface = bind_interface if bind_interface is not None else ''
12818
+
'''
12819
+
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 and may also be set to one of the ResourceIPAllocationMode constants to select between VNM, loopback, or default allocation.
12820
+
'''
12821
+
self.egress_filter = egress_filter if egress_filter is not None else ''
12822
+
'''
12823
+
A filter applied to the routing logic to pin datasource to nodes.
12824
+
'''
12825
+
self.healthy = healthy if healthy is not None else False
12826
+
'''
12827
+
True if the datasource is reachable and the credentials are valid.
12828
+
'''
12829
+
self.hostname = hostname if hostname is not None else ''
12830
+
'''
12831
+
The host to dial to initiate a connection from the egress node to this resource.
12832
+
'''
12833
+
self.id = id if id is not None else ''
12834
+
'''
12835
+
Unique identifier of the Resource.
12836
+
'''
12837
+
self.name = name if name is not None else ''
12838
+
'''
12839
+
Unique human-readable name of the Resource.
12840
+
'''
12841
+
self.port = port if port is not None else 0
12842
+
'''
12843
+
The port to dial to initiate a connection from the egress node to this resource.
12844
+
'''
12845
+
self.port_override = port_override if port_override is not None else 0
12846
+
'''
12847
+
The local port used by clients to connect to this resource. It is automatically generated if not provided on create and may be re-generated on update by specifying a value of -1.
12848
+
'''
12849
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
12850
+
'''
12851
+
ID of the proxy cluster for this resource, if any.
12852
+
'''
12853
+
self.region = region if region is not None else ''
12854
+
'''
12855
+
AWS region is needed in addition to hostname to generate the IAM signature
12856
+
'''
12857
+
self.role_assumption_arn = role_assumption_arn if role_assumption_arn is not None else ''
12858
+
'''
12859
+
If provided, the gateway/relay will try to assume this role instead of the underlying compute's role.
12860
+
'''
12861
+
self.role_external_id = role_external_id if role_external_id is not None else ''
12862
+
'''
12863
+
The external ID to associate with assume role requests. Does nothing if a role ARN is not provided.
12864
+
'''
12865
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
12866
+
'''
12867
+
ID of the secret store containing credentials for this resource, if any.
12868
+
'''
12869
+
self.subdomain = subdomain if subdomain is not None else ''
12870
+
'''
12871
+
DNS subdomain through which this resource may be accessed on clients. (e.g. "app-prod1" allows the resource to be accessed at "app-prod1.your-org-name.sdm-proxy-domain"). Only applicable to HTTP-based resources or resources using virtual networking mode.
12872
+
'''
12873
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
12874
+
'''
12875
+
Tags is a map of key, value pairs.
12876
+
'''
12877
+
self.tls_required = tls_required if tls_required is not None else False
12878
+
'''
12879
+
If set, TLS must be used to connect to this resource.
12880
+
'''
12881
+
self.username = username if username is not None else ''
0 commit comments