strongdm 13.11.0__zip → 14.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-13.11.0 → strongdm-14.0.0}/PKG-INFO +2 -2
- {strongdm-13.11.0 → strongdm-14.0.0}/setup.py +2 -2
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/accounts_pb2.py +12 -8
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_approvers_pb2.py +6 -6
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +4 -4
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_steps_pb2.py +30 -23
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_steps_pb2_grpc.py +4 -4
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflows_pb2.py +4 -4
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/client.py +15 -1
- strongdm-14.0.0/strongdm/managed_secrets_pb2.py +460 -0
- strongdm-14.0.0/strongdm/managed_secrets_pb2_grpc.py +398 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/models.py +2650 -423
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/plumbing.py +4486 -2790
- strongdm-14.0.0/strongdm/secret_engine_policy_pb2.py +78 -0
- strongdm-14.0.0/strongdm/secret_engine_types_pb2.py +147 -0
- strongdm-14.0.0/strongdm/secret_engines_pb2.py +325 -0
- strongdm-14.0.0/strongdm/secret_engines_pb2_grpc.py +355 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/svc.py +698 -12
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm.egg-info/PKG-INFO +2 -2
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm.egg-info/SOURCES.txt +6 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/LICENSE +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/README.md +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/setup.cfg +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/__init__.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/access_request_events_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/access_requests_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/access_requests_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/access_requests_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_attachments_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_attachments_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_grants_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_grants_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_grants_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_permissions_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_resources_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_resources_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/account_resources_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/accounts_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/accounts_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/activities_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/activities_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflows_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/constants.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/control_panel_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/control_panel_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/drivers_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/drivers_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/errors.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/health_checks_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/health_checks_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_aliases_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_aliases_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_sets_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_sets_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/nodes_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/nodes_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/nodes_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/options_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/options_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/organization_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/organization_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_group_nodes_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_group_peers_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_group_resources_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_groups_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/policies_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/policies_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/policies_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/policies_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/queries_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/queries_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identities_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identities_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identity_groups_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/replays_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/replays_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/resources_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/resources_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/resources_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/resources_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/role_resources_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/role_resources_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/role_resources_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/roles_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/roles_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/roles_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/roles_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_store_healths_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_store_types_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_stores_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_stores_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/spec_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/spec_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/tags_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/tags_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_approvers_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_assignments_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_assignments_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_assignments_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_assignments_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_roles_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_roles_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflows_history_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflows_pb2.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm/workflows_pb2_grpc.py +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm.egg-info/dependency_links.txt +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm.egg-info/requires.txt +0 -0
- {strongdm-13.11.0 → strongdm-14.0.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -3273,6 +3273,231 @@ class AccountUpdateResponse:
|
|
3273
3273
|
)
|
3274
3274
|
|
3275
3275
|
|
3276
|
+
class ActiveDirectoryEngine:
|
3277
|
+
'''
|
3278
|
+
ActiveDirectoryEngine is currently unstable, and its API may change, or it may be removed,
|
3279
|
+
without a major version bump.
|
3280
|
+
'''
|
3281
|
+
__slots__ = [
|
3282
|
+
'after_read_ttl',
|
3283
|
+
'binddn',
|
3284
|
+
'bindpass',
|
3285
|
+
'certificate',
|
3286
|
+
'connection_timeout',
|
3287
|
+
'do_not_validate_timestamps',
|
3288
|
+
'id',
|
3289
|
+
'insecure_tls',
|
3290
|
+
'key_rotation_interval_days',
|
3291
|
+
'max_backoff_duration',
|
3292
|
+
'name',
|
3293
|
+
'policy',
|
3294
|
+
'public_key',
|
3295
|
+
'request_timeout',
|
3296
|
+
'secret_store_id',
|
3297
|
+
'secret_store_root_path',
|
3298
|
+
'start_tls',
|
3299
|
+
'tags',
|
3300
|
+
'ttl',
|
3301
|
+
'upndomain',
|
3302
|
+
'url',
|
3303
|
+
'userdn',
|
3304
|
+
]
|
3305
|
+
|
3306
|
+
def __init__(
|
3307
|
+
self,
|
3308
|
+
after_read_ttl=None,
|
3309
|
+
binddn=None,
|
3310
|
+
bindpass=None,
|
3311
|
+
certificate=None,
|
3312
|
+
connection_timeout=None,
|
3313
|
+
do_not_validate_timestamps=None,
|
3314
|
+
id=None,
|
3315
|
+
insecure_tls=None,
|
3316
|
+
key_rotation_interval_days=None,
|
3317
|
+
max_backoff_duration=None,
|
3318
|
+
name=None,
|
3319
|
+
policy=None,
|
3320
|
+
public_key=None,
|
3321
|
+
request_timeout=None,
|
3322
|
+
secret_store_id=None,
|
3323
|
+
secret_store_root_path=None,
|
3324
|
+
start_tls=None,
|
3325
|
+
tags=None,
|
3326
|
+
ttl=None,
|
3327
|
+
upndomain=None,
|
3328
|
+
url=None,
|
3329
|
+
userdn=None,
|
3330
|
+
):
|
3331
|
+
self.after_read_ttl = after_read_ttl if after_read_ttl is not None else None
|
3332
|
+
'''
|
3333
|
+
The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.
|
3334
|
+
'''
|
3335
|
+
self.binddn = binddn if binddn is not None else ''
|
3336
|
+
'''
|
3337
|
+
Distinguished name of object to bind when performing user and group search. Example: cn=vault,ou=Users,dc=example,dc=com
|
3338
|
+
'''
|
3339
|
+
self.bindpass = bindpass if bindpass is not None else ''
|
3340
|
+
'''
|
3341
|
+
Password to use along with binddn when performing user search.
|
3342
|
+
'''
|
3343
|
+
self.certificate = certificate if certificate is not None else ''
|
3344
|
+
'''
|
3345
|
+
CA certificate to use when verifying LDAP server certificate, must be x509 PEM encoded.
|
3346
|
+
'''
|
3347
|
+
self.connection_timeout = connection_timeout if connection_timeout is not None else 0
|
3348
|
+
'''
|
3349
|
+
Timeout, in seconds, when attempting to connect to the LDAP server before trying the next URL in the configuration.
|
3350
|
+
'''
|
3351
|
+
self.do_not_validate_timestamps = do_not_validate_timestamps if do_not_validate_timestamps is not None else False
|
3352
|
+
'''
|
3353
|
+
If set to true this will prevent password change timestamp validation in Active Directory when validating credentials
|
3354
|
+
'''
|
3355
|
+
self.id = id if id is not None else ''
|
3356
|
+
'''
|
3357
|
+
Unique identifier of the Secret Engine.
|
3358
|
+
'''
|
3359
|
+
self.insecure_tls = insecure_tls if insecure_tls is not None else False
|
3360
|
+
'''
|
3361
|
+
If true, skips LDAP server SSL certificate verification - insecure, use with caution!
|
3362
|
+
'''
|
3363
|
+
self.key_rotation_interval_days = key_rotation_interval_days if key_rotation_interval_days is not None else 0
|
3364
|
+
'''
|
3365
|
+
An interval of public/private key rotation for secret engine in days
|
3366
|
+
'''
|
3367
|
+
self.max_backoff_duration = max_backoff_duration if max_backoff_duration is not None else None
|
3368
|
+
'''
|
3369
|
+
The maximum retry duration in case of automatic failure.
|
3370
|
+
On failed ttl rotation attempt it will be retried in an increasing intervals until it reaches max_backoff_duration
|
3371
|
+
'''
|
3372
|
+
self.name = name if name is not None else ''
|
3373
|
+
'''
|
3374
|
+
Unique human-readable name of the Secret Engine.
|
3375
|
+
'''
|
3376
|
+
self.policy = policy if policy is not None else None
|
3377
|
+
'''
|
3378
|
+
Policy for password creation
|
3379
|
+
'''
|
3380
|
+
self.public_key = public_key if public_key is not None else b''
|
3381
|
+
'''
|
3382
|
+
Public key linked with a secret engine
|
3383
|
+
'''
|
3384
|
+
self.request_timeout = request_timeout if request_timeout is not None else 0
|
3385
|
+
'''
|
3386
|
+
Timeout, in seconds, for the connection when making requests against the server before returning back an error.
|
3387
|
+
'''
|
3388
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
3389
|
+
'''
|
3390
|
+
Backing secret store identifier
|
3391
|
+
'''
|
3392
|
+
self.secret_store_root_path = secret_store_root_path if secret_store_root_path is not None else ''
|
3393
|
+
'''
|
3394
|
+
Backing Secret Store root path where managed secrets are going to be stored
|
3395
|
+
'''
|
3396
|
+
self.start_tls = start_tls if start_tls is not None else False
|
3397
|
+
'''
|
3398
|
+
If true, issues a StartTLS command after establishing an unencrypted connection.
|
3399
|
+
'''
|
3400
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
3401
|
+
'''
|
3402
|
+
Tags is a map of key, value pairs.
|
3403
|
+
'''
|
3404
|
+
self.ttl = ttl if ttl is not None else None
|
3405
|
+
'''
|
3406
|
+
The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.
|
3407
|
+
'''
|
3408
|
+
self.upndomain = upndomain if upndomain is not None else ''
|
3409
|
+
'''
|
3410
|
+
The domain (userPrincipalDomain) used to construct a UPN string for authentication.
|
3411
|
+
'''
|
3412
|
+
self.url = url if url is not None else ''
|
3413
|
+
'''
|
3414
|
+
The LDAP server to connect to.
|
3415
|
+
'''
|
3416
|
+
self.userdn = userdn if userdn is not None else ''
|
3417
|
+
'''
|
3418
|
+
Base DN under which to perform user search. Example: ou=Users,dc=example,dc=com
|
3419
|
+
'''
|
3420
|
+
|
3421
|
+
def __repr__(self):
|
3422
|
+
return '<sdm.ActiveDirectoryEngine ' + \
|
3423
|
+
'after_read_ttl: ' + repr(self.after_read_ttl) + ' ' +\
|
3424
|
+
'binddn: ' + repr(self.binddn) + ' ' +\
|
3425
|
+
'bindpass: ' + repr(self.bindpass) + ' ' +\
|
3426
|
+
'certificate: ' + repr(self.certificate) + ' ' +\
|
3427
|
+
'connection_timeout: ' + repr(self.connection_timeout) + ' ' +\
|
3428
|
+
'do_not_validate_timestamps: ' + repr(self.do_not_validate_timestamps) + ' ' +\
|
3429
|
+
'id: ' + repr(self.id) + ' ' +\
|
3430
|
+
'insecure_tls: ' + repr(self.insecure_tls) + ' ' +\
|
3431
|
+
'key_rotation_interval_days: ' + repr(self.key_rotation_interval_days) + ' ' +\
|
3432
|
+
'max_backoff_duration: ' + repr(self.max_backoff_duration) + ' ' +\
|
3433
|
+
'name: ' + repr(self.name) + ' ' +\
|
3434
|
+
'policy: ' + repr(self.policy) + ' ' +\
|
3435
|
+
'public_key: ' + repr(self.public_key) + ' ' +\
|
3436
|
+
'request_timeout: ' + repr(self.request_timeout) + ' ' +\
|
3437
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
3438
|
+
'secret_store_root_path: ' + repr(self.secret_store_root_path) + ' ' +\
|
3439
|
+
'start_tls: ' + repr(self.start_tls) + ' ' +\
|
3440
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
3441
|
+
'ttl: ' + repr(self.ttl) + ' ' +\
|
3442
|
+
'upndomain: ' + repr(self.upndomain) + ' ' +\
|
3443
|
+
'url: ' + repr(self.url) + ' ' +\
|
3444
|
+
'userdn: ' + repr(self.userdn) + ' ' +\
|
3445
|
+
'>'
|
3446
|
+
|
3447
|
+
def to_dict(self):
|
3448
|
+
return {
|
3449
|
+
'after_read_ttl': self.after_read_ttl,
|
3450
|
+
'binddn': self.binddn,
|
3451
|
+
'bindpass': self.bindpass,
|
3452
|
+
'certificate': self.certificate,
|
3453
|
+
'connection_timeout': self.connection_timeout,
|
3454
|
+
'do_not_validate_timestamps': self.do_not_validate_timestamps,
|
3455
|
+
'id': self.id,
|
3456
|
+
'insecure_tls': self.insecure_tls,
|
3457
|
+
'key_rotation_interval_days': self.key_rotation_interval_days,
|
3458
|
+
'max_backoff_duration': self.max_backoff_duration,
|
3459
|
+
'name': self.name,
|
3460
|
+
'policy': self.policy,
|
3461
|
+
'public_key': self.public_key,
|
3462
|
+
'request_timeout': self.request_timeout,
|
3463
|
+
'secret_store_id': self.secret_store_id,
|
3464
|
+
'secret_store_root_path': self.secret_store_root_path,
|
3465
|
+
'start_tls': self.start_tls,
|
3466
|
+
'tags': self.tags,
|
3467
|
+
'ttl': self.ttl,
|
3468
|
+
'upndomain': self.upndomain,
|
3469
|
+
'url': self.url,
|
3470
|
+
'userdn': self.userdn,
|
3471
|
+
}
|
3472
|
+
|
3473
|
+
@classmethod
|
3474
|
+
def from_dict(cls, d):
|
3475
|
+
return cls(
|
3476
|
+
after_read_ttl=d.get('after_read_ttl'),
|
3477
|
+
binddn=d.get('binddn'),
|
3478
|
+
bindpass=d.get('bindpass'),
|
3479
|
+
certificate=d.get('certificate'),
|
3480
|
+
connection_timeout=d.get('connection_timeout'),
|
3481
|
+
do_not_validate_timestamps=d.get('do_not_validate_timestamps'),
|
3482
|
+
id=d.get('id'),
|
3483
|
+
insecure_tls=d.get('insecure_tls'),
|
3484
|
+
key_rotation_interval_days=d.get('key_rotation_interval_days'),
|
3485
|
+
max_backoff_duration=d.get('max_backoff_duration'),
|
3486
|
+
name=d.get('name'),
|
3487
|
+
policy=d.get('policy'),
|
3488
|
+
public_key=d.get('public_key'),
|
3489
|
+
request_timeout=d.get('request_timeout'),
|
3490
|
+
secret_store_id=d.get('secret_store_id'),
|
3491
|
+
secret_store_root_path=d.get('secret_store_root_path'),
|
3492
|
+
start_tls=d.get('start_tls'),
|
3493
|
+
tags=d.get('tags'),
|
3494
|
+
ttl=d.get('ttl'),
|
3495
|
+
upndomain=d.get('upndomain'),
|
3496
|
+
url=d.get('url'),
|
3497
|
+
userdn=d.get('userdn'),
|
3498
|
+
)
|
3499
|
+
|
3500
|
+
|
3276
3501
|
class ActiveDirectoryStore:
|
3277
3502
|
__slots__ = [
|
3278
3503
|
'id',
|
@@ -4935,6 +5160,101 @@ class AmazonMQAMQP091:
|
|
4935
5160
|
)
|
4936
5161
|
|
4937
5162
|
|
5163
|
+
class ApprovalFlowApprover:
|
5164
|
+
'''
|
5165
|
+
An approver for an approval workflow step. Specifies either an account_id or an role_id (not both)
|
5166
|
+
'''
|
5167
|
+
__slots__ = [
|
5168
|
+
'account_id',
|
5169
|
+
'role_id',
|
5170
|
+
]
|
5171
|
+
|
5172
|
+
def __init__(
|
5173
|
+
self,
|
5174
|
+
account_id=None,
|
5175
|
+
role_id=None,
|
5176
|
+
):
|
5177
|
+
self.account_id = account_id if account_id is not None else ''
|
5178
|
+
'''
|
5179
|
+
The approver account id.
|
5180
|
+
'''
|
5181
|
+
self.role_id = role_id if role_id is not None else ''
|
5182
|
+
'''
|
5183
|
+
The approver role id
|
5184
|
+
'''
|
5185
|
+
|
5186
|
+
def __repr__(self):
|
5187
|
+
return '<sdm.ApprovalFlowApprover ' + \
|
5188
|
+
'account_id: ' + repr(self.account_id) + ' ' +\
|
5189
|
+
'role_id: ' + repr(self.role_id) + ' ' +\
|
5190
|
+
'>'
|
5191
|
+
|
5192
|
+
def to_dict(self):
|
5193
|
+
return {
|
5194
|
+
'account_id': self.account_id,
|
5195
|
+
'role_id': self.role_id,
|
5196
|
+
}
|
5197
|
+
|
5198
|
+
@classmethod
|
5199
|
+
def from_dict(cls, d):
|
5200
|
+
return cls(
|
5201
|
+
account_id=d.get('account_id'),
|
5202
|
+
role_id=d.get('role_id'),
|
5203
|
+
)
|
5204
|
+
|
5205
|
+
|
5206
|
+
class ApprovalFlowStep:
|
5207
|
+
'''
|
5208
|
+
An approval step for an approval workflow. Specifies approvers and conditions for approval to be granted.
|
5209
|
+
'''
|
5210
|
+
__slots__ = [
|
5211
|
+
'approvers',
|
5212
|
+
'quantifier',
|
5213
|
+
'skip_after',
|
5214
|
+
]
|
5215
|
+
|
5216
|
+
def __init__(
|
5217
|
+
self,
|
5218
|
+
approvers=None,
|
5219
|
+
quantifier=None,
|
5220
|
+
skip_after=None,
|
5221
|
+
):
|
5222
|
+
self.approvers = approvers if approvers is not None else []
|
5223
|
+
'''
|
5224
|
+
The approvers for this approval step
|
5225
|
+
'''
|
5226
|
+
self.quantifier = quantifier if quantifier is not None else ''
|
5227
|
+
'''
|
5228
|
+
Whether "any" or "all" approvers must approve for this approval step to pass. Optional, defaults to "any".
|
5229
|
+
'''
|
5230
|
+
self.skip_after = skip_after if skip_after is not None else None
|
5231
|
+
'''
|
5232
|
+
Duration after which this approval step will be skipped if no approval is given. Optional, if not provided an approver must approve before the step passes.
|
5233
|
+
'''
|
5234
|
+
|
5235
|
+
def __repr__(self):
|
5236
|
+
return '<sdm.ApprovalFlowStep ' + \
|
5237
|
+
'approvers: ' + repr(self.approvers) + ' ' +\
|
5238
|
+
'quantifier: ' + repr(self.quantifier) + ' ' +\
|
5239
|
+
'skip_after: ' + repr(self.skip_after) + ' ' +\
|
5240
|
+
'>'
|
5241
|
+
|
5242
|
+
def to_dict(self):
|
5243
|
+
return {
|
5244
|
+
'approvers': self.approvers,
|
5245
|
+
'quantifier': self.quantifier,
|
5246
|
+
'skip_after': self.skip_after,
|
5247
|
+
}
|
5248
|
+
|
5249
|
+
@classmethod
|
5250
|
+
def from_dict(cls, d):
|
5251
|
+
return cls(
|
5252
|
+
approvers=d.get('approvers'),
|
5253
|
+
quantifier=d.get('quantifier'),
|
5254
|
+
skip_after=d.get('skip_after'),
|
5255
|
+
)
|
5256
|
+
|
5257
|
+
|
4938
5258
|
class ApprovalWorkflow:
|
4939
5259
|
'''
|
4940
5260
|
ApprovalWorkflows are the mechanism by which requests for access can be viewed by authorized
|
@@ -4942,6 +5262,7 @@ class ApprovalWorkflow:
|
|
4942
5262
|
'''
|
4943
5263
|
__slots__ = [
|
4944
5264
|
'approval_mode',
|
5265
|
+
'approval_workflow_steps',
|
4945
5266
|
'description',
|
4946
5267
|
'id',
|
4947
5268
|
'name',
|
@@ -4950,6 +5271,7 @@ class ApprovalWorkflow:
|
|
4950
5271
|
def __init__(
|
4951
5272
|
self,
|
4952
5273
|
approval_mode=None,
|
5274
|
+
approval_workflow_steps=None,
|
4953
5275
|
description=None,
|
4954
5276
|
id=None,
|
4955
5277
|
name=None,
|
@@ -4958,6 +5280,10 @@ class ApprovalWorkflow:
|
|
4958
5280
|
'''
|
4959
5281
|
Approval mode of the ApprovalWorkflow
|
4960
5282
|
'''
|
5283
|
+
self.approval_workflow_steps = approval_workflow_steps if approval_workflow_steps is not None else []
|
5284
|
+
'''
|
5285
|
+
The approval steps of this approval workflow
|
5286
|
+
'''
|
4961
5287
|
self.description = description if description is not None else ''
|
4962
5288
|
'''
|
4963
5289
|
Optional description of the ApprovalWorkflow.
|
@@ -4974,6 +5300,7 @@ class ApprovalWorkflow:
|
|
4974
5300
|
def __repr__(self):
|
4975
5301
|
return '<sdm.ApprovalWorkflow ' + \
|
4976
5302
|
'approval_mode: ' + repr(self.approval_mode) + ' ' +\
|
5303
|
+
'approval_workflow_steps: ' + repr(self.approval_workflow_steps) + ' ' +\
|
4977
5304
|
'description: ' + repr(self.description) + ' ' +\
|
4978
5305
|
'id: ' + repr(self.id) + ' ' +\
|
4979
5306
|
'name: ' + repr(self.name) + ' ' +\
|
@@ -4982,6 +5309,7 @@ class ApprovalWorkflow:
|
|
4982
5309
|
def to_dict(self):
|
4983
5310
|
return {
|
4984
5311
|
'approval_mode': self.approval_mode,
|
5312
|
+
'approval_workflow_steps': self.approval_workflow_steps,
|
4985
5313
|
'description': self.description,
|
4986
5314
|
'id': self.id,
|
4987
5315
|
'name': self.name,
|
@@ -4991,6 +5319,7 @@ class ApprovalWorkflow:
|
|
4991
5319
|
def from_dict(cls, d):
|
4992
5320
|
return cls(
|
4993
5321
|
approval_mode=d.get('approval_mode'),
|
5322
|
+
approval_workflow_steps=d.get('approval_workflow_steps'),
|
4994
5323
|
description=d.get('description'),
|
4995
5324
|
id=d.get('id'),
|
4996
5325
|
name=d.get('name'),
|
@@ -5544,12 +5873,18 @@ class ApprovalWorkflowStep:
|
|
5544
5873
|
__slots__ = [
|
5545
5874
|
'approval_flow_id',
|
5546
5875
|
'id',
|
5876
|
+
'quantifier',
|
5877
|
+
'skip_after',
|
5878
|
+
'step_order',
|
5547
5879
|
]
|
5548
5880
|
|
5549
5881
|
def __init__(
|
5550
5882
|
self,
|
5551
5883
|
approval_flow_id=None,
|
5552
5884
|
id=None,
|
5885
|
+
quantifier=None,
|
5886
|
+
skip_after=None,
|
5887
|
+
step_order=None,
|
5553
5888
|
):
|
5554
5889
|
self.approval_flow_id = approval_flow_id if approval_flow_id is not None else ''
|
5555
5890
|
'''
|
@@ -5559,17 +5894,35 @@ class ApprovalWorkflowStep:
|
|
5559
5894
|
'''
|
5560
5895
|
Unique identifier of the ApprovalWorkflowStep.
|
5561
5896
|
'''
|
5897
|
+
self.quantifier = quantifier if quantifier is not None else ''
|
5898
|
+
'''
|
5899
|
+
Whether "any" or "all" approvers must approve for this approval step to pass. Read only field for history commands.
|
5900
|
+
'''
|
5901
|
+
self.skip_after = skip_after if skip_after is not None else None
|
5902
|
+
'''
|
5903
|
+
Duration after which this approval step will be skipped if no approval is given. Read only field for history commands.
|
5904
|
+
'''
|
5905
|
+
self.step_order = step_order if step_order is not None else 0
|
5906
|
+
'''
|
5907
|
+
The position of the approval step in a sequence of approval steps for an approval workflow. Read only field for history commands.
|
5908
|
+
'''
|
5562
5909
|
|
5563
5910
|
def __repr__(self):
|
5564
5911
|
return '<sdm.ApprovalWorkflowStep ' + \
|
5565
5912
|
'approval_flow_id: ' + repr(self.approval_flow_id) + ' ' +\
|
5566
5913
|
'id: ' + repr(self.id) + ' ' +\
|
5914
|
+
'quantifier: ' + repr(self.quantifier) + ' ' +\
|
5915
|
+
'skip_after: ' + repr(self.skip_after) + ' ' +\
|
5916
|
+
'step_order: ' + repr(self.step_order) + ' ' +\
|
5567
5917
|
'>'
|
5568
5918
|
|
5569
5919
|
def to_dict(self):
|
5570
5920
|
return {
|
5571
5921
|
'approval_flow_id': self.approval_flow_id,
|
5572
5922
|
'id': self.id,
|
5923
|
+
'quantifier': self.quantifier,
|
5924
|
+
'skip_after': self.skip_after,
|
5925
|
+
'step_order': self.step_order,
|
5573
5926
|
}
|
5574
5927
|
|
5575
5928
|
@classmethod
|
@@ -5577,6 +5930,9 @@ class ApprovalWorkflowStep:
|
|
5577
5930
|
return cls(
|
5578
5931
|
approval_flow_id=d.get('approval_flow_id'),
|
5579
5932
|
id=d.get('id'),
|
5933
|
+
quantifier=d.get('quantifier'),
|
5934
|
+
skip_after=d.get('skip_after'),
|
5935
|
+
step_order=d.get('step_order'),
|
5580
5936
|
)
|
5581
5937
|
|
5582
5938
|
|
@@ -12061,6 +12417,64 @@ class Gateway:
|
|
12061
12417
|
)
|
12062
12418
|
|
12063
12419
|
|
12420
|
+
class GenerateKeysRequest:
|
12421
|
+
__slots__ = [
|
12422
|
+
'secret_engine_id',
|
12423
|
+
]
|
12424
|
+
|
12425
|
+
def __init__(
|
12426
|
+
self,
|
12427
|
+
secret_engine_id=None,
|
12428
|
+
):
|
12429
|
+
self.secret_engine_id = secret_engine_id if secret_engine_id is not None else ''
|
12430
|
+
'''
|
12431
|
+
required
|
12432
|
+
'''
|
12433
|
+
|
12434
|
+
def __repr__(self):
|
12435
|
+
return '<sdm.GenerateKeysRequest ' + \
|
12436
|
+
'secret_engine_id: ' + repr(self.secret_engine_id) + ' ' +\
|
12437
|
+
'>'
|
12438
|
+
|
12439
|
+
def to_dict(self):
|
12440
|
+
return {
|
12441
|
+
'secret_engine_id': self.secret_engine_id,
|
12442
|
+
}
|
12443
|
+
|
12444
|
+
@classmethod
|
12445
|
+
def from_dict(cls, d):
|
12446
|
+
return cls(secret_engine_id=d.get('secret_engine_id'), )
|
12447
|
+
|
12448
|
+
|
12449
|
+
class GenerateKeysResponse:
|
12450
|
+
__slots__ = [
|
12451
|
+
'rate_limit',
|
12452
|
+
]
|
12453
|
+
|
12454
|
+
def __init__(
|
12455
|
+
self,
|
12456
|
+
rate_limit=None,
|
12457
|
+
):
|
12458
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
12459
|
+
'''
|
12460
|
+
Rate limit information.
|
12461
|
+
'''
|
12462
|
+
|
12463
|
+
def __repr__(self):
|
12464
|
+
return '<sdm.GenerateKeysResponse ' + \
|
12465
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
12466
|
+
'>'
|
12467
|
+
|
12468
|
+
def to_dict(self):
|
12469
|
+
return {
|
12470
|
+
'rate_limit': self.rate_limit,
|
12471
|
+
}
|
12472
|
+
|
12473
|
+
@classmethod
|
12474
|
+
def from_dict(cls, d):
|
12475
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
12476
|
+
|
12477
|
+
|
12064
12478
|
class GenericResponseMetadata:
|
12065
12479
|
'''
|
12066
12480
|
GenericResponseMetadata contains common headers for generic request
|
@@ -13216,38 +13630,150 @@ class HealthcheckListResponse:
|
|
13216
13630
|
return cls(rate_limit=d.get('rate_limit'), )
|
13217
13631
|
|
13218
13632
|
|
13219
|
-
class
|
13220
|
-
'''
|
13221
|
-
IdentityAliases define the username to be used for a specific account
|
13222
|
-
when connecting to a remote resource using that identity set.
|
13223
|
-
'''
|
13633
|
+
class HealthcheckRequest:
|
13224
13634
|
__slots__ = [
|
13225
|
-
'
|
13226
|
-
'id',
|
13227
|
-
'identity_set_id',
|
13228
|
-
'username',
|
13635
|
+
'secret_engine_id',
|
13229
13636
|
]
|
13230
13637
|
|
13231
13638
|
def __init__(
|
13232
13639
|
self,
|
13233
|
-
|
13234
|
-
id=None,
|
13235
|
-
identity_set_id=None,
|
13236
|
-
username=None,
|
13640
|
+
secret_engine_id=None,
|
13237
13641
|
):
|
13238
|
-
self.
|
13239
|
-
'''
|
13240
|
-
The account for this identity alias.
|
13642
|
+
self.secret_engine_id = secret_engine_id if secret_engine_id is not None else ''
|
13241
13643
|
'''
|
13242
|
-
|
13243
|
-
'''
|
13244
|
-
Unique identifier of the IdentityAlias.
|
13245
|
-
'''
|
13246
|
-
self.identity_set_id = identity_set_id if identity_set_id is not None else ''
|
13247
|
-
'''
|
13248
|
-
The identity set.
|
13644
|
+
required
|
13249
13645
|
'''
|
13250
|
-
|
13646
|
+
|
13647
|
+
def __repr__(self):
|
13648
|
+
return '<sdm.HealthcheckRequest ' + \
|
13649
|
+
'secret_engine_id: ' + repr(self.secret_engine_id) + ' ' +\
|
13650
|
+
'>'
|
13651
|
+
|
13652
|
+
def to_dict(self):
|
13653
|
+
return {
|
13654
|
+
'secret_engine_id': self.secret_engine_id,
|
13655
|
+
}
|
13656
|
+
|
13657
|
+
@classmethod
|
13658
|
+
def from_dict(cls, d):
|
13659
|
+
return cls(secret_engine_id=d.get('secret_engine_id'), )
|
13660
|
+
|
13661
|
+
|
13662
|
+
class HealthcheckResponse:
|
13663
|
+
__slots__ = [
|
13664
|
+
'rate_limit',
|
13665
|
+
'status',
|
13666
|
+
]
|
13667
|
+
|
13668
|
+
def __init__(
|
13669
|
+
self,
|
13670
|
+
rate_limit=None,
|
13671
|
+
status=None,
|
13672
|
+
):
|
13673
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
13674
|
+
'''
|
13675
|
+
Rate limit information.
|
13676
|
+
'''
|
13677
|
+
self.status = status if status is not None else []
|
13678
|
+
'''
|
13679
|
+
Array of statuses of all nodes serving a secret engine
|
13680
|
+
'''
|
13681
|
+
|
13682
|
+
def __repr__(self):
|
13683
|
+
return '<sdm.HealthcheckResponse ' + \
|
13684
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
13685
|
+
'status: ' + repr(self.status) + ' ' +\
|
13686
|
+
'>'
|
13687
|
+
|
13688
|
+
def to_dict(self):
|
13689
|
+
return {
|
13690
|
+
'rate_limit': self.rate_limit,
|
13691
|
+
'status': self.status,
|
13692
|
+
}
|
13693
|
+
|
13694
|
+
@classmethod
|
13695
|
+
def from_dict(cls, d):
|
13696
|
+
return cls(
|
13697
|
+
rate_limit=d.get('rate_limit'),
|
13698
|
+
status=d.get('status'),
|
13699
|
+
)
|
13700
|
+
|
13701
|
+
|
13702
|
+
class HealthcheckStatus:
|
13703
|
+
'''
|
13704
|
+
HealthcheckStatus contains status of a node health
|
13705
|
+
'''
|
13706
|
+
__slots__ = [
|
13707
|
+
'node_id',
|
13708
|
+
'status',
|
13709
|
+
]
|
13710
|
+
|
13711
|
+
def __init__(
|
13712
|
+
self,
|
13713
|
+
node_id=None,
|
13714
|
+
status=None,
|
13715
|
+
):
|
13716
|
+
self.node_id = node_id if node_id is not None else ''
|
13717
|
+
'''
|
13718
|
+
ID of node
|
13719
|
+
'''
|
13720
|
+
self.status = status if status is not None else ''
|
13721
|
+
'''
|
13722
|
+
Status of node's health
|
13723
|
+
'''
|
13724
|
+
|
13725
|
+
def __repr__(self):
|
13726
|
+
return '<sdm.HealthcheckStatus ' + \
|
13727
|
+
'node_id: ' + repr(self.node_id) + ' ' +\
|
13728
|
+
'status: ' + repr(self.status) + ' ' +\
|
13729
|
+
'>'
|
13730
|
+
|
13731
|
+
def to_dict(self):
|
13732
|
+
return {
|
13733
|
+
'node_id': self.node_id,
|
13734
|
+
'status': self.status,
|
13735
|
+
}
|
13736
|
+
|
13737
|
+
@classmethod
|
13738
|
+
def from_dict(cls, d):
|
13739
|
+
return cls(
|
13740
|
+
node_id=d.get('node_id'),
|
13741
|
+
status=d.get('status'),
|
13742
|
+
)
|
13743
|
+
|
13744
|
+
|
13745
|
+
class IdentityAlias:
|
13746
|
+
'''
|
13747
|
+
IdentityAliases define the username to be used for a specific account
|
13748
|
+
when connecting to a remote resource using that identity set.
|
13749
|
+
'''
|
13750
|
+
__slots__ = [
|
13751
|
+
'account_id',
|
13752
|
+
'id',
|
13753
|
+
'identity_set_id',
|
13754
|
+
'username',
|
13755
|
+
]
|
13756
|
+
|
13757
|
+
def __init__(
|
13758
|
+
self,
|
13759
|
+
account_id=None,
|
13760
|
+
id=None,
|
13761
|
+
identity_set_id=None,
|
13762
|
+
username=None,
|
13763
|
+
):
|
13764
|
+
self.account_id = account_id if account_id is not None else ''
|
13765
|
+
'''
|
13766
|
+
The account for this identity alias.
|
13767
|
+
'''
|
13768
|
+
self.id = id if id is not None else ''
|
13769
|
+
'''
|
13770
|
+
Unique identifier of the IdentityAlias.
|
13771
|
+
'''
|
13772
|
+
self.identity_set_id = identity_set_id if identity_set_id is not None else ''
|
13773
|
+
'''
|
13774
|
+
The identity set.
|
13775
|
+
'''
|
13776
|
+
self.username = username if username is not None else ''
|
13251
13777
|
'''
|
13252
13778
|
The username to be used as the identity alias for this account.
|
13253
13779
|
'''
|
@@ -13850,6 +14376,95 @@ class IdentitySetUpdateResponse:
|
|
13850
14376
|
)
|
13851
14377
|
|
13852
14378
|
|
14379
|
+
class KeyValueEngine:
|
14380
|
+
'''
|
14381
|
+
KeyValueEngine is currently unstable, and its API may change, or it may be removed,
|
14382
|
+
without a major version bump.
|
14383
|
+
'''
|
14384
|
+
__slots__ = [
|
14385
|
+
'id',
|
14386
|
+
'key_rotation_interval_days',
|
14387
|
+
'name',
|
14388
|
+
'public_key',
|
14389
|
+
'secret_store_id',
|
14390
|
+
'secret_store_root_path',
|
14391
|
+
'tags',
|
14392
|
+
]
|
14393
|
+
|
14394
|
+
def __init__(
|
14395
|
+
self,
|
14396
|
+
id=None,
|
14397
|
+
key_rotation_interval_days=None,
|
14398
|
+
name=None,
|
14399
|
+
public_key=None,
|
14400
|
+
secret_store_id=None,
|
14401
|
+
secret_store_root_path=None,
|
14402
|
+
tags=None,
|
14403
|
+
):
|
14404
|
+
self.id = id if id is not None else ''
|
14405
|
+
'''
|
14406
|
+
Unique identifier of the Secret Engine.
|
14407
|
+
'''
|
14408
|
+
self.key_rotation_interval_days = key_rotation_interval_days if key_rotation_interval_days is not None else 0
|
14409
|
+
'''
|
14410
|
+
An interval of public/private key rotation for secret engine in days
|
14411
|
+
'''
|
14412
|
+
self.name = name if name is not None else ''
|
14413
|
+
'''
|
14414
|
+
Unique human-readable name of the Secret Engine.
|
14415
|
+
'''
|
14416
|
+
self.public_key = public_key if public_key is not None else b''
|
14417
|
+
'''
|
14418
|
+
Public key linked with a secret engine
|
14419
|
+
'''
|
14420
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
14421
|
+
'''
|
14422
|
+
Backing secret store identifier
|
14423
|
+
'''
|
14424
|
+
self.secret_store_root_path = secret_store_root_path if secret_store_root_path is not None else ''
|
14425
|
+
'''
|
14426
|
+
Backing Secret Store root path where managed secrets are going to be stored
|
14427
|
+
'''
|
14428
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
14429
|
+
'''
|
14430
|
+
Tags is a map of key, value pairs.
|
14431
|
+
'''
|
14432
|
+
|
14433
|
+
def __repr__(self):
|
14434
|
+
return '<sdm.KeyValueEngine ' + \
|
14435
|
+
'id: ' + repr(self.id) + ' ' +\
|
14436
|
+
'key_rotation_interval_days: ' + repr(self.key_rotation_interval_days) + ' ' +\
|
14437
|
+
'name: ' + repr(self.name) + ' ' +\
|
14438
|
+
'public_key: ' + repr(self.public_key) + ' ' +\
|
14439
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
14440
|
+
'secret_store_root_path: ' + repr(self.secret_store_root_path) + ' ' +\
|
14441
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
14442
|
+
'>'
|
14443
|
+
|
14444
|
+
def to_dict(self):
|
14445
|
+
return {
|
14446
|
+
'id': self.id,
|
14447
|
+
'key_rotation_interval_days': self.key_rotation_interval_days,
|
14448
|
+
'name': self.name,
|
14449
|
+
'public_key': self.public_key,
|
14450
|
+
'secret_store_id': self.secret_store_id,
|
14451
|
+
'secret_store_root_path': self.secret_store_root_path,
|
14452
|
+
'tags': self.tags,
|
14453
|
+
}
|
14454
|
+
|
14455
|
+
@classmethod
|
14456
|
+
def from_dict(cls, d):
|
14457
|
+
return cls(
|
14458
|
+
id=d.get('id'),
|
14459
|
+
key_rotation_interval_days=d.get('key_rotation_interval_days'),
|
14460
|
+
name=d.get('name'),
|
14461
|
+
public_key=d.get('public_key'),
|
14462
|
+
secret_store_id=d.get('secret_store_id'),
|
14463
|
+
secret_store_root_path=d.get('secret_store_root_path'),
|
14464
|
+
tags=d.get('tags'),
|
14465
|
+
)
|
14466
|
+
|
14467
|
+
|
13853
14468
|
class KeyfactorSSHStore:
|
13854
14469
|
__slots__ = [
|
13855
14470
|
'ca_file_path',
|
@@ -15600,365 +16215,1422 @@ class MTLSPostgres:
|
|
15600
16215
|
)
|
15601
16216
|
|
15602
16217
|
|
15603
|
-
class
|
16218
|
+
class ManagedSecret:
|
16219
|
+
'''
|
16220
|
+
ManagedSecret contains details about managed secret
|
16221
|
+
'''
|
15604
16222
|
__slots__ = [
|
15605
|
-
'
|
15606
|
-
'
|
15607
|
-
'egress_filter',
|
15608
|
-
'healthy',
|
15609
|
-
'hostname',
|
16223
|
+
'config',
|
16224
|
+
'expires_at',
|
15610
16225
|
'id',
|
16226
|
+
'last_rotated_at',
|
15611
16227
|
'name',
|
15612
|
-
'
|
15613
|
-
'
|
15614
|
-
'
|
15615
|
-
'proxy_cluster_id',
|
15616
|
-
'require_native_auth',
|
15617
|
-
'secret_store_id',
|
15618
|
-
'subdomain',
|
16228
|
+
'policy',
|
16229
|
+
'secret_engine_id',
|
16230
|
+
'secret_store_path',
|
15619
16231
|
'tags',
|
15620
|
-
'
|
15621
|
-
'username',
|
16232
|
+
'value',
|
15622
16233
|
]
|
15623
16234
|
|
15624
16235
|
def __init__(
|
15625
16236
|
self,
|
15626
|
-
|
15627
|
-
|
15628
|
-
egress_filter=None,
|
15629
|
-
healthy=None,
|
15630
|
-
hostname=None,
|
16237
|
+
config=None,
|
16238
|
+
expires_at=None,
|
15631
16239
|
id=None,
|
16240
|
+
last_rotated_at=None,
|
15632
16241
|
name=None,
|
15633
|
-
|
15634
|
-
|
15635
|
-
|
15636
|
-
proxy_cluster_id=None,
|
15637
|
-
require_native_auth=None,
|
15638
|
-
secret_store_id=None,
|
15639
|
-
subdomain=None,
|
16242
|
+
policy=None,
|
16243
|
+
secret_engine_id=None,
|
16244
|
+
secret_store_path=None,
|
15640
16245
|
tags=None,
|
15641
|
-
|
15642
|
-
username=None,
|
16246
|
+
value=None,
|
15643
16247
|
):
|
15644
|
-
self.
|
15645
|
-
'''
|
15646
|
-
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.
|
15647
|
-
'''
|
15648
|
-
self.database = database if database is not None else ''
|
15649
|
-
'''
|
15650
|
-
The database for healthchecks. Does not affect client requests.
|
15651
|
-
'''
|
15652
|
-
self.egress_filter = egress_filter if egress_filter is not None else ''
|
16248
|
+
self.config = config if config is not None else ''
|
15653
16249
|
'''
|
15654
|
-
|
16250
|
+
public part of the secret value
|
15655
16251
|
'''
|
15656
|
-
self.
|
16252
|
+
self.expires_at = expires_at if expires_at is not None else None
|
15657
16253
|
'''
|
15658
|
-
|
16254
|
+
Timestamp of when secret is going to be rotated
|
15659
16255
|
'''
|
15660
|
-
self.
|
16256
|
+
self.id = id if id is not None else ''
|
15661
16257
|
'''
|
15662
|
-
|
16258
|
+
Unique identifier of the Managed Secret.
|
15663
16259
|
'''
|
15664
|
-
self.
|
16260
|
+
self.last_rotated_at = last_rotated_at if last_rotated_at is not None else None
|
15665
16261
|
'''
|
15666
|
-
|
16262
|
+
Timestamp of when secret was last rotated
|
15667
16263
|
'''
|
15668
16264
|
self.name = name if name is not None else ''
|
15669
16265
|
'''
|
15670
|
-
Unique human-readable name of the
|
15671
|
-
'''
|
15672
|
-
self.password = password if password is not None else ''
|
16266
|
+
Unique human-readable name of the Managed Secret.
|
15673
16267
|
'''
|
15674
|
-
|
16268
|
+
self.policy = policy if policy is not None else None
|
15675
16269
|
'''
|
15676
|
-
|
16270
|
+
Password and rotation policy for the secret
|
15677
16271
|
'''
|
15678
|
-
|
16272
|
+
self.secret_engine_id = secret_engine_id if secret_engine_id is not None else ''
|
15679
16273
|
'''
|
15680
|
-
|
16274
|
+
An ID of a Secret Engine linked with the Managed Secret.
|
15681
16275
|
'''
|
15682
|
-
|
16276
|
+
self.secret_store_path = secret_store_path if secret_store_path is not None else ''
|
15683
16277
|
'''
|
15684
|
-
|
16278
|
+
Path in a secret store.
|
15685
16279
|
'''
|
15686
|
-
|
16280
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
15687
16281
|
'''
|
15688
|
-
|
16282
|
+
Tags is a map of key, value pairs.
|
15689
16283
|
'''
|
15690
|
-
|
16284
|
+
self.value = value if value is not None else b''
|
15691
16285
|
'''
|
15692
|
-
|
15693
|
-
'''
|
15694
|
-
ID of the secret store containing credentials for this resource, if any.
|
15695
|
-
'''
|
15696
|
-
self.subdomain = subdomain if subdomain is not None else ''
|
15697
|
-
'''
|
15698
|
-
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
15699
|
-
'''
|
15700
|
-
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
15701
|
-
'''
|
15702
|
-
Tags is a map of key, value pairs.
|
15703
|
-
'''
|
15704
|
-
self.use_azure_single_server_usernames = use_azure_single_server_usernames if use_azure_single_server_usernames is not None else False
|
15705
|
-
'''
|
15706
|
-
If true, appends the hostname to the username when hitting a database.azure.com address
|
15707
|
-
'''
|
15708
|
-
self.username = username if username is not None else ''
|
15709
|
-
'''
|
15710
|
-
The username to authenticate with.
|
16286
|
+
Sensitive value of the secret.
|
15711
16287
|
'''
|
15712
16288
|
|
15713
16289
|
def __repr__(self):
|
15714
|
-
return '<sdm.
|
15715
|
-
'
|
15716
|
-
'
|
15717
|
-
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
15718
|
-
'healthy: ' + repr(self.healthy) + ' ' +\
|
15719
|
-
'hostname: ' + repr(self.hostname) + ' ' +\
|
16290
|
+
return '<sdm.ManagedSecret ' + \
|
16291
|
+
'config: ' + repr(self.config) + ' ' +\
|
16292
|
+
'expires_at: ' + repr(self.expires_at) + ' ' +\
|
15720
16293
|
'id: ' + repr(self.id) + ' ' +\
|
16294
|
+
'last_rotated_at: ' + repr(self.last_rotated_at) + ' ' +\
|
15721
16295
|
'name: ' + repr(self.name) + ' ' +\
|
15722
|
-
'
|
15723
|
-
'
|
15724
|
-
'
|
15725
|
-
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
15726
|
-
'require_native_auth: ' + repr(self.require_native_auth) + ' ' +\
|
15727
|
-
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
15728
|
-
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
16296
|
+
'policy: ' + repr(self.policy) + ' ' +\
|
16297
|
+
'secret_engine_id: ' + repr(self.secret_engine_id) + ' ' +\
|
16298
|
+
'secret_store_path: ' + repr(self.secret_store_path) + ' ' +\
|
15729
16299
|
'tags: ' + repr(self.tags) + ' ' +\
|
15730
|
-
'
|
15731
|
-
'username: ' + repr(self.username) + ' ' +\
|
16300
|
+
'value: ' + repr(self.value) + ' ' +\
|
15732
16301
|
'>'
|
15733
16302
|
|
15734
16303
|
def to_dict(self):
|
15735
16304
|
return {
|
15736
|
-
'
|
15737
|
-
'
|
15738
|
-
'egress_filter': self.egress_filter,
|
15739
|
-
'healthy': self.healthy,
|
15740
|
-
'hostname': self.hostname,
|
16305
|
+
'config': self.config,
|
16306
|
+
'expires_at': self.expires_at,
|
15741
16307
|
'id': self.id,
|
16308
|
+
'last_rotated_at': self.last_rotated_at,
|
15742
16309
|
'name': self.name,
|
15743
|
-
'
|
15744
|
-
'
|
15745
|
-
'
|
15746
|
-
'proxy_cluster_id': self.proxy_cluster_id,
|
15747
|
-
'require_native_auth': self.require_native_auth,
|
15748
|
-
'secret_store_id': self.secret_store_id,
|
15749
|
-
'subdomain': self.subdomain,
|
16310
|
+
'policy': self.policy,
|
16311
|
+
'secret_engine_id': self.secret_engine_id,
|
16312
|
+
'secret_store_path': self.secret_store_path,
|
15750
16313
|
'tags': self.tags,
|
15751
|
-
'
|
15752
|
-
self.use_azure_single_server_usernames,
|
15753
|
-
'username': self.username,
|
16314
|
+
'value': self.value,
|
15754
16315
|
}
|
15755
16316
|
|
15756
16317
|
@classmethod
|
15757
16318
|
def from_dict(cls, d):
|
15758
16319
|
return cls(
|
15759
|
-
|
15760
|
-
|
15761
|
-
egress_filter=d.get('egress_filter'),
|
15762
|
-
healthy=d.get('healthy'),
|
15763
|
-
hostname=d.get('hostname'),
|
16320
|
+
config=d.get('config'),
|
16321
|
+
expires_at=d.get('expires_at'),
|
15764
16322
|
id=d.get('id'),
|
16323
|
+
last_rotated_at=d.get('last_rotated_at'),
|
15765
16324
|
name=d.get('name'),
|
15766
|
-
|
15767
|
-
|
15768
|
-
|
15769
|
-
proxy_cluster_id=d.get('proxy_cluster_id'),
|
15770
|
-
require_native_auth=d.get('require_native_auth'),
|
15771
|
-
secret_store_id=d.get('secret_store_id'),
|
15772
|
-
subdomain=d.get('subdomain'),
|
16325
|
+
policy=d.get('policy'),
|
16326
|
+
secret_engine_id=d.get('secret_engine_id'),
|
16327
|
+
secret_store_path=d.get('secret_store_path'),
|
15773
16328
|
tags=d.get('tags'),
|
15774
|
-
|
15775
|
-
'use_azure_single_server_usernames'),
|
15776
|
-
username=d.get('username'),
|
16329
|
+
value=d.get('value'),
|
15777
16330
|
)
|
15778
16331
|
|
15779
16332
|
|
15780
|
-
class
|
16333
|
+
class ManagedSecretCreateRequest:
|
16334
|
+
'''
|
16335
|
+
ManagedSecretCreateRequest specifies a Managed Secret to create.
|
16336
|
+
'''
|
15781
16337
|
__slots__ = [
|
15782
|
-
'
|
15783
|
-
'egress_filter',
|
15784
|
-
'healthy',
|
15785
|
-
'hostname',
|
15786
|
-
'id',
|
15787
|
-
'name',
|
15788
|
-
'port',
|
15789
|
-
'port_override',
|
15790
|
-
'proxy_cluster_id',
|
15791
|
-
'secret_store_id',
|
15792
|
-
'subdomain',
|
15793
|
-
'tags',
|
16338
|
+
'managed_secret',
|
15794
16339
|
]
|
15795
16340
|
|
15796
16341
|
def __init__(
|
15797
16342
|
self,
|
15798
|
-
|
15799
|
-
egress_filter=None,
|
15800
|
-
healthy=None,
|
15801
|
-
hostname=None,
|
15802
|
-
id=None,
|
15803
|
-
name=None,
|
15804
|
-
port=None,
|
15805
|
-
port_override=None,
|
15806
|
-
proxy_cluster_id=None,
|
15807
|
-
secret_store_id=None,
|
15808
|
-
subdomain=None,
|
15809
|
-
tags=None,
|
16343
|
+
managed_secret=None,
|
15810
16344
|
):
|
15811
|
-
self.
|
15812
|
-
'''
|
15813
|
-
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.
|
15814
|
-
'''
|
15815
|
-
self.egress_filter = egress_filter if egress_filter is not None else ''
|
15816
|
-
'''
|
15817
|
-
A filter applied to the routing logic to pin datasource to nodes.
|
15818
|
-
'''
|
15819
|
-
self.healthy = healthy if healthy is not None else False
|
15820
|
-
'''
|
15821
|
-
True if the datasource is reachable and the credentials are valid.
|
15822
|
-
'''
|
15823
|
-
self.hostname = hostname if hostname is not None else ''
|
15824
|
-
'''
|
15825
|
-
The host to dial to initiate a connection from the egress node to this resource.
|
15826
|
-
'''
|
15827
|
-
self.id = id if id is not None else ''
|
15828
|
-
'''
|
15829
|
-
Unique identifier of the Resource.
|
15830
|
-
'''
|
15831
|
-
self.name = name if name is not None else ''
|
15832
|
-
'''
|
15833
|
-
Unique human-readable name of the Resource.
|
15834
|
-
'''
|
15835
|
-
self.port = port if port is not None else 0
|
15836
|
-
'''
|
15837
|
-
The port to dial to initiate a connection from the egress node to this resource.
|
15838
|
-
'''
|
15839
|
-
self.port_override = port_override if port_override is not None else 0
|
16345
|
+
self.managed_secret = managed_secret if managed_secret is not None else None
|
15840
16346
|
'''
|
15841
|
-
|
15842
|
-
'''
|
15843
|
-
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
15844
|
-
'''
|
15845
|
-
ID of the proxy cluster for this resource, if any.
|
16347
|
+
Parameters to define the new Managed Secret.
|
15846
16348
|
'''
|
15847
|
-
|
16349
|
+
|
16350
|
+
def __repr__(self):
|
16351
|
+
return '<sdm.ManagedSecretCreateRequest ' + \
|
16352
|
+
'managed_secret: ' + repr(self.managed_secret) + ' ' +\
|
16353
|
+
'>'
|
16354
|
+
|
16355
|
+
def to_dict(self):
|
16356
|
+
return {
|
16357
|
+
'managed_secret': self.managed_secret,
|
16358
|
+
}
|
16359
|
+
|
16360
|
+
@classmethod
|
16361
|
+
def from_dict(cls, d):
|
16362
|
+
return cls(managed_secret=d.get('managed_secret'), )
|
16363
|
+
|
16364
|
+
|
16365
|
+
class ManagedSecretCreateResponse:
|
16366
|
+
'''
|
16367
|
+
ManagedSecretCreateResponse contains information about a Managed Secret after
|
16368
|
+
successful creation.
|
16369
|
+
'''
|
16370
|
+
__slots__ = [
|
16371
|
+
'managed_secret',
|
16372
|
+
'meta',
|
16373
|
+
'rate_limit',
|
16374
|
+
]
|
16375
|
+
|
16376
|
+
def __init__(
|
16377
|
+
self,
|
16378
|
+
managed_secret=None,
|
16379
|
+
meta=None,
|
16380
|
+
rate_limit=None,
|
16381
|
+
):
|
16382
|
+
self.managed_secret = managed_secret if managed_secret is not None else None
|
15848
16383
|
'''
|
15849
|
-
|
16384
|
+
The requested Managed Secret.
|
15850
16385
|
'''
|
15851
|
-
self.
|
16386
|
+
self.meta = meta if meta is not None else None
|
15852
16387
|
'''
|
15853
|
-
|
16388
|
+
Reserved for future use.
|
15854
16389
|
'''
|
15855
|
-
self.
|
16390
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
15856
16391
|
'''
|
15857
|
-
|
16392
|
+
Rate limit information.
|
15858
16393
|
'''
|
15859
16394
|
|
15860
16395
|
def __repr__(self):
|
15861
|
-
return '<sdm.
|
15862
|
-
'
|
15863
|
-
'
|
15864
|
-
'
|
15865
|
-
'hostname: ' + repr(self.hostname) + ' ' +\
|
15866
|
-
'id: ' + repr(self.id) + ' ' +\
|
15867
|
-
'name: ' + repr(self.name) + ' ' +\
|
15868
|
-
'port: ' + repr(self.port) + ' ' +\
|
15869
|
-
'port_override: ' + repr(self.port_override) + ' ' +\
|
15870
|
-
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
15871
|
-
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
15872
|
-
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
15873
|
-
'tags: ' + repr(self.tags) + ' ' +\
|
16396
|
+
return '<sdm.ManagedSecretCreateResponse ' + \
|
16397
|
+
'managed_secret: ' + repr(self.managed_secret) + ' ' +\
|
16398
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
16399
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
15874
16400
|
'>'
|
15875
16401
|
|
15876
16402
|
def to_dict(self):
|
15877
16403
|
return {
|
15878
|
-
'
|
15879
|
-
'
|
15880
|
-
'
|
15881
|
-
'hostname': self.hostname,
|
15882
|
-
'id': self.id,
|
15883
|
-
'name': self.name,
|
15884
|
-
'port': self.port,
|
15885
|
-
'port_override': self.port_override,
|
15886
|
-
'proxy_cluster_id': self.proxy_cluster_id,
|
15887
|
-
'secret_store_id': self.secret_store_id,
|
15888
|
-
'subdomain': self.subdomain,
|
15889
|
-
'tags': self.tags,
|
16404
|
+
'managed_secret': self.managed_secret,
|
16405
|
+
'meta': self.meta,
|
16406
|
+
'rate_limit': self.rate_limit,
|
15890
16407
|
}
|
15891
16408
|
|
15892
16409
|
@classmethod
|
15893
16410
|
def from_dict(cls, d):
|
15894
16411
|
return cls(
|
15895
|
-
|
15896
|
-
|
15897
|
-
|
15898
|
-
hostname=d.get('hostname'),
|
15899
|
-
id=d.get('id'),
|
15900
|
-
name=d.get('name'),
|
15901
|
-
port=d.get('port'),
|
15902
|
-
port_override=d.get('port_override'),
|
15903
|
-
proxy_cluster_id=d.get('proxy_cluster_id'),
|
15904
|
-
secret_store_id=d.get('secret_store_id'),
|
15905
|
-
subdomain=d.get('subdomain'),
|
15906
|
-
tags=d.get('tags'),
|
16412
|
+
managed_secret=d.get('managed_secret'),
|
16413
|
+
meta=d.get('meta'),
|
16414
|
+
rate_limit=d.get('rate_limit'),
|
15907
16415
|
)
|
15908
16416
|
|
15909
16417
|
|
15910
|
-
class
|
16418
|
+
class ManagedSecretDeleteRequest:
|
16419
|
+
'''
|
16420
|
+
ManagedSecretDeleteRequest specified the ID of a Managed Secret to be
|
16421
|
+
deleted.
|
16422
|
+
'''
|
15911
16423
|
__slots__ = [
|
15912
|
-
'bind_interface',
|
15913
|
-
'database',
|
15914
|
-
'egress_filter',
|
15915
|
-
'healthy',
|
15916
|
-
'hostname',
|
15917
16424
|
'id',
|
15918
|
-
'name',
|
15919
|
-
'password',
|
15920
|
-
'port',
|
15921
|
-
'port_override',
|
15922
|
-
'proxy_cluster_id',
|
15923
|
-
'require_native_auth',
|
15924
|
-
'secret_store_id',
|
15925
|
-
'subdomain',
|
15926
|
-
'tags',
|
15927
|
-
'use_azure_single_server_usernames',
|
15928
|
-
'username',
|
15929
16425
|
]
|
15930
16426
|
|
15931
16427
|
def __init__(
|
15932
16428
|
self,
|
15933
|
-
bind_interface=None,
|
15934
|
-
database=None,
|
15935
|
-
egress_filter=None,
|
15936
|
-
healthy=None,
|
15937
|
-
hostname=None,
|
15938
16429
|
id=None,
|
15939
|
-
name=None,
|
15940
|
-
password=None,
|
15941
|
-
port=None,
|
15942
|
-
port_override=None,
|
15943
|
-
proxy_cluster_id=None,
|
15944
|
-
require_native_auth=None,
|
15945
|
-
secret_store_id=None,
|
15946
|
-
subdomain=None,
|
15947
|
-
tags=None,
|
15948
|
-
use_azure_single_server_usernames=None,
|
15949
|
-
username=None,
|
15950
16430
|
):
|
15951
|
-
self.
|
15952
|
-
'''
|
15953
|
-
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.
|
15954
|
-
'''
|
15955
|
-
self.database = database if database is not None else ''
|
15956
|
-
'''
|
15957
|
-
The database for healthchecks. Does not affect client requests.
|
15958
|
-
'''
|
15959
|
-
self.egress_filter = egress_filter if egress_filter is not None else ''
|
16431
|
+
self.id = id if id is not None else ''
|
15960
16432
|
'''
|
15961
|
-
|
16433
|
+
The unique identifier of the Managed Secret to delete.
|
16434
|
+
'''
|
16435
|
+
|
16436
|
+
def __repr__(self):
|
16437
|
+
return '<sdm.ManagedSecretDeleteRequest ' + \
|
16438
|
+
'id: ' + repr(self.id) + ' ' +\
|
16439
|
+
'>'
|
16440
|
+
|
16441
|
+
def to_dict(self):
|
16442
|
+
return {
|
16443
|
+
'id': self.id,
|
16444
|
+
}
|
16445
|
+
|
16446
|
+
@classmethod
|
16447
|
+
def from_dict(cls, d):
|
16448
|
+
return cls(id=d.get('id'), )
|
16449
|
+
|
16450
|
+
|
16451
|
+
class ManagedSecretDeleteResponse:
|
16452
|
+
'''
|
16453
|
+
ManagedSecretDeleteResponse contains information about a Managed Secret after
|
16454
|
+
it was deleted.
|
16455
|
+
'''
|
16456
|
+
__slots__ = [
|
16457
|
+
'rate_limit',
|
16458
|
+
]
|
16459
|
+
|
16460
|
+
def __init__(
|
16461
|
+
self,
|
16462
|
+
rate_limit=None,
|
16463
|
+
):
|
16464
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
16465
|
+
'''
|
16466
|
+
Rate limit information.
|
16467
|
+
'''
|
16468
|
+
|
16469
|
+
def __repr__(self):
|
16470
|
+
return '<sdm.ManagedSecretDeleteResponse ' + \
|
16471
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
16472
|
+
'>'
|
16473
|
+
|
16474
|
+
def to_dict(self):
|
16475
|
+
return {
|
16476
|
+
'rate_limit': self.rate_limit,
|
16477
|
+
}
|
16478
|
+
|
16479
|
+
@classmethod
|
16480
|
+
def from_dict(cls, d):
|
16481
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
16482
|
+
|
16483
|
+
|
16484
|
+
class ManagedSecretGetRequest:
|
16485
|
+
'''
|
16486
|
+
ManagedSecretGetRequest specifies which Managed Secret to retrieve
|
16487
|
+
'''
|
16488
|
+
__slots__ = [
|
16489
|
+
'id',
|
16490
|
+
]
|
16491
|
+
|
16492
|
+
def __init__(
|
16493
|
+
self,
|
16494
|
+
id=None,
|
16495
|
+
):
|
16496
|
+
self.id = id if id is not None else ''
|
16497
|
+
'''
|
16498
|
+
The unique identifier of the Managed Secret to retrieve.
|
16499
|
+
'''
|
16500
|
+
|
16501
|
+
def __repr__(self):
|
16502
|
+
return '<sdm.ManagedSecretGetRequest ' + \
|
16503
|
+
'id: ' + repr(self.id) + ' ' +\
|
16504
|
+
'>'
|
16505
|
+
|
16506
|
+
def to_dict(self):
|
16507
|
+
return {
|
16508
|
+
'id': self.id,
|
16509
|
+
}
|
16510
|
+
|
16511
|
+
@classmethod
|
16512
|
+
def from_dict(cls, d):
|
16513
|
+
return cls(id=d.get('id'), )
|
16514
|
+
|
16515
|
+
|
16516
|
+
class ManagedSecretGetResponse:
|
16517
|
+
'''
|
16518
|
+
ManagedSecretGetResponse contains information about requested Managed Secret
|
16519
|
+
'''
|
16520
|
+
__slots__ = [
|
16521
|
+
'managed_secret',
|
16522
|
+
'meta',
|
16523
|
+
'rate_limit',
|
16524
|
+
]
|
16525
|
+
|
16526
|
+
def __init__(
|
16527
|
+
self,
|
16528
|
+
managed_secret=None,
|
16529
|
+
meta=None,
|
16530
|
+
rate_limit=None,
|
16531
|
+
):
|
16532
|
+
self.managed_secret = managed_secret if managed_secret is not None else None
|
16533
|
+
'''
|
16534
|
+
The requested Managed Secret.
|
16535
|
+
'''
|
16536
|
+
self.meta = meta if meta is not None else None
|
16537
|
+
'''
|
16538
|
+
Reserved for future use.
|
16539
|
+
'''
|
16540
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
16541
|
+
'''
|
16542
|
+
Rate limit information.
|
16543
|
+
'''
|
16544
|
+
|
16545
|
+
def __repr__(self):
|
16546
|
+
return '<sdm.ManagedSecretGetResponse ' + \
|
16547
|
+
'managed_secret: ' + repr(self.managed_secret) + ' ' +\
|
16548
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
16549
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
16550
|
+
'>'
|
16551
|
+
|
16552
|
+
def to_dict(self):
|
16553
|
+
return {
|
16554
|
+
'managed_secret': self.managed_secret,
|
16555
|
+
'meta': self.meta,
|
16556
|
+
'rate_limit': self.rate_limit,
|
16557
|
+
}
|
16558
|
+
|
16559
|
+
@classmethod
|
16560
|
+
def from_dict(cls, d):
|
16561
|
+
return cls(
|
16562
|
+
managed_secret=d.get('managed_secret'),
|
16563
|
+
meta=d.get('meta'),
|
16564
|
+
rate_limit=d.get('rate_limit'),
|
16565
|
+
)
|
16566
|
+
|
16567
|
+
|
16568
|
+
class ManagedSecretListRequest:
|
16569
|
+
'''
|
16570
|
+
ManagedSecretListRequest specifies criteria for retrieving a list of Managed
|
16571
|
+
Secrets.
|
16572
|
+
'''
|
16573
|
+
__slots__ = [
|
16574
|
+
'filter',
|
16575
|
+
]
|
16576
|
+
|
16577
|
+
def __init__(
|
16578
|
+
self,
|
16579
|
+
filter=None,
|
16580
|
+
):
|
16581
|
+
self.filter = filter if filter is not None else ''
|
16582
|
+
'''
|
16583
|
+
A human-readable filter query string.
|
16584
|
+
'''
|
16585
|
+
|
16586
|
+
def __repr__(self):
|
16587
|
+
return '<sdm.ManagedSecretListRequest ' + \
|
16588
|
+
'filter: ' + repr(self.filter) + ' ' +\
|
16589
|
+
'>'
|
16590
|
+
|
16591
|
+
def to_dict(self):
|
16592
|
+
return {
|
16593
|
+
'filter': self.filter,
|
16594
|
+
}
|
16595
|
+
|
16596
|
+
@classmethod
|
16597
|
+
def from_dict(cls, d):
|
16598
|
+
return cls(filter=d.get('filter'), )
|
16599
|
+
|
16600
|
+
|
16601
|
+
class ManagedSecretListResponse:
|
16602
|
+
'''
|
16603
|
+
ManagedSecretListResponse contains a list of requested Managed Secrets
|
16604
|
+
'''
|
16605
|
+
__slots__ = [
|
16606
|
+
'rate_limit',
|
16607
|
+
]
|
16608
|
+
|
16609
|
+
def __init__(
|
16610
|
+
self,
|
16611
|
+
rate_limit=None,
|
16612
|
+
):
|
16613
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
16614
|
+
'''
|
16615
|
+
Rate limit information.
|
16616
|
+
'''
|
16617
|
+
|
16618
|
+
def __repr__(self):
|
16619
|
+
return '<sdm.ManagedSecretListResponse ' + \
|
16620
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
16621
|
+
'>'
|
16622
|
+
|
16623
|
+
def to_dict(self):
|
16624
|
+
return {
|
16625
|
+
'rate_limit': self.rate_limit,
|
16626
|
+
}
|
16627
|
+
|
16628
|
+
@classmethod
|
16629
|
+
def from_dict(cls, d):
|
16630
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
16631
|
+
|
16632
|
+
|
16633
|
+
class ManagedSecretLog:
|
16634
|
+
'''
|
16635
|
+
ManagedSecretLog contains details about action performed against a managed
|
16636
|
+
secret
|
16637
|
+
'''
|
16638
|
+
__slots__ = [
|
16639
|
+
'account_id',
|
16640
|
+
'action',
|
16641
|
+
'created_at',
|
16642
|
+
'debug',
|
16643
|
+
'id',
|
16644
|
+
'managed_secret_id',
|
16645
|
+
'secret_engine_id',
|
16646
|
+
]
|
16647
|
+
|
16648
|
+
def __init__(
|
16649
|
+
self,
|
16650
|
+
account_id=None,
|
16651
|
+
action=None,
|
16652
|
+
created_at=None,
|
16653
|
+
debug=None,
|
16654
|
+
id=None,
|
16655
|
+
managed_secret_id=None,
|
16656
|
+
secret_engine_id=None,
|
16657
|
+
):
|
16658
|
+
self.account_id = account_id if account_id is not None else ''
|
16659
|
+
'''
|
16660
|
+
An ID of the account the action was performed by.
|
16661
|
+
'''
|
16662
|
+
self.action = action if action is not None else ''
|
16663
|
+
'''
|
16664
|
+
The action performed by the account against the managed secret.
|
16665
|
+
'''
|
16666
|
+
self.created_at = created_at if created_at is not None else None
|
16667
|
+
'''
|
16668
|
+
Timestamp of when action was performed.
|
16669
|
+
'''
|
16670
|
+
self.debug = debug if debug is not None else ''
|
16671
|
+
'''
|
16672
|
+
Any debug logs associated with the action.
|
16673
|
+
'''
|
16674
|
+
self.id = id if id is not None else ''
|
16675
|
+
'''
|
16676
|
+
Unique identifier of the Managed Secret Log.
|
16677
|
+
'''
|
16678
|
+
self.managed_secret_id = managed_secret_id if managed_secret_id is not None else ''
|
16679
|
+
'''
|
16680
|
+
An ID of the Managed Secret the action was performed against.
|
16681
|
+
'''
|
16682
|
+
self.secret_engine_id = secret_engine_id if secret_engine_id is not None else ''
|
16683
|
+
'''
|
16684
|
+
An ID of the Secret Engine linked with the Managed Secret.
|
16685
|
+
'''
|
16686
|
+
|
16687
|
+
def __repr__(self):
|
16688
|
+
return '<sdm.ManagedSecretLog ' + \
|
16689
|
+
'account_id: ' + repr(self.account_id) + ' ' +\
|
16690
|
+
'action: ' + repr(self.action) + ' ' +\
|
16691
|
+
'created_at: ' + repr(self.created_at) + ' ' +\
|
16692
|
+
'debug: ' + repr(self.debug) + ' ' +\
|
16693
|
+
'id: ' + repr(self.id) + ' ' +\
|
16694
|
+
'managed_secret_id: ' + repr(self.managed_secret_id) + ' ' +\
|
16695
|
+
'secret_engine_id: ' + repr(self.secret_engine_id) + ' ' +\
|
16696
|
+
'>'
|
16697
|
+
|
16698
|
+
def to_dict(self):
|
16699
|
+
return {
|
16700
|
+
'account_id': self.account_id,
|
16701
|
+
'action': self.action,
|
16702
|
+
'created_at': self.created_at,
|
16703
|
+
'debug': self.debug,
|
16704
|
+
'id': self.id,
|
16705
|
+
'managed_secret_id': self.managed_secret_id,
|
16706
|
+
'secret_engine_id': self.secret_engine_id,
|
16707
|
+
}
|
16708
|
+
|
16709
|
+
@classmethod
|
16710
|
+
def from_dict(cls, d):
|
16711
|
+
return cls(
|
16712
|
+
account_id=d.get('account_id'),
|
16713
|
+
action=d.get('action'),
|
16714
|
+
created_at=d.get('created_at'),
|
16715
|
+
debug=d.get('debug'),
|
16716
|
+
id=d.get('id'),
|
16717
|
+
managed_secret_id=d.get('managed_secret_id'),
|
16718
|
+
secret_engine_id=d.get('secret_engine_id'),
|
16719
|
+
)
|
16720
|
+
|
16721
|
+
|
16722
|
+
class ManagedSecretLogsRequest:
|
16723
|
+
'''
|
16724
|
+
ManagedSecretLogsRequest specifies criteria for retrieving a log of Managed
|
16725
|
+
Secrets actions.
|
16726
|
+
'''
|
16727
|
+
__slots__ = [
|
16728
|
+
'filter',
|
16729
|
+
]
|
16730
|
+
|
16731
|
+
def __init__(
|
16732
|
+
self,
|
16733
|
+
filter=None,
|
16734
|
+
):
|
16735
|
+
self.filter = filter if filter is not None else ''
|
16736
|
+
'''
|
16737
|
+
A human-readable filter query string.
|
16738
|
+
'''
|
16739
|
+
|
16740
|
+
def __repr__(self):
|
16741
|
+
return '<sdm.ManagedSecretLogsRequest ' + \
|
16742
|
+
'filter: ' + repr(self.filter) + ' ' +\
|
16743
|
+
'>'
|
16744
|
+
|
16745
|
+
def to_dict(self):
|
16746
|
+
return {
|
16747
|
+
'filter': self.filter,
|
16748
|
+
}
|
16749
|
+
|
16750
|
+
@classmethod
|
16751
|
+
def from_dict(cls, d):
|
16752
|
+
return cls(filter=d.get('filter'), )
|
16753
|
+
|
16754
|
+
|
16755
|
+
class ManagedSecretLogsResponse:
|
16756
|
+
'''
|
16757
|
+
ManagedSecretLogsResponse contains a list of requested Managed Secrets
|
16758
|
+
'''
|
16759
|
+
__slots__ = [
|
16760
|
+
'rate_limit',
|
16761
|
+
]
|
16762
|
+
|
16763
|
+
def __init__(
|
16764
|
+
self,
|
16765
|
+
rate_limit=None,
|
16766
|
+
):
|
16767
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
16768
|
+
'''
|
16769
|
+
Rate limit information.
|
16770
|
+
'''
|
16771
|
+
|
16772
|
+
def __repr__(self):
|
16773
|
+
return '<sdm.ManagedSecretLogsResponse ' + \
|
16774
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
16775
|
+
'>'
|
16776
|
+
|
16777
|
+
def to_dict(self):
|
16778
|
+
return {
|
16779
|
+
'rate_limit': self.rate_limit,
|
16780
|
+
}
|
16781
|
+
|
16782
|
+
@classmethod
|
16783
|
+
def from_dict(cls, d):
|
16784
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
16785
|
+
|
16786
|
+
|
16787
|
+
class ManagedSecretPasswordPolicy:
|
16788
|
+
__slots__ = [
|
16789
|
+
'allow_repeat',
|
16790
|
+
'exclude_characters',
|
16791
|
+
'exclude_upper_case',
|
16792
|
+
'length',
|
16793
|
+
'num_digits',
|
16794
|
+
'num_symbols',
|
16795
|
+
]
|
16796
|
+
|
16797
|
+
def __init__(
|
16798
|
+
self,
|
16799
|
+
allow_repeat=None,
|
16800
|
+
exclude_characters=None,
|
16801
|
+
exclude_upper_case=None,
|
16802
|
+
length=None,
|
16803
|
+
num_digits=None,
|
16804
|
+
num_symbols=None,
|
16805
|
+
):
|
16806
|
+
self.allow_repeat = allow_repeat if allow_repeat is not None else False
|
16807
|
+
'''
|
16808
|
+
If set to true allows for consecutive characters to repeat itself
|
16809
|
+
'''
|
16810
|
+
self.exclude_characters = exclude_characters if exclude_characters is not None else ''
|
16811
|
+
'''
|
16812
|
+
Characters to exclude when generating password
|
16813
|
+
'''
|
16814
|
+
self.exclude_upper_case = exclude_upper_case if exclude_upper_case is not None else False
|
16815
|
+
'''
|
16816
|
+
If set to true do not include upper case letters when generating password
|
16817
|
+
'''
|
16818
|
+
self.length = length if length is not None else 0
|
16819
|
+
'''
|
16820
|
+
Password length
|
16821
|
+
'''
|
16822
|
+
self.num_digits = num_digits if num_digits is not None else 0
|
16823
|
+
'''
|
16824
|
+
Numbers of digits to use when generating password
|
16825
|
+
'''
|
16826
|
+
self.num_symbols = num_symbols if num_symbols is not None else 0
|
16827
|
+
'''
|
16828
|
+
Number of symbols to use when generating password
|
16829
|
+
'''
|
16830
|
+
|
16831
|
+
def __repr__(self):
|
16832
|
+
return '<sdm.ManagedSecretPasswordPolicy ' + \
|
16833
|
+
'allow_repeat: ' + repr(self.allow_repeat) + ' ' +\
|
16834
|
+
'exclude_characters: ' + repr(self.exclude_characters) + ' ' +\
|
16835
|
+
'exclude_upper_case: ' + repr(self.exclude_upper_case) + ' ' +\
|
16836
|
+
'length: ' + repr(self.length) + ' ' +\
|
16837
|
+
'num_digits: ' + repr(self.num_digits) + ' ' +\
|
16838
|
+
'num_symbols: ' + repr(self.num_symbols) + ' ' +\
|
16839
|
+
'>'
|
16840
|
+
|
16841
|
+
def to_dict(self):
|
16842
|
+
return {
|
16843
|
+
'allow_repeat': self.allow_repeat,
|
16844
|
+
'exclude_characters': self.exclude_characters,
|
16845
|
+
'exclude_upper_case': self.exclude_upper_case,
|
16846
|
+
'length': self.length,
|
16847
|
+
'num_digits': self.num_digits,
|
16848
|
+
'num_symbols': self.num_symbols,
|
16849
|
+
}
|
16850
|
+
|
16851
|
+
@classmethod
|
16852
|
+
def from_dict(cls, d):
|
16853
|
+
return cls(
|
16854
|
+
allow_repeat=d.get('allow_repeat'),
|
16855
|
+
exclude_characters=d.get('exclude_characters'),
|
16856
|
+
exclude_upper_case=d.get('exclude_upper_case'),
|
16857
|
+
length=d.get('length'),
|
16858
|
+
num_digits=d.get('num_digits'),
|
16859
|
+
num_symbols=d.get('num_symbols'),
|
16860
|
+
)
|
16861
|
+
|
16862
|
+
|
16863
|
+
class ManagedSecretPolicy:
|
16864
|
+
'''
|
16865
|
+
ManagedSecretPolicy contains password and rotation policy for managed secret
|
16866
|
+
'''
|
16867
|
+
__slots__ = [
|
16868
|
+
'password_policy',
|
16869
|
+
'rotation_policy',
|
16870
|
+
]
|
16871
|
+
|
16872
|
+
def __init__(
|
16873
|
+
self,
|
16874
|
+
password_policy=None,
|
16875
|
+
rotation_policy=None,
|
16876
|
+
):
|
16877
|
+
self.password_policy = password_policy if password_policy is not None else None
|
16878
|
+
'''
|
16879
|
+
Password policy for a managed secret
|
16880
|
+
'''
|
16881
|
+
self.rotation_policy = rotation_policy if rotation_policy is not None else None
|
16882
|
+
'''
|
16883
|
+
Rotation policy for a managed secret
|
16884
|
+
'''
|
16885
|
+
|
16886
|
+
def __repr__(self):
|
16887
|
+
return '<sdm.ManagedSecretPolicy ' + \
|
16888
|
+
'password_policy: ' + repr(self.password_policy) + ' ' +\
|
16889
|
+
'rotation_policy: ' + repr(self.rotation_policy) + ' ' +\
|
16890
|
+
'>'
|
16891
|
+
|
16892
|
+
def to_dict(self):
|
16893
|
+
return {
|
16894
|
+
'password_policy': self.password_policy,
|
16895
|
+
'rotation_policy': self.rotation_policy,
|
16896
|
+
}
|
16897
|
+
|
16898
|
+
@classmethod
|
16899
|
+
def from_dict(cls, d):
|
16900
|
+
return cls(
|
16901
|
+
password_policy=d.get('password_policy'),
|
16902
|
+
rotation_policy=d.get('rotation_policy'),
|
16903
|
+
)
|
16904
|
+
|
16905
|
+
|
16906
|
+
class ManagedSecretRetrieveRequest:
|
16907
|
+
'''
|
16908
|
+
ManagedSecretRetrieveRequest specifies which Managed Secret to retrieve
|
16909
|
+
'''
|
16910
|
+
__slots__ = [
|
16911
|
+
'id',
|
16912
|
+
'public_key',
|
16913
|
+
]
|
16914
|
+
|
16915
|
+
def __init__(
|
16916
|
+
self,
|
16917
|
+
id=None,
|
16918
|
+
public_key=None,
|
16919
|
+
):
|
16920
|
+
self.id = id if id is not None else ''
|
16921
|
+
'''
|
16922
|
+
The unique identifier of the Managed Secret to retrieve.
|
16923
|
+
'''
|
16924
|
+
self.public_key = public_key if public_key is not None else b''
|
16925
|
+
'''
|
16926
|
+
Public key to encrypt a sensitive value with
|
16927
|
+
'''
|
16928
|
+
|
16929
|
+
def __repr__(self):
|
16930
|
+
return '<sdm.ManagedSecretRetrieveRequest ' + \
|
16931
|
+
'id: ' + repr(self.id) + ' ' +\
|
16932
|
+
'public_key: ' + repr(self.public_key) + ' ' +\
|
16933
|
+
'>'
|
16934
|
+
|
16935
|
+
def to_dict(self):
|
16936
|
+
return {
|
16937
|
+
'id': self.id,
|
16938
|
+
'public_key': self.public_key,
|
16939
|
+
}
|
16940
|
+
|
16941
|
+
@classmethod
|
16942
|
+
def from_dict(cls, d):
|
16943
|
+
return cls(
|
16944
|
+
id=d.get('id'),
|
16945
|
+
public_key=d.get('public_key'),
|
16946
|
+
)
|
16947
|
+
|
16948
|
+
|
16949
|
+
class ManagedSecretRetrieveResponse:
|
16950
|
+
'''
|
16951
|
+
ManagedSecretRetrieveResponse contains information about requested Managed
|
16952
|
+
Secret
|
16953
|
+
'''
|
16954
|
+
__slots__ = [
|
16955
|
+
'managed_secret',
|
16956
|
+
'meta',
|
16957
|
+
'rate_limit',
|
16958
|
+
]
|
16959
|
+
|
16960
|
+
def __init__(
|
16961
|
+
self,
|
16962
|
+
managed_secret=None,
|
16963
|
+
meta=None,
|
16964
|
+
rate_limit=None,
|
16965
|
+
):
|
16966
|
+
self.managed_secret = managed_secret if managed_secret is not None else None
|
16967
|
+
'''
|
16968
|
+
The requested Managed Secret.
|
16969
|
+
'''
|
16970
|
+
self.meta = meta if meta is not None else None
|
16971
|
+
'''
|
16972
|
+
Reserved for future use.
|
16973
|
+
'''
|
16974
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
16975
|
+
'''
|
16976
|
+
Rate limit information.
|
16977
|
+
'''
|
16978
|
+
|
16979
|
+
def __repr__(self):
|
16980
|
+
return '<sdm.ManagedSecretRetrieveResponse ' + \
|
16981
|
+
'managed_secret: ' + repr(self.managed_secret) + ' ' +\
|
16982
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
16983
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
16984
|
+
'>'
|
16985
|
+
|
16986
|
+
def to_dict(self):
|
16987
|
+
return {
|
16988
|
+
'managed_secret': self.managed_secret,
|
16989
|
+
'meta': self.meta,
|
16990
|
+
'rate_limit': self.rate_limit,
|
16991
|
+
}
|
16992
|
+
|
16993
|
+
@classmethod
|
16994
|
+
def from_dict(cls, d):
|
16995
|
+
return cls(
|
16996
|
+
managed_secret=d.get('managed_secret'),
|
16997
|
+
meta=d.get('meta'),
|
16998
|
+
rate_limit=d.get('rate_limit'),
|
16999
|
+
)
|
17000
|
+
|
17001
|
+
|
17002
|
+
class ManagedSecretRotateRequest:
|
17003
|
+
'''
|
17004
|
+
ManagedSecretRotateRequest specifies Managed Secret to rotate
|
17005
|
+
'''
|
17006
|
+
__slots__ = [
|
17007
|
+
'id',
|
17008
|
+
]
|
17009
|
+
|
17010
|
+
def __init__(
|
17011
|
+
self,
|
17012
|
+
id=None,
|
17013
|
+
):
|
17014
|
+
self.id = id if id is not None else ''
|
17015
|
+
'''
|
17016
|
+
The unique identifier of the Managed Secret to rotate.
|
17017
|
+
'''
|
17018
|
+
|
17019
|
+
def __repr__(self):
|
17020
|
+
return '<sdm.ManagedSecretRotateRequest ' + \
|
17021
|
+
'id: ' + repr(self.id) + ' ' +\
|
17022
|
+
'>'
|
17023
|
+
|
17024
|
+
def to_dict(self):
|
17025
|
+
return {
|
17026
|
+
'id': self.id,
|
17027
|
+
}
|
17028
|
+
|
17029
|
+
@classmethod
|
17030
|
+
def from_dict(cls, d):
|
17031
|
+
return cls(id=d.get('id'), )
|
17032
|
+
|
17033
|
+
|
17034
|
+
class ManagedSecretRotateResponse:
|
17035
|
+
'''
|
17036
|
+
ManagedSecretRotateResponse contains information about Secret Engine after
|
17037
|
+
successful rotation.
|
17038
|
+
'''
|
17039
|
+
__slots__ = [
|
17040
|
+
'meta',
|
17041
|
+
'rate_limit',
|
17042
|
+
]
|
17043
|
+
|
17044
|
+
def __init__(
|
17045
|
+
self,
|
17046
|
+
meta=None,
|
17047
|
+
rate_limit=None,
|
17048
|
+
):
|
17049
|
+
self.meta = meta if meta is not None else None
|
17050
|
+
'''
|
17051
|
+
Reserved for future use.
|
17052
|
+
'''
|
17053
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
17054
|
+
'''
|
17055
|
+
Rate limit information.
|
17056
|
+
'''
|
17057
|
+
|
17058
|
+
def __repr__(self):
|
17059
|
+
return '<sdm.ManagedSecretRotateResponse ' + \
|
17060
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
17061
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
17062
|
+
'>'
|
17063
|
+
|
17064
|
+
def to_dict(self):
|
17065
|
+
return {
|
17066
|
+
'meta': self.meta,
|
17067
|
+
'rate_limit': self.rate_limit,
|
17068
|
+
}
|
17069
|
+
|
17070
|
+
@classmethod
|
17071
|
+
def from_dict(cls, d):
|
17072
|
+
return cls(
|
17073
|
+
meta=d.get('meta'),
|
17074
|
+
rate_limit=d.get('rate_limit'),
|
17075
|
+
)
|
17076
|
+
|
17077
|
+
|
17078
|
+
class ManagedSecretRotationPolicy:
|
17079
|
+
__slots__ = []
|
17080
|
+
|
17081
|
+
def __init__(self, ):
|
17082
|
+
pass
|
17083
|
+
|
17084
|
+
def __repr__(self):
|
17085
|
+
return '<sdm.ManagedSecretRotationPolicy ' + \
|
17086
|
+
'>'
|
17087
|
+
|
17088
|
+
def to_dict(self):
|
17089
|
+
return {}
|
17090
|
+
|
17091
|
+
@classmethod
|
17092
|
+
def from_dict(cls, d):
|
17093
|
+
return cls()
|
17094
|
+
|
17095
|
+
|
17096
|
+
class ManagedSecretUpdateRequest:
|
17097
|
+
'''
|
17098
|
+
ManagedSecretUpdateRequest specifies Managed Secret to update
|
17099
|
+
'''
|
17100
|
+
__slots__ = [
|
17101
|
+
'managed_secret',
|
17102
|
+
]
|
17103
|
+
|
17104
|
+
def __init__(
|
17105
|
+
self,
|
17106
|
+
managed_secret=None,
|
17107
|
+
):
|
17108
|
+
self.managed_secret = managed_secret if managed_secret is not None else None
|
17109
|
+
'''
|
17110
|
+
Managed Secret to update
|
17111
|
+
'''
|
17112
|
+
|
17113
|
+
def __repr__(self):
|
17114
|
+
return '<sdm.ManagedSecretUpdateRequest ' + \
|
17115
|
+
'managed_secret: ' + repr(self.managed_secret) + ' ' +\
|
17116
|
+
'>'
|
17117
|
+
|
17118
|
+
def to_dict(self):
|
17119
|
+
return {
|
17120
|
+
'managed_secret': self.managed_secret,
|
17121
|
+
}
|
17122
|
+
|
17123
|
+
@classmethod
|
17124
|
+
def from_dict(cls, d):
|
17125
|
+
return cls(managed_secret=d.get('managed_secret'), )
|
17126
|
+
|
17127
|
+
|
17128
|
+
class ManagedSecretUpdateResponse:
|
17129
|
+
'''
|
17130
|
+
ManagedSecretUpdateResponse contains information about Secret Engine after
|
17131
|
+
successful update.
|
17132
|
+
'''
|
17133
|
+
__slots__ = [
|
17134
|
+
'managed_secret',
|
17135
|
+
'meta',
|
17136
|
+
'rate_limit',
|
17137
|
+
]
|
17138
|
+
|
17139
|
+
def __init__(
|
17140
|
+
self,
|
17141
|
+
managed_secret=None,
|
17142
|
+
meta=None,
|
17143
|
+
rate_limit=None,
|
17144
|
+
):
|
17145
|
+
self.managed_secret = managed_secret if managed_secret is not None else None
|
17146
|
+
'''
|
17147
|
+
The requested Managed Secret.
|
17148
|
+
'''
|
17149
|
+
self.meta = meta if meta is not None else None
|
17150
|
+
'''
|
17151
|
+
Reserved for future use.
|
17152
|
+
'''
|
17153
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
17154
|
+
'''
|
17155
|
+
Rate limit information.
|
17156
|
+
'''
|
17157
|
+
|
17158
|
+
def __repr__(self):
|
17159
|
+
return '<sdm.ManagedSecretUpdateResponse ' + \
|
17160
|
+
'managed_secret: ' + repr(self.managed_secret) + ' ' +\
|
17161
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
17162
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
17163
|
+
'>'
|
17164
|
+
|
17165
|
+
def to_dict(self):
|
17166
|
+
return {
|
17167
|
+
'managed_secret': self.managed_secret,
|
17168
|
+
'meta': self.meta,
|
17169
|
+
'rate_limit': self.rate_limit,
|
17170
|
+
}
|
17171
|
+
|
17172
|
+
@classmethod
|
17173
|
+
def from_dict(cls, d):
|
17174
|
+
return cls(
|
17175
|
+
managed_secret=d.get('managed_secret'),
|
17176
|
+
meta=d.get('meta'),
|
17177
|
+
rate_limit=d.get('rate_limit'),
|
17178
|
+
)
|
17179
|
+
|
17180
|
+
|
17181
|
+
class ManagedSecretValidateRequest:
|
17182
|
+
'''
|
17183
|
+
ManagedSecretValidateRequest specifies which Managed Secret to validate
|
17184
|
+
'''
|
17185
|
+
__slots__ = [
|
17186
|
+
'id',
|
17187
|
+
]
|
17188
|
+
|
17189
|
+
def __init__(
|
17190
|
+
self,
|
17191
|
+
id=None,
|
17192
|
+
):
|
17193
|
+
self.id = id if id is not None else ''
|
17194
|
+
'''
|
17195
|
+
The unique identifier of the Managed Secret to validate.
|
17196
|
+
'''
|
17197
|
+
|
17198
|
+
def __repr__(self):
|
17199
|
+
return '<sdm.ManagedSecretValidateRequest ' + \
|
17200
|
+
'id: ' + repr(self.id) + ' ' +\
|
17201
|
+
'>'
|
17202
|
+
|
17203
|
+
def to_dict(self):
|
17204
|
+
return {
|
17205
|
+
'id': self.id,
|
17206
|
+
}
|
17207
|
+
|
17208
|
+
@classmethod
|
17209
|
+
def from_dict(cls, d):
|
17210
|
+
return cls(id=d.get('id'), )
|
17211
|
+
|
17212
|
+
|
17213
|
+
class ManagedSecretValidateResponse:
|
17214
|
+
'''
|
17215
|
+
ManagedSecretValidateResponse contains validity of requested Managed
|
17216
|
+
Secret
|
17217
|
+
'''
|
17218
|
+
__slots__ = [
|
17219
|
+
'invalid_info',
|
17220
|
+
'meta',
|
17221
|
+
'rate_limit',
|
17222
|
+
'valid',
|
17223
|
+
]
|
17224
|
+
|
17225
|
+
def __init__(
|
17226
|
+
self,
|
17227
|
+
invalid_info=None,
|
17228
|
+
meta=None,
|
17229
|
+
rate_limit=None,
|
17230
|
+
valid=None,
|
17231
|
+
):
|
17232
|
+
self.invalid_info = invalid_info if invalid_info is not None else ''
|
17233
|
+
'''
|
17234
|
+
Information about why secret is invalid
|
17235
|
+
'''
|
17236
|
+
self.meta = meta if meta is not None else None
|
17237
|
+
'''
|
17238
|
+
Reserved for future use.
|
17239
|
+
'''
|
17240
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
17241
|
+
'''
|
17242
|
+
Rate limit information.
|
17243
|
+
'''
|
17244
|
+
self.valid = valid if valid is not None else False
|
17245
|
+
'''
|
17246
|
+
Whether the secret is valid
|
17247
|
+
'''
|
17248
|
+
|
17249
|
+
def __repr__(self):
|
17250
|
+
return '<sdm.ManagedSecretValidateResponse ' + \
|
17251
|
+
'invalid_info: ' + repr(self.invalid_info) + ' ' +\
|
17252
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
17253
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
17254
|
+
'valid: ' + repr(self.valid) + ' ' +\
|
17255
|
+
'>'
|
17256
|
+
|
17257
|
+
def to_dict(self):
|
17258
|
+
return {
|
17259
|
+
'invalid_info': self.invalid_info,
|
17260
|
+
'meta': self.meta,
|
17261
|
+
'rate_limit': self.rate_limit,
|
17262
|
+
'valid': self.valid,
|
17263
|
+
}
|
17264
|
+
|
17265
|
+
@classmethod
|
17266
|
+
def from_dict(cls, d):
|
17267
|
+
return cls(
|
17268
|
+
invalid_info=d.get('invalid_info'),
|
17269
|
+
meta=d.get('meta'),
|
17270
|
+
rate_limit=d.get('rate_limit'),
|
17271
|
+
valid=d.get('valid'),
|
17272
|
+
)
|
17273
|
+
|
17274
|
+
|
17275
|
+
class Maria:
|
17276
|
+
__slots__ = [
|
17277
|
+
'bind_interface',
|
17278
|
+
'database',
|
17279
|
+
'egress_filter',
|
17280
|
+
'healthy',
|
17281
|
+
'hostname',
|
17282
|
+
'id',
|
17283
|
+
'name',
|
17284
|
+
'password',
|
17285
|
+
'port',
|
17286
|
+
'port_override',
|
17287
|
+
'proxy_cluster_id',
|
17288
|
+
'require_native_auth',
|
17289
|
+
'secret_store_id',
|
17290
|
+
'subdomain',
|
17291
|
+
'tags',
|
17292
|
+
'use_azure_single_server_usernames',
|
17293
|
+
'username',
|
17294
|
+
]
|
17295
|
+
|
17296
|
+
def __init__(
|
17297
|
+
self,
|
17298
|
+
bind_interface=None,
|
17299
|
+
database=None,
|
17300
|
+
egress_filter=None,
|
17301
|
+
healthy=None,
|
17302
|
+
hostname=None,
|
17303
|
+
id=None,
|
17304
|
+
name=None,
|
17305
|
+
password=None,
|
17306
|
+
port=None,
|
17307
|
+
port_override=None,
|
17308
|
+
proxy_cluster_id=None,
|
17309
|
+
require_native_auth=None,
|
17310
|
+
secret_store_id=None,
|
17311
|
+
subdomain=None,
|
17312
|
+
tags=None,
|
17313
|
+
use_azure_single_server_usernames=None,
|
17314
|
+
username=None,
|
17315
|
+
):
|
17316
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
17317
|
+
'''
|
17318
|
+
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.
|
17319
|
+
'''
|
17320
|
+
self.database = database if database is not None else ''
|
17321
|
+
'''
|
17322
|
+
The database for healthchecks. Does not affect client requests.
|
17323
|
+
'''
|
17324
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
17325
|
+
'''
|
17326
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
17327
|
+
'''
|
17328
|
+
self.healthy = healthy if healthy is not None else False
|
17329
|
+
'''
|
17330
|
+
True if the datasource is reachable and the credentials are valid.
|
17331
|
+
'''
|
17332
|
+
self.hostname = hostname if hostname is not None else ''
|
17333
|
+
'''
|
17334
|
+
The host to dial to initiate a connection from the egress node to this resource.
|
17335
|
+
'''
|
17336
|
+
self.id = id if id is not None else ''
|
17337
|
+
'''
|
17338
|
+
Unique identifier of the Resource.
|
17339
|
+
'''
|
17340
|
+
self.name = name if name is not None else ''
|
17341
|
+
'''
|
17342
|
+
Unique human-readable name of the Resource.
|
17343
|
+
'''
|
17344
|
+
self.password = password if password is not None else ''
|
17345
|
+
'''
|
17346
|
+
The password to authenticate with.
|
17347
|
+
'''
|
17348
|
+
self.port = port if port is not None else 0
|
17349
|
+
'''
|
17350
|
+
The port to dial to initiate a connection from the egress node to this resource.
|
17351
|
+
'''
|
17352
|
+
self.port_override = port_override if port_override is not None else 0
|
17353
|
+
'''
|
17354
|
+
The local port used by clients to connect to this resource.
|
17355
|
+
'''
|
17356
|
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
17357
|
+
'''
|
17358
|
+
ID of the proxy cluster for this resource, if any.
|
17359
|
+
'''
|
17360
|
+
self.require_native_auth = require_native_auth if require_native_auth is not None else False
|
17361
|
+
'''
|
17362
|
+
Whether native auth (mysql_native_password) is used for all connections (for backwards compatibility)
|
17363
|
+
'''
|
17364
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
17365
|
+
'''
|
17366
|
+
ID of the secret store containing credentials for this resource, if any.
|
17367
|
+
'''
|
17368
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
17369
|
+
'''
|
17370
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
17371
|
+
'''
|
17372
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
17373
|
+
'''
|
17374
|
+
Tags is a map of key, value pairs.
|
17375
|
+
'''
|
17376
|
+
self.use_azure_single_server_usernames = use_azure_single_server_usernames if use_azure_single_server_usernames is not None else False
|
17377
|
+
'''
|
17378
|
+
If true, appends the hostname to the username when hitting a database.azure.com address
|
17379
|
+
'''
|
17380
|
+
self.username = username if username is not None else ''
|
17381
|
+
'''
|
17382
|
+
The username to authenticate with.
|
17383
|
+
'''
|
17384
|
+
|
17385
|
+
def __repr__(self):
|
17386
|
+
return '<sdm.Maria ' + \
|
17387
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
17388
|
+
'database: ' + repr(self.database) + ' ' +\
|
17389
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
17390
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
17391
|
+
'hostname: ' + repr(self.hostname) + ' ' +\
|
17392
|
+
'id: ' + repr(self.id) + ' ' +\
|
17393
|
+
'name: ' + repr(self.name) + ' ' +\
|
17394
|
+
'password: ' + repr(self.password) + ' ' +\
|
17395
|
+
'port: ' + repr(self.port) + ' ' +\
|
17396
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
17397
|
+
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
17398
|
+
'require_native_auth: ' + repr(self.require_native_auth) + ' ' +\
|
17399
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
17400
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
17401
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
17402
|
+
'use_azure_single_server_usernames: ' + repr(self.use_azure_single_server_usernames) + ' ' +\
|
17403
|
+
'username: ' + repr(self.username) + ' ' +\
|
17404
|
+
'>'
|
17405
|
+
|
17406
|
+
def to_dict(self):
|
17407
|
+
return {
|
17408
|
+
'bind_interface': self.bind_interface,
|
17409
|
+
'database': self.database,
|
17410
|
+
'egress_filter': self.egress_filter,
|
17411
|
+
'healthy': self.healthy,
|
17412
|
+
'hostname': self.hostname,
|
17413
|
+
'id': self.id,
|
17414
|
+
'name': self.name,
|
17415
|
+
'password': self.password,
|
17416
|
+
'port': self.port,
|
17417
|
+
'port_override': self.port_override,
|
17418
|
+
'proxy_cluster_id': self.proxy_cluster_id,
|
17419
|
+
'require_native_auth': self.require_native_auth,
|
17420
|
+
'secret_store_id': self.secret_store_id,
|
17421
|
+
'subdomain': self.subdomain,
|
17422
|
+
'tags': self.tags,
|
17423
|
+
'use_azure_single_server_usernames':
|
17424
|
+
self.use_azure_single_server_usernames,
|
17425
|
+
'username': self.username,
|
17426
|
+
}
|
17427
|
+
|
17428
|
+
@classmethod
|
17429
|
+
def from_dict(cls, d):
|
17430
|
+
return cls(
|
17431
|
+
bind_interface=d.get('bind_interface'),
|
17432
|
+
database=d.get('database'),
|
17433
|
+
egress_filter=d.get('egress_filter'),
|
17434
|
+
healthy=d.get('healthy'),
|
17435
|
+
hostname=d.get('hostname'),
|
17436
|
+
id=d.get('id'),
|
17437
|
+
name=d.get('name'),
|
17438
|
+
password=d.get('password'),
|
17439
|
+
port=d.get('port'),
|
17440
|
+
port_override=d.get('port_override'),
|
17441
|
+
proxy_cluster_id=d.get('proxy_cluster_id'),
|
17442
|
+
require_native_auth=d.get('require_native_auth'),
|
17443
|
+
secret_store_id=d.get('secret_store_id'),
|
17444
|
+
subdomain=d.get('subdomain'),
|
17445
|
+
tags=d.get('tags'),
|
17446
|
+
use_azure_single_server_usernames=d.get(
|
17447
|
+
'use_azure_single_server_usernames'),
|
17448
|
+
username=d.get('username'),
|
17449
|
+
)
|
17450
|
+
|
17451
|
+
|
17452
|
+
class Memcached:
|
17453
|
+
__slots__ = [
|
17454
|
+
'bind_interface',
|
17455
|
+
'egress_filter',
|
17456
|
+
'healthy',
|
17457
|
+
'hostname',
|
17458
|
+
'id',
|
17459
|
+
'name',
|
17460
|
+
'port',
|
17461
|
+
'port_override',
|
17462
|
+
'proxy_cluster_id',
|
17463
|
+
'secret_store_id',
|
17464
|
+
'subdomain',
|
17465
|
+
'tags',
|
17466
|
+
]
|
17467
|
+
|
17468
|
+
def __init__(
|
17469
|
+
self,
|
17470
|
+
bind_interface=None,
|
17471
|
+
egress_filter=None,
|
17472
|
+
healthy=None,
|
17473
|
+
hostname=None,
|
17474
|
+
id=None,
|
17475
|
+
name=None,
|
17476
|
+
port=None,
|
17477
|
+
port_override=None,
|
17478
|
+
proxy_cluster_id=None,
|
17479
|
+
secret_store_id=None,
|
17480
|
+
subdomain=None,
|
17481
|
+
tags=None,
|
17482
|
+
):
|
17483
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
17484
|
+
'''
|
17485
|
+
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.
|
17486
|
+
'''
|
17487
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
17488
|
+
'''
|
17489
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
17490
|
+
'''
|
17491
|
+
self.healthy = healthy if healthy is not None else False
|
17492
|
+
'''
|
17493
|
+
True if the datasource is reachable and the credentials are valid.
|
17494
|
+
'''
|
17495
|
+
self.hostname = hostname if hostname is not None else ''
|
17496
|
+
'''
|
17497
|
+
The host to dial to initiate a connection from the egress node to this resource.
|
17498
|
+
'''
|
17499
|
+
self.id = id if id is not None else ''
|
17500
|
+
'''
|
17501
|
+
Unique identifier of the Resource.
|
17502
|
+
'''
|
17503
|
+
self.name = name if name is not None else ''
|
17504
|
+
'''
|
17505
|
+
Unique human-readable name of the Resource.
|
17506
|
+
'''
|
17507
|
+
self.port = port if port is not None else 0
|
17508
|
+
'''
|
17509
|
+
The port to dial to initiate a connection from the egress node to this resource.
|
17510
|
+
'''
|
17511
|
+
self.port_override = port_override if port_override is not None else 0
|
17512
|
+
'''
|
17513
|
+
The local port used by clients to connect to this resource.
|
17514
|
+
'''
|
17515
|
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
17516
|
+
'''
|
17517
|
+
ID of the proxy cluster for this resource, if any.
|
17518
|
+
'''
|
17519
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
17520
|
+
'''
|
17521
|
+
ID of the secret store containing credentials for this resource, if any.
|
17522
|
+
'''
|
17523
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
17524
|
+
'''
|
17525
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
17526
|
+
'''
|
17527
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
17528
|
+
'''
|
17529
|
+
Tags is a map of key, value pairs.
|
17530
|
+
'''
|
17531
|
+
|
17532
|
+
def __repr__(self):
|
17533
|
+
return '<sdm.Memcached ' + \
|
17534
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
17535
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
17536
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
17537
|
+
'hostname: ' + repr(self.hostname) + ' ' +\
|
17538
|
+
'id: ' + repr(self.id) + ' ' +\
|
17539
|
+
'name: ' + repr(self.name) + ' ' +\
|
17540
|
+
'port: ' + repr(self.port) + ' ' +\
|
17541
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
17542
|
+
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
17543
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
17544
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
17545
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
17546
|
+
'>'
|
17547
|
+
|
17548
|
+
def to_dict(self):
|
17549
|
+
return {
|
17550
|
+
'bind_interface': self.bind_interface,
|
17551
|
+
'egress_filter': self.egress_filter,
|
17552
|
+
'healthy': self.healthy,
|
17553
|
+
'hostname': self.hostname,
|
17554
|
+
'id': self.id,
|
17555
|
+
'name': self.name,
|
17556
|
+
'port': self.port,
|
17557
|
+
'port_override': self.port_override,
|
17558
|
+
'proxy_cluster_id': self.proxy_cluster_id,
|
17559
|
+
'secret_store_id': self.secret_store_id,
|
17560
|
+
'subdomain': self.subdomain,
|
17561
|
+
'tags': self.tags,
|
17562
|
+
}
|
17563
|
+
|
17564
|
+
@classmethod
|
17565
|
+
def from_dict(cls, d):
|
17566
|
+
return cls(
|
17567
|
+
bind_interface=d.get('bind_interface'),
|
17568
|
+
egress_filter=d.get('egress_filter'),
|
17569
|
+
healthy=d.get('healthy'),
|
17570
|
+
hostname=d.get('hostname'),
|
17571
|
+
id=d.get('id'),
|
17572
|
+
name=d.get('name'),
|
17573
|
+
port=d.get('port'),
|
17574
|
+
port_override=d.get('port_override'),
|
17575
|
+
proxy_cluster_id=d.get('proxy_cluster_id'),
|
17576
|
+
secret_store_id=d.get('secret_store_id'),
|
17577
|
+
subdomain=d.get('subdomain'),
|
17578
|
+
tags=d.get('tags'),
|
17579
|
+
)
|
17580
|
+
|
17581
|
+
|
17582
|
+
class Memsql:
|
17583
|
+
__slots__ = [
|
17584
|
+
'bind_interface',
|
17585
|
+
'database',
|
17586
|
+
'egress_filter',
|
17587
|
+
'healthy',
|
17588
|
+
'hostname',
|
17589
|
+
'id',
|
17590
|
+
'name',
|
17591
|
+
'password',
|
17592
|
+
'port',
|
17593
|
+
'port_override',
|
17594
|
+
'proxy_cluster_id',
|
17595
|
+
'require_native_auth',
|
17596
|
+
'secret_store_id',
|
17597
|
+
'subdomain',
|
17598
|
+
'tags',
|
17599
|
+
'use_azure_single_server_usernames',
|
17600
|
+
'username',
|
17601
|
+
]
|
17602
|
+
|
17603
|
+
def __init__(
|
17604
|
+
self,
|
17605
|
+
bind_interface=None,
|
17606
|
+
database=None,
|
17607
|
+
egress_filter=None,
|
17608
|
+
healthy=None,
|
17609
|
+
hostname=None,
|
17610
|
+
id=None,
|
17611
|
+
name=None,
|
17612
|
+
password=None,
|
17613
|
+
port=None,
|
17614
|
+
port_override=None,
|
17615
|
+
proxy_cluster_id=None,
|
17616
|
+
require_native_auth=None,
|
17617
|
+
secret_store_id=None,
|
17618
|
+
subdomain=None,
|
17619
|
+
tags=None,
|
17620
|
+
use_azure_single_server_usernames=None,
|
17621
|
+
username=None,
|
17622
|
+
):
|
17623
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
17624
|
+
'''
|
17625
|
+
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.
|
17626
|
+
'''
|
17627
|
+
self.database = database if database is not None else ''
|
17628
|
+
'''
|
17629
|
+
The database for healthchecks. Does not affect client requests.
|
17630
|
+
'''
|
17631
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
17632
|
+
'''
|
17633
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
15962
17634
|
'''
|
15963
17635
|
self.healthy = healthy if healthy is not None else False
|
15964
17636
|
'''
|
@@ -24807,7 +26479,183 @@ class SSHCustomerKey:
|
|
24807
26479
|
'''
|
24808
26480
|
self.private_key = private_key if private_key is not None else ''
|
24809
26481
|
'''
|
24810
|
-
The private key used to authenticate with the server.
|
26482
|
+
The private key used to authenticate with the server.
|
26483
|
+
'''
|
26484
|
+
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
26485
|
+
'''
|
26486
|
+
ID of the proxy cluster for this resource, if any.
|
26487
|
+
'''
|
26488
|
+
self.secret_store_id = secret_store_id if secret_store_id is not None else ''
|
26489
|
+
'''
|
26490
|
+
ID of the secret store containing credentials for this resource, if any.
|
26491
|
+
'''
|
26492
|
+
self.subdomain = subdomain if subdomain is not None else ''
|
26493
|
+
'''
|
26494
|
+
Subdomain is the local DNS address. (e.g. app-prod1 turns into app-prod1.your-org-name.sdm.network)
|
26495
|
+
'''
|
26496
|
+
self.tags = tags if tags is not None else _porcelain_zero_value_tags()
|
26497
|
+
'''
|
26498
|
+
Tags is a map of key, value pairs.
|
26499
|
+
'''
|
26500
|
+
self.username = username if username is not None else ''
|
26501
|
+
'''
|
26502
|
+
The username to authenticate with.
|
26503
|
+
'''
|
26504
|
+
|
26505
|
+
def __repr__(self):
|
26506
|
+
return '<sdm.SSHCustomerKey ' + \
|
26507
|
+
'allow_deprecated_key_exchanges: ' + repr(self.allow_deprecated_key_exchanges) + ' ' +\
|
26508
|
+
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
26509
|
+
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
26510
|
+
'healthy: ' + repr(self.healthy) + ' ' +\
|
26511
|
+
'hostname: ' + repr(self.hostname) + ' ' +\
|
26512
|
+
'id: ' + repr(self.id) + ' ' +\
|
26513
|
+
'identity_alias_healthcheck_username: ' + repr(self.identity_alias_healthcheck_username) + ' ' +\
|
26514
|
+
'identity_set_id: ' + repr(self.identity_set_id) + ' ' +\
|
26515
|
+
'name: ' + repr(self.name) + ' ' +\
|
26516
|
+
'port: ' + repr(self.port) + ' ' +\
|
26517
|
+
'port_forwarding: ' + repr(self.port_forwarding) + ' ' +\
|
26518
|
+
'port_override: ' + repr(self.port_override) + ' ' +\
|
26519
|
+
'private_key: ' + repr(self.private_key) + ' ' +\
|
26520
|
+
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
26521
|
+
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
26522
|
+
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
26523
|
+
'tags: ' + repr(self.tags) + ' ' +\
|
26524
|
+
'username: ' + repr(self.username) + ' ' +\
|
26525
|
+
'>'
|
26526
|
+
|
26527
|
+
def to_dict(self):
|
26528
|
+
return {
|
26529
|
+
'allow_deprecated_key_exchanges':
|
26530
|
+
self.allow_deprecated_key_exchanges,
|
26531
|
+
'bind_interface': self.bind_interface,
|
26532
|
+
'egress_filter': self.egress_filter,
|
26533
|
+
'healthy': self.healthy,
|
26534
|
+
'hostname': self.hostname,
|
26535
|
+
'id': self.id,
|
26536
|
+
'identity_alias_healthcheck_username':
|
26537
|
+
self.identity_alias_healthcheck_username,
|
26538
|
+
'identity_set_id': self.identity_set_id,
|
26539
|
+
'name': self.name,
|
26540
|
+
'port': self.port,
|
26541
|
+
'port_forwarding': self.port_forwarding,
|
26542
|
+
'port_override': self.port_override,
|
26543
|
+
'private_key': self.private_key,
|
26544
|
+
'proxy_cluster_id': self.proxy_cluster_id,
|
26545
|
+
'secret_store_id': self.secret_store_id,
|
26546
|
+
'subdomain': self.subdomain,
|
26547
|
+
'tags': self.tags,
|
26548
|
+
'username': self.username,
|
26549
|
+
}
|
26550
|
+
|
26551
|
+
@classmethod
|
26552
|
+
def from_dict(cls, d):
|
26553
|
+
return cls(
|
26554
|
+
allow_deprecated_key_exchanges=d.get(
|
26555
|
+
'allow_deprecated_key_exchanges'),
|
26556
|
+
bind_interface=d.get('bind_interface'),
|
26557
|
+
egress_filter=d.get('egress_filter'),
|
26558
|
+
healthy=d.get('healthy'),
|
26559
|
+
hostname=d.get('hostname'),
|
26560
|
+
id=d.get('id'),
|
26561
|
+
identity_alias_healthcheck_username=d.get(
|
26562
|
+
'identity_alias_healthcheck_username'),
|
26563
|
+
identity_set_id=d.get('identity_set_id'),
|
26564
|
+
name=d.get('name'),
|
26565
|
+
port=d.get('port'),
|
26566
|
+
port_forwarding=d.get('port_forwarding'),
|
26567
|
+
port_override=d.get('port_override'),
|
26568
|
+
private_key=d.get('private_key'),
|
26569
|
+
proxy_cluster_id=d.get('proxy_cluster_id'),
|
26570
|
+
secret_store_id=d.get('secret_store_id'),
|
26571
|
+
subdomain=d.get('subdomain'),
|
26572
|
+
tags=d.get('tags'),
|
26573
|
+
username=d.get('username'),
|
26574
|
+
)
|
26575
|
+
|
26576
|
+
|
26577
|
+
class SSHPassword:
|
26578
|
+
__slots__ = [
|
26579
|
+
'allow_deprecated_key_exchanges',
|
26580
|
+
'bind_interface',
|
26581
|
+
'egress_filter',
|
26582
|
+
'healthy',
|
26583
|
+
'hostname',
|
26584
|
+
'id',
|
26585
|
+
'name',
|
26586
|
+
'password',
|
26587
|
+
'port',
|
26588
|
+
'port_forwarding',
|
26589
|
+
'port_override',
|
26590
|
+
'proxy_cluster_id',
|
26591
|
+
'secret_store_id',
|
26592
|
+
'subdomain',
|
26593
|
+
'tags',
|
26594
|
+
'username',
|
26595
|
+
]
|
26596
|
+
|
26597
|
+
def __init__(
|
26598
|
+
self,
|
26599
|
+
allow_deprecated_key_exchanges=None,
|
26600
|
+
bind_interface=None,
|
26601
|
+
egress_filter=None,
|
26602
|
+
healthy=None,
|
26603
|
+
hostname=None,
|
26604
|
+
id=None,
|
26605
|
+
name=None,
|
26606
|
+
password=None,
|
26607
|
+
port=None,
|
26608
|
+
port_forwarding=None,
|
26609
|
+
port_override=None,
|
26610
|
+
proxy_cluster_id=None,
|
26611
|
+
secret_store_id=None,
|
26612
|
+
subdomain=None,
|
26613
|
+
tags=None,
|
26614
|
+
username=None,
|
26615
|
+
):
|
26616
|
+
self.allow_deprecated_key_exchanges = allow_deprecated_key_exchanges if allow_deprecated_key_exchanges is not None else False
|
26617
|
+
'''
|
26618
|
+
Whether deprecated, insecure key exchanges are allowed for use to connect to the target ssh server.
|
26619
|
+
'''
|
26620
|
+
self.bind_interface = bind_interface if bind_interface is not None else ''
|
26621
|
+
'''
|
26622
|
+
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.
|
26623
|
+
'''
|
26624
|
+
self.egress_filter = egress_filter if egress_filter is not None else ''
|
26625
|
+
'''
|
26626
|
+
A filter applied to the routing logic to pin datasource to nodes.
|
26627
|
+
'''
|
26628
|
+
self.healthy = healthy if healthy is not None else False
|
26629
|
+
'''
|
26630
|
+
True if the datasource is reachable and the credentials are valid.
|
26631
|
+
'''
|
26632
|
+
self.hostname = hostname if hostname is not None else ''
|
26633
|
+
'''
|
26634
|
+
The host to dial to initiate a connection from the egress node to this resource.
|
26635
|
+
'''
|
26636
|
+
self.id = id if id is not None else ''
|
26637
|
+
'''
|
26638
|
+
Unique identifier of the Resource.
|
26639
|
+
'''
|
26640
|
+
self.name = name if name is not None else ''
|
26641
|
+
'''
|
26642
|
+
Unique human-readable name of the Resource.
|
26643
|
+
'''
|
26644
|
+
self.password = password if password is not None else ''
|
26645
|
+
'''
|
26646
|
+
The password to authenticate with.
|
26647
|
+
'''
|
26648
|
+
self.port = port if port is not None else 0
|
26649
|
+
'''
|
26650
|
+
The port to dial to initiate a connection from the egress node to this resource.
|
26651
|
+
'''
|
26652
|
+
self.port_forwarding = port_forwarding if port_forwarding is not None else False
|
26653
|
+
'''
|
26654
|
+
Whether port forwarding is allowed through this server.
|
26655
|
+
'''
|
26656
|
+
self.port_override = port_override if port_override is not None else 0
|
26657
|
+
'''
|
26658
|
+
The local port used by clients to connect to this resource.
|
24811
26659
|
'''
|
24812
26660
|
self.proxy_cluster_id = proxy_cluster_id if proxy_cluster_id is not None else ''
|
24813
26661
|
'''
|
@@ -24831,20 +26679,18 @@ class SSHCustomerKey:
|
|
24831
26679
|
'''
|
24832
26680
|
|
24833
26681
|
def __repr__(self):
|
24834
|
-
return '<sdm.
|
26682
|
+
return '<sdm.SSHPassword ' + \
|
24835
26683
|
'allow_deprecated_key_exchanges: ' + repr(self.allow_deprecated_key_exchanges) + ' ' +\
|
24836
26684
|
'bind_interface: ' + repr(self.bind_interface) + ' ' +\
|
24837
26685
|
'egress_filter: ' + repr(self.egress_filter) + ' ' +\
|
24838
26686
|
'healthy: ' + repr(self.healthy) + ' ' +\
|
24839
26687
|
'hostname: ' + repr(self.hostname) + ' ' +\
|
24840
26688
|
'id: ' + repr(self.id) + ' ' +\
|
24841
|
-
'identity_alias_healthcheck_username: ' + repr(self.identity_alias_healthcheck_username) + ' ' +\
|
24842
|
-
'identity_set_id: ' + repr(self.identity_set_id) + ' ' +\
|
24843
26689
|
'name: ' + repr(self.name) + ' ' +\
|
26690
|
+
'password: ' + repr(self.password) + ' ' +\
|
24844
26691
|
'port: ' + repr(self.port) + ' ' +\
|
24845
26692
|
'port_forwarding: ' + repr(self.port_forwarding) + ' ' +\
|
24846
26693
|
'port_override: ' + repr(self.port_override) + ' ' +\
|
24847
|
-
'private_key: ' + repr(self.private_key) + ' ' +\
|
24848
26694
|
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
24849
26695
|
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
24850
26696
|
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
@@ -24861,14 +26707,11 @@ class SSHCustomerKey:
|
|
24861
26707
|
'healthy': self.healthy,
|
24862
26708
|
'hostname': self.hostname,
|
24863
26709
|
'id': self.id,
|
24864
|
-
'identity_alias_healthcheck_username':
|
24865
|
-
self.identity_alias_healthcheck_username,
|
24866
|
-
'identity_set_id': self.identity_set_id,
|
24867
26710
|
'name': self.name,
|
26711
|
+
'password': self.password,
|
24868
26712
|
'port': self.port,
|
24869
26713
|
'port_forwarding': self.port_forwarding,
|
24870
26714
|
'port_override': self.port_override,
|
24871
|
-
'private_key': self.private_key,
|
24872
26715
|
'proxy_cluster_id': self.proxy_cluster_id,
|
24873
26716
|
'secret_store_id': self.secret_store_id,
|
24874
26717
|
'subdomain': self.subdomain,
|
@@ -24886,14 +26729,11 @@ class SSHCustomerKey:
|
|
24886
26729
|
healthy=d.get('healthy'),
|
24887
26730
|
hostname=d.get('hostname'),
|
24888
26731
|
id=d.get('id'),
|
24889
|
-
identity_alias_healthcheck_username=d.get(
|
24890
|
-
'identity_alias_healthcheck_username'),
|
24891
|
-
identity_set_id=d.get('identity_set_id'),
|
24892
26732
|
name=d.get('name'),
|
26733
|
+
password=d.get('password'),
|
24893
26734
|
port=d.get('port'),
|
24894
26735
|
port_forwarding=d.get('port_forwarding'),
|
24895
26736
|
port_override=d.get('port_override'),
|
24896
|
-
private_key=d.get('private_key'),
|
24897
26737
|
proxy_cluster_id=d.get('proxy_cluster_id'),
|
24898
26738
|
secret_store_id=d.get('secret_store_id'),
|
24899
26739
|
subdomain=d.get('subdomain'),
|
@@ -24902,171 +26742,558 @@ class SSHCustomerKey:
|
|
24902
26742
|
)
|
24903
26743
|
|
24904
26744
|
|
24905
|
-
class
|
26745
|
+
class SecretEngineCreateRequest:
|
26746
|
+
'''
|
26747
|
+
SecretEngineCreateRequest specifies a Secret Engine to create.
|
26748
|
+
'''
|
26749
|
+
__slots__ = [
|
26750
|
+
'secret_engine',
|
26751
|
+
]
|
26752
|
+
|
26753
|
+
def __init__(
|
26754
|
+
self,
|
26755
|
+
secret_engine=None,
|
26756
|
+
):
|
26757
|
+
self.secret_engine = secret_engine if secret_engine is not None else None
|
26758
|
+
'''
|
26759
|
+
Parameters to define the new Secret Engine.
|
26760
|
+
'''
|
26761
|
+
|
26762
|
+
def __repr__(self):
|
26763
|
+
return '<sdm.SecretEngineCreateRequest ' + \
|
26764
|
+
'secret_engine: ' + repr(self.secret_engine) + ' ' +\
|
26765
|
+
'>'
|
26766
|
+
|
26767
|
+
def to_dict(self):
|
26768
|
+
return {
|
26769
|
+
'secret_engine': self.secret_engine,
|
26770
|
+
}
|
26771
|
+
|
26772
|
+
@classmethod
|
26773
|
+
def from_dict(cls, d):
|
26774
|
+
return cls(secret_engine=d.get('secret_engine'), )
|
26775
|
+
|
26776
|
+
|
26777
|
+
class SecretEngineCreateResponse:
|
26778
|
+
'''
|
26779
|
+
SecretEngineCreateResponse contains information about a Secret Engine after successful creation.
|
26780
|
+
'''
|
26781
|
+
__slots__ = [
|
26782
|
+
'meta',
|
26783
|
+
'rate_limit',
|
26784
|
+
'secret_engine',
|
26785
|
+
]
|
26786
|
+
|
26787
|
+
def __init__(
|
26788
|
+
self,
|
26789
|
+
meta=None,
|
26790
|
+
rate_limit=None,
|
26791
|
+
secret_engine=None,
|
26792
|
+
):
|
26793
|
+
self.meta = meta if meta is not None else None
|
26794
|
+
'''
|
26795
|
+
Reserved for future use.
|
26796
|
+
'''
|
26797
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
26798
|
+
'''
|
26799
|
+
Rate limit information.
|
26800
|
+
'''
|
26801
|
+
self.secret_engine = secret_engine if secret_engine is not None else None
|
26802
|
+
'''
|
26803
|
+
The requested Secret Engine.
|
26804
|
+
'''
|
26805
|
+
|
26806
|
+
def __repr__(self):
|
26807
|
+
return '<sdm.SecretEngineCreateResponse ' + \
|
26808
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
26809
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
26810
|
+
'secret_engine: ' + repr(self.secret_engine) + ' ' +\
|
26811
|
+
'>'
|
26812
|
+
|
26813
|
+
def to_dict(self):
|
26814
|
+
return {
|
26815
|
+
'meta': self.meta,
|
26816
|
+
'rate_limit': self.rate_limit,
|
26817
|
+
'secret_engine': self.secret_engine,
|
26818
|
+
}
|
26819
|
+
|
26820
|
+
@classmethod
|
26821
|
+
def from_dict(cls, d):
|
26822
|
+
return cls(
|
26823
|
+
meta=d.get('meta'),
|
26824
|
+
rate_limit=d.get('rate_limit'),
|
26825
|
+
secret_engine=d.get('secret_engine'),
|
26826
|
+
)
|
26827
|
+
|
26828
|
+
|
26829
|
+
class SecretEngineDeleteRequest:
|
26830
|
+
'''
|
26831
|
+
SecretEngineDeleteRequest specified the ID of a Secret Engine to be deleted.
|
26832
|
+
'''
|
26833
|
+
__slots__ = [
|
26834
|
+
'id',
|
26835
|
+
]
|
26836
|
+
|
26837
|
+
def __init__(
|
26838
|
+
self,
|
26839
|
+
id=None,
|
26840
|
+
):
|
26841
|
+
self.id = id if id is not None else ''
|
26842
|
+
'''
|
26843
|
+
The unique identifier of the Secret Engine to delete.
|
26844
|
+
'''
|
26845
|
+
|
26846
|
+
def __repr__(self):
|
26847
|
+
return '<sdm.SecretEngineDeleteRequest ' + \
|
26848
|
+
'id: ' + repr(self.id) + ' ' +\
|
26849
|
+
'>'
|
26850
|
+
|
26851
|
+
def to_dict(self):
|
26852
|
+
return {
|
26853
|
+
'id': self.id,
|
26854
|
+
}
|
26855
|
+
|
26856
|
+
@classmethod
|
26857
|
+
def from_dict(cls, d):
|
26858
|
+
return cls(id=d.get('id'), )
|
26859
|
+
|
26860
|
+
|
26861
|
+
class SecretEngineDeleteResponse:
|
26862
|
+
'''
|
26863
|
+
SecretEngineDeleteResponse contains information about a Secret Engine after it was deleted.
|
26864
|
+
'''
|
26865
|
+
__slots__ = [
|
26866
|
+
'rate_limit',
|
26867
|
+
]
|
26868
|
+
|
26869
|
+
def __init__(
|
26870
|
+
self,
|
26871
|
+
rate_limit=None,
|
26872
|
+
):
|
26873
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
26874
|
+
'''
|
26875
|
+
Rate limit information.
|
26876
|
+
'''
|
26877
|
+
|
26878
|
+
def __repr__(self):
|
26879
|
+
return '<sdm.SecretEngineDeleteResponse ' + \
|
26880
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
26881
|
+
'>'
|
26882
|
+
|
26883
|
+
def to_dict(self):
|
26884
|
+
return {
|
26885
|
+
'rate_limit': self.rate_limit,
|
26886
|
+
}
|
26887
|
+
|
26888
|
+
@classmethod
|
26889
|
+
def from_dict(cls, d):
|
26890
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
26891
|
+
|
26892
|
+
|
26893
|
+
class SecretEngineGetRequest:
|
26894
|
+
'''
|
26895
|
+
SecretEngineGetRequest specifies which Secret Engine to retrieve
|
26896
|
+
'''
|
26897
|
+
__slots__ = [
|
26898
|
+
'id',
|
26899
|
+
]
|
26900
|
+
|
26901
|
+
def __init__(
|
26902
|
+
self,
|
26903
|
+
id=None,
|
26904
|
+
):
|
26905
|
+
self.id = id if id is not None else ''
|
26906
|
+
'''
|
26907
|
+
The unique identifier of the Secret Engine to retrieve.
|
26908
|
+
'''
|
26909
|
+
|
26910
|
+
def __repr__(self):
|
26911
|
+
return '<sdm.SecretEngineGetRequest ' + \
|
26912
|
+
'id: ' + repr(self.id) + ' ' +\
|
26913
|
+
'>'
|
26914
|
+
|
26915
|
+
def to_dict(self):
|
26916
|
+
return {
|
26917
|
+
'id': self.id,
|
26918
|
+
}
|
26919
|
+
|
26920
|
+
@classmethod
|
26921
|
+
def from_dict(cls, d):
|
26922
|
+
return cls(id=d.get('id'), )
|
26923
|
+
|
26924
|
+
|
26925
|
+
class SecretEngineGetResponse:
|
26926
|
+
'''
|
26927
|
+
SecretEngineGetResponse contains information about requested Secret Engine
|
26928
|
+
'''
|
26929
|
+
__slots__ = [
|
26930
|
+
'meta',
|
26931
|
+
'rate_limit',
|
26932
|
+
'secret_engine',
|
26933
|
+
]
|
26934
|
+
|
26935
|
+
def __init__(
|
26936
|
+
self,
|
26937
|
+
meta=None,
|
26938
|
+
rate_limit=None,
|
26939
|
+
secret_engine=None,
|
26940
|
+
):
|
26941
|
+
self.meta = meta if meta is not None else None
|
26942
|
+
'''
|
26943
|
+
Reserved for future use.
|
26944
|
+
'''
|
26945
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
26946
|
+
'''
|
26947
|
+
Rate limit information.
|
26948
|
+
'''
|
26949
|
+
self.secret_engine = secret_engine if secret_engine is not None else None
|
26950
|
+
'''
|
26951
|
+
The requested Secret Engine.
|
26952
|
+
'''
|
26953
|
+
|
26954
|
+
def __repr__(self):
|
26955
|
+
return '<sdm.SecretEngineGetResponse ' + \
|
26956
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
26957
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
26958
|
+
'secret_engine: ' + repr(self.secret_engine) + ' ' +\
|
26959
|
+
'>'
|
26960
|
+
|
26961
|
+
def to_dict(self):
|
26962
|
+
return {
|
26963
|
+
'meta': self.meta,
|
26964
|
+
'rate_limit': self.rate_limit,
|
26965
|
+
'secret_engine': self.secret_engine,
|
26966
|
+
}
|
26967
|
+
|
26968
|
+
@classmethod
|
26969
|
+
def from_dict(cls, d):
|
26970
|
+
return cls(
|
26971
|
+
meta=d.get('meta'),
|
26972
|
+
rate_limit=d.get('rate_limit'),
|
26973
|
+
secret_engine=d.get('secret_engine'),
|
26974
|
+
)
|
26975
|
+
|
26976
|
+
|
26977
|
+
class SecretEngineListRequest:
|
26978
|
+
'''
|
26979
|
+
SecretEngineListRequest specifies criteria for retrieving a list of Secret Engines
|
26980
|
+
'''
|
26981
|
+
__slots__ = [
|
26982
|
+
'filter',
|
26983
|
+
]
|
26984
|
+
|
26985
|
+
def __init__(
|
26986
|
+
self,
|
26987
|
+
filter=None,
|
26988
|
+
):
|
26989
|
+
self.filter = filter if filter is not None else ''
|
26990
|
+
'''
|
26991
|
+
A human-readable filter query string.
|
26992
|
+
'''
|
26993
|
+
|
26994
|
+
def __repr__(self):
|
26995
|
+
return '<sdm.SecretEngineListRequest ' + \
|
26996
|
+
'filter: ' + repr(self.filter) + ' ' +\
|
26997
|
+
'>'
|
26998
|
+
|
26999
|
+
def to_dict(self):
|
27000
|
+
return {
|
27001
|
+
'filter': self.filter,
|
27002
|
+
}
|
27003
|
+
|
27004
|
+
@classmethod
|
27005
|
+
def from_dict(cls, d):
|
27006
|
+
return cls(filter=d.get('filter'), )
|
27007
|
+
|
27008
|
+
|
27009
|
+
class SecretEngineListResponse:
|
27010
|
+
'''
|
27011
|
+
SecretEngineListResponse contains a list of requested Secret Engine
|
27012
|
+
'''
|
27013
|
+
__slots__ = [
|
27014
|
+
'rate_limit',
|
27015
|
+
]
|
27016
|
+
|
27017
|
+
def __init__(
|
27018
|
+
self,
|
27019
|
+
rate_limit=None,
|
27020
|
+
):
|
27021
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
27022
|
+
'''
|
27023
|
+
Rate limit information.
|
27024
|
+
'''
|
27025
|
+
|
27026
|
+
def __repr__(self):
|
27027
|
+
return '<sdm.SecretEngineListResponse ' + \
|
27028
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
27029
|
+
'>'
|
27030
|
+
|
27031
|
+
def to_dict(self):
|
27032
|
+
return {
|
27033
|
+
'rate_limit': self.rate_limit,
|
27034
|
+
}
|
27035
|
+
|
27036
|
+
@classmethod
|
27037
|
+
def from_dict(cls, d):
|
27038
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
27039
|
+
|
27040
|
+
|
27041
|
+
class SecretEnginePasswordPolicy:
|
24906
27042
|
__slots__ = [
|
24907
|
-
'
|
24908
|
-
'
|
24909
|
-
'
|
24910
|
-
'
|
24911
|
-
'
|
24912
|
-
'
|
24913
|
-
'name',
|
24914
|
-
'password',
|
24915
|
-
'port',
|
24916
|
-
'port_forwarding',
|
24917
|
-
'port_override',
|
24918
|
-
'proxy_cluster_id',
|
24919
|
-
'secret_store_id',
|
24920
|
-
'subdomain',
|
24921
|
-
'tags',
|
24922
|
-
'username',
|
27043
|
+
'allow_repeat',
|
27044
|
+
'exclude_characters',
|
27045
|
+
'exclude_upper_case',
|
27046
|
+
'length',
|
27047
|
+
'num_digits',
|
27048
|
+
'num_symbols',
|
24923
27049
|
]
|
24924
27050
|
|
24925
27051
|
def __init__(
|
24926
27052
|
self,
|
24927
|
-
|
24928
|
-
|
24929
|
-
|
24930
|
-
|
24931
|
-
|
24932
|
-
|
24933
|
-
name=None,
|
24934
|
-
password=None,
|
24935
|
-
port=None,
|
24936
|
-
port_forwarding=None,
|
24937
|
-
port_override=None,
|
24938
|
-
proxy_cluster_id=None,
|
24939
|
-
secret_store_id=None,
|
24940
|
-
subdomain=None,
|
24941
|
-
tags=None,
|
24942
|
-
username=None,
|
27053
|
+
allow_repeat=None,
|
27054
|
+
exclude_characters=None,
|
27055
|
+
exclude_upper_case=None,
|
27056
|
+
length=None,
|
27057
|
+
num_digits=None,
|
27058
|
+
num_symbols=None,
|
24943
27059
|
):
|
24944
|
-
self.
|
24945
|
-
'''
|
24946
|
-
Whether deprecated, insecure key exchanges are allowed for use to connect to the target ssh server.
|
24947
|
-
'''
|
24948
|
-
self.bind_interface = bind_interface if bind_interface is not None else ''
|
24949
|
-
'''
|
24950
|
-
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.
|
24951
|
-
'''
|
24952
|
-
self.egress_filter = egress_filter if egress_filter is not None else ''
|
27060
|
+
self.allow_repeat = allow_repeat if allow_repeat is not None else False
|
24953
27061
|
'''
|
24954
|
-
|
27062
|
+
If set to true allows for consecutive characters to repeat itself
|
24955
27063
|
'''
|
24956
|
-
self.
|
27064
|
+
self.exclude_characters = exclude_characters if exclude_characters is not None else ''
|
24957
27065
|
'''
|
24958
|
-
|
27066
|
+
Characters to exclude when generating password
|
24959
27067
|
'''
|
24960
|
-
self.
|
27068
|
+
self.exclude_upper_case = exclude_upper_case if exclude_upper_case is not None else False
|
24961
27069
|
'''
|
24962
|
-
|
27070
|
+
If set to true do not include upper case letters when generating password
|
24963
27071
|
'''
|
24964
|
-
self.
|
27072
|
+
self.length = length if length is not None else 0
|
24965
27073
|
'''
|
24966
|
-
|
27074
|
+
Password length.
|
24967
27075
|
'''
|
24968
|
-
self.
|
27076
|
+
self.num_digits = num_digits if num_digits is not None else 0
|
24969
27077
|
'''
|
24970
|
-
|
27078
|
+
Numbers of digits to use when generating password
|
24971
27079
|
'''
|
24972
|
-
self.
|
27080
|
+
self.num_symbols = num_symbols if num_symbols is not None else 0
|
24973
27081
|
'''
|
24974
|
-
|
27082
|
+
Number of symbols to use when generating password
|
24975
27083
|
'''
|
24976
|
-
|
27084
|
+
|
27085
|
+
def __repr__(self):
|
27086
|
+
return '<sdm.SecretEnginePasswordPolicy ' + \
|
27087
|
+
'allow_repeat: ' + repr(self.allow_repeat) + ' ' +\
|
27088
|
+
'exclude_characters: ' + repr(self.exclude_characters) + ' ' +\
|
27089
|
+
'exclude_upper_case: ' + repr(self.exclude_upper_case) + ' ' +\
|
27090
|
+
'length: ' + repr(self.length) + ' ' +\
|
27091
|
+
'num_digits: ' + repr(self.num_digits) + ' ' +\
|
27092
|
+
'num_symbols: ' + repr(self.num_symbols) + ' ' +\
|
27093
|
+
'>'
|
27094
|
+
|
27095
|
+
def to_dict(self):
|
27096
|
+
return {
|
27097
|
+
'allow_repeat': self.allow_repeat,
|
27098
|
+
'exclude_characters': self.exclude_characters,
|
27099
|
+
'exclude_upper_case': self.exclude_upper_case,
|
27100
|
+
'length': self.length,
|
27101
|
+
'num_digits': self.num_digits,
|
27102
|
+
'num_symbols': self.num_symbols,
|
27103
|
+
}
|
27104
|
+
|
27105
|
+
@classmethod
|
27106
|
+
def from_dict(cls, d):
|
27107
|
+
return cls(
|
27108
|
+
allow_repeat=d.get('allow_repeat'),
|
27109
|
+
exclude_characters=d.get('exclude_characters'),
|
27110
|
+
exclude_upper_case=d.get('exclude_upper_case'),
|
27111
|
+
length=d.get('length'),
|
27112
|
+
num_digits=d.get('num_digits'),
|
27113
|
+
num_symbols=d.get('num_symbols'),
|
27114
|
+
)
|
27115
|
+
|
27116
|
+
|
27117
|
+
class SecretEnginePolicy:
|
27118
|
+
__slots__ = [
|
27119
|
+
'password_policy',
|
27120
|
+
]
|
27121
|
+
|
27122
|
+
def __init__(
|
27123
|
+
self,
|
27124
|
+
password_policy=None,
|
27125
|
+
):
|
27126
|
+
self.password_policy = password_policy if password_policy is not None else None
|
24977
27127
|
'''
|
24978
|
-
|
27128
|
+
Policy for password
|
24979
27129
|
'''
|
24980
|
-
|
27130
|
+
|
27131
|
+
def __repr__(self):
|
27132
|
+
return '<sdm.SecretEnginePolicy ' + \
|
27133
|
+
'password_policy: ' + repr(self.password_policy) + ' ' +\
|
27134
|
+
'>'
|
27135
|
+
|
27136
|
+
def to_dict(self):
|
27137
|
+
return {
|
27138
|
+
'password_policy': self.password_policy,
|
27139
|
+
}
|
27140
|
+
|
27141
|
+
@classmethod
|
27142
|
+
def from_dict(cls, d):
|
27143
|
+
return cls(password_policy=d.get('password_policy'), )
|
27144
|
+
|
27145
|
+
|
27146
|
+
class SecretEngineRotateRequest:
|
27147
|
+
__slots__ = [
|
27148
|
+
'id',
|
27149
|
+
'password_policy',
|
27150
|
+
]
|
27151
|
+
|
27152
|
+
def __init__(
|
27153
|
+
self,
|
27154
|
+
id=None,
|
27155
|
+
password_policy=None,
|
27156
|
+
):
|
27157
|
+
self.id = id if id is not None else ''
|
24981
27158
|
'''
|
24982
|
-
|
27159
|
+
The unique identifier of the Secret Engine to rotate credentials for.
|
24983
27160
|
'''
|
24984
|
-
self.
|
27161
|
+
self.password_policy = password_policy if password_policy is not None else None
|
24985
27162
|
'''
|
24986
|
-
|
27163
|
+
Optional password policy to use when generating a password
|
27164
|
+
If not provided it will use secret engine's password_policy
|
24987
27165
|
'''
|
24988
|
-
|
27166
|
+
|
27167
|
+
def __repr__(self):
|
27168
|
+
return '<sdm.SecretEngineRotateRequest ' + \
|
27169
|
+
'id: ' + repr(self.id) + ' ' +\
|
27170
|
+
'password_policy: ' + repr(self.password_policy) + ' ' +\
|
27171
|
+
'>'
|
27172
|
+
|
27173
|
+
def to_dict(self):
|
27174
|
+
return {
|
27175
|
+
'id': self.id,
|
27176
|
+
'password_policy': self.password_policy,
|
27177
|
+
}
|
27178
|
+
|
27179
|
+
@classmethod
|
27180
|
+
def from_dict(cls, d):
|
27181
|
+
return cls(
|
27182
|
+
id=d.get('id'),
|
27183
|
+
password_policy=d.get('password_policy'),
|
27184
|
+
)
|
27185
|
+
|
27186
|
+
|
27187
|
+
class SecretEngineRotateResponse:
|
27188
|
+
__slots__ = [
|
27189
|
+
'rate_limit',
|
27190
|
+
]
|
27191
|
+
|
27192
|
+
def __init__(
|
27193
|
+
self,
|
27194
|
+
rate_limit=None,
|
27195
|
+
):
|
27196
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
24989
27197
|
'''
|
24990
|
-
|
27198
|
+
Rate limit information.
|
24991
27199
|
'''
|
24992
|
-
|
27200
|
+
|
27201
|
+
def __repr__(self):
|
27202
|
+
return '<sdm.SecretEngineRotateResponse ' + \
|
27203
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
27204
|
+
'>'
|
27205
|
+
|
27206
|
+
def to_dict(self):
|
27207
|
+
return {
|
27208
|
+
'rate_limit': self.rate_limit,
|
27209
|
+
}
|
27210
|
+
|
27211
|
+
@classmethod
|
27212
|
+
def from_dict(cls, d):
|
27213
|
+
return cls(rate_limit=d.get('rate_limit'), )
|
27214
|
+
|
27215
|
+
|
27216
|
+
class SecretEngineUpdateRequest:
|
27217
|
+
'''
|
27218
|
+
SecretEngineUpdateRequest specifies secret engine to update
|
27219
|
+
'''
|
27220
|
+
__slots__ = [
|
27221
|
+
'secret_engine',
|
27222
|
+
]
|
27223
|
+
|
27224
|
+
def __init__(
|
27225
|
+
self,
|
27226
|
+
secret_engine=None,
|
27227
|
+
):
|
27228
|
+
self.secret_engine = secret_engine if secret_engine is not None else None
|
24993
27229
|
'''
|
24994
|
-
|
27230
|
+
Secret engine to update
|
24995
27231
|
'''
|
24996
|
-
|
27232
|
+
|
27233
|
+
def __repr__(self):
|
27234
|
+
return '<sdm.SecretEngineUpdateRequest ' + \
|
27235
|
+
'secret_engine: ' + repr(self.secret_engine) + ' ' +\
|
27236
|
+
'>'
|
27237
|
+
|
27238
|
+
def to_dict(self):
|
27239
|
+
return {
|
27240
|
+
'secret_engine': self.secret_engine,
|
27241
|
+
}
|
27242
|
+
|
27243
|
+
@classmethod
|
27244
|
+
def from_dict(cls, d):
|
27245
|
+
return cls(secret_engine=d.get('secret_engine'), )
|
27246
|
+
|
27247
|
+
|
27248
|
+
class SecretEngineUpdateResponse:
|
27249
|
+
'''
|
27250
|
+
SecretEngineUpdateResponse contains information about Secret Engine after successful update.
|
27251
|
+
'''
|
27252
|
+
__slots__ = [
|
27253
|
+
'meta',
|
27254
|
+
'rate_limit',
|
27255
|
+
'secret_engine',
|
27256
|
+
]
|
27257
|
+
|
27258
|
+
def __init__(
|
27259
|
+
self,
|
27260
|
+
meta=None,
|
27261
|
+
rate_limit=None,
|
27262
|
+
secret_engine=None,
|
27263
|
+
):
|
27264
|
+
self.meta = meta if meta is not None else None
|
24997
27265
|
'''
|
24998
|
-
|
27266
|
+
Reserved for future use.
|
24999
27267
|
'''
|
25000
|
-
self.
|
27268
|
+
self.rate_limit = rate_limit if rate_limit is not None else None
|
25001
27269
|
'''
|
25002
|
-
|
27270
|
+
Rate limit information.
|
25003
27271
|
'''
|
25004
|
-
self.
|
27272
|
+
self.secret_engine = secret_engine if secret_engine is not None else None
|
25005
27273
|
'''
|
25006
|
-
The
|
27274
|
+
The requested Secret Engine.
|
25007
27275
|
'''
|
25008
27276
|
|
25009
27277
|
def __repr__(self):
|
25010
|
-
return '<sdm.
|
25011
|
-
'
|
25012
|
-
'
|
25013
|
-
'
|
25014
|
-
'healthy: ' + repr(self.healthy) + ' ' +\
|
25015
|
-
'hostname: ' + repr(self.hostname) + ' ' +\
|
25016
|
-
'id: ' + repr(self.id) + ' ' +\
|
25017
|
-
'name: ' + repr(self.name) + ' ' +\
|
25018
|
-
'password: ' + repr(self.password) + ' ' +\
|
25019
|
-
'port: ' + repr(self.port) + ' ' +\
|
25020
|
-
'port_forwarding: ' + repr(self.port_forwarding) + ' ' +\
|
25021
|
-
'port_override: ' + repr(self.port_override) + ' ' +\
|
25022
|
-
'proxy_cluster_id: ' + repr(self.proxy_cluster_id) + ' ' +\
|
25023
|
-
'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
|
25024
|
-
'subdomain: ' + repr(self.subdomain) + ' ' +\
|
25025
|
-
'tags: ' + repr(self.tags) + ' ' +\
|
25026
|
-
'username: ' + repr(self.username) + ' ' +\
|
27278
|
+
return '<sdm.SecretEngineUpdateResponse ' + \
|
27279
|
+
'meta: ' + repr(self.meta) + ' ' +\
|
27280
|
+
'rate_limit: ' + repr(self.rate_limit) + ' ' +\
|
27281
|
+
'secret_engine: ' + repr(self.secret_engine) + ' ' +\
|
25027
27282
|
'>'
|
25028
27283
|
|
25029
27284
|
def to_dict(self):
|
25030
27285
|
return {
|
25031
|
-
'
|
25032
|
-
self.
|
25033
|
-
'
|
25034
|
-
'egress_filter': self.egress_filter,
|
25035
|
-
'healthy': self.healthy,
|
25036
|
-
'hostname': self.hostname,
|
25037
|
-
'id': self.id,
|
25038
|
-
'name': self.name,
|
25039
|
-
'password': self.password,
|
25040
|
-
'port': self.port,
|
25041
|
-
'port_forwarding': self.port_forwarding,
|
25042
|
-
'port_override': self.port_override,
|
25043
|
-
'proxy_cluster_id': self.proxy_cluster_id,
|
25044
|
-
'secret_store_id': self.secret_store_id,
|
25045
|
-
'subdomain': self.subdomain,
|
25046
|
-
'tags': self.tags,
|
25047
|
-
'username': self.username,
|
27286
|
+
'meta': self.meta,
|
27287
|
+
'rate_limit': self.rate_limit,
|
27288
|
+
'secret_engine': self.secret_engine,
|
25048
27289
|
}
|
25049
27290
|
|
25050
27291
|
@classmethod
|
25051
27292
|
def from_dict(cls, d):
|
25052
27293
|
return cls(
|
25053
|
-
|
25054
|
-
|
25055
|
-
|
25056
|
-
egress_filter=d.get('egress_filter'),
|
25057
|
-
healthy=d.get('healthy'),
|
25058
|
-
hostname=d.get('hostname'),
|
25059
|
-
id=d.get('id'),
|
25060
|
-
name=d.get('name'),
|
25061
|
-
password=d.get('password'),
|
25062
|
-
port=d.get('port'),
|
25063
|
-
port_forwarding=d.get('port_forwarding'),
|
25064
|
-
port_override=d.get('port_override'),
|
25065
|
-
proxy_cluster_id=d.get('proxy_cluster_id'),
|
25066
|
-
secret_store_id=d.get('secret_store_id'),
|
25067
|
-
subdomain=d.get('subdomain'),
|
25068
|
-
tags=d.get('tags'),
|
25069
|
-
username=d.get('username'),
|
27294
|
+
meta=d.get('meta'),
|
27295
|
+
rate_limit=d.get('rate_limit'),
|
27296
|
+
secret_engine=d.get('secret_engine'),
|
25070
27297
|
)
|
25071
27298
|
|
25072
27299
|
|