strongdm 15.17.0__zip → 15.20.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.
Files changed (159) hide show
  1. {strongdm-15.17.0 → strongdm-15.20.0}/PKG-INFO +2 -2
  2. {strongdm-15.17.0 → strongdm-15.20.0}/setup.py +2 -2
  3. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/client.py +1 -1
  4. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/drivers_pb2.py +87 -89
  5. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/models.py +45 -9
  6. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/plumbing.py +14 -2
  7. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_engine_types_pb2.py +12 -2
  8. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm.egg-info/PKG-INFO +2 -2
  9. {strongdm-15.17.0 → strongdm-15.20.0}/LICENSE +0 -0
  10. {strongdm-15.17.0 → strongdm-15.20.0}/README.md +0 -0
  11. {strongdm-15.17.0 → strongdm-15.20.0}/setup.cfg +0 -0
  12. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/__init__.py +0 -0
  13. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/access_request_events_history_pb2.py +0 -0
  14. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
  15. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/access_requests_history_pb2.py +0 -0
  16. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
  17. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/access_requests_pb2.py +0 -0
  18. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/access_requests_pb2_grpc.py +0 -0
  19. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_attachments_history_pb2.py +0 -0
  20. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
  21. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_attachments_pb2.py +0 -0
  22. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
  23. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_grants_history_pb2.py +0 -0
  24. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
  25. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_grants_pb2.py +0 -0
  26. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_grants_pb2_grpc.py +0 -0
  27. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_permissions_pb2.py +0 -0
  28. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
  29. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_resources_history_pb2.py +0 -0
  30. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
  31. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_resources_pb2.py +0 -0
  32. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/account_resources_pb2_grpc.py +0 -0
  33. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_groups_history_pb2.py +0 -0
  34. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_groups_history_pb2_grpc.py +0 -0
  35. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_groups_pb2.py +0 -0
  36. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_groups_pb2_grpc.py +0 -0
  37. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_history_pb2.py +0 -0
  38. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
  39. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_pb2.py +0 -0
  40. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/accounts_pb2_grpc.py +0 -0
  41. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/activities_pb2.py +0 -0
  42. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/activities_pb2_grpc.py +0 -0
  43. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
  44. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
  45. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
  46. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
  47. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
  48. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
  49. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
  50. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
  51. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflows_history_pb2.py +0 -0
  52. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
  53. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflows_pb2.py +0 -0
  54. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
  55. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/constants.py +0 -0
  56. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/control_panel_pb2.py +0 -0
  57. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/control_panel_pb2_grpc.py +0 -0
  58. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/drivers_pb2_grpc.py +0 -0
  59. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/errors.py +0 -0
  60. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_history_pb2.py +0 -0
  61. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_history_pb2_grpc.py +0 -0
  62. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_pb2.py +0 -0
  63. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_pb2_grpc.py +0 -0
  64. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_roles_history_pb2.py +0 -0
  65. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_roles_history_pb2_grpc.py +0 -0
  66. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_roles_pb2.py +0 -0
  67. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/groups_roles_pb2_grpc.py +0 -0
  68. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/health_checks_pb2.py +0 -0
  69. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/health_checks_pb2_grpc.py +0 -0
  70. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_aliases_history_pb2.py +0 -0
  71. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
  72. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_aliases_pb2.py +0 -0
  73. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
  74. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_sets_history_pb2.py +0 -0
  75. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
  76. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_sets_pb2.py +0 -0
  77. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
  78. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/managed_secrets_pb2.py +0 -0
  79. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/managed_secrets_pb2_grpc.py +0 -0
  80. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/nodes_history_pb2.py +0 -0
  81. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
  82. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/nodes_pb2.py +0 -0
  83. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/nodes_pb2_grpc.py +0 -0
  84. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/options_pb2.py +0 -0
  85. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/options_pb2_grpc.py +0 -0
  86. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/organization_history_pb2.py +0 -0
  87. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/organization_history_pb2_grpc.py +0 -0
  88. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_group_nodes_pb2.py +0 -0
  89. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
  90. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_group_peers_pb2.py +0 -0
  91. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
  92. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_group_resources_pb2.py +0 -0
  93. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
  94. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_groups_pb2.py +0 -0
  95. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
  96. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/policies_history_pb2.py +0 -0
  97. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/policies_history_pb2_grpc.py +0 -0
  98. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/policies_pb2.py +0 -0
  99. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/policies_pb2_grpc.py +0 -0
  100. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
  101. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
  102. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/queries_pb2.py +0 -0
  103. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/queries_pb2_grpc.py +0 -0
  104. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identities_history_pb2.py +0 -0
  105. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
  106. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identities_pb2.py +0 -0
  107. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
  108. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
  109. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
  110. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identity_groups_pb2.py +0 -0
  111. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
  112. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/replays_pb2.py +0 -0
  113. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/replays_pb2_grpc.py +0 -0
  114. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/resources_history_pb2.py +0 -0
  115. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/resources_history_pb2_grpc.py +0 -0
  116. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/resources_pb2.py +0 -0
  117. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/resources_pb2_grpc.py +0 -0
  118. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/role_resources_history_pb2.py +0 -0
  119. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
  120. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/role_resources_pb2.py +0 -0
  121. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/role_resources_pb2_grpc.py +0 -0
  122. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/roles_history_pb2.py +0 -0
  123. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/roles_history_pb2_grpc.py +0 -0
  124. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/roles_pb2.py +0 -0
  125. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/roles_pb2_grpc.py +0 -0
  126. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_engine_policy_pb2.py +0 -0
  127. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
  128. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
  129. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_engines_pb2.py +0 -0
  130. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_engines_pb2_grpc.py +0 -0
  131. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_store_healths_pb2.py +0 -0
  132. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
  133. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_store_types_pb2.py +0 -0
  134. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
  135. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_stores_history_pb2.py +0 -0
  136. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
  137. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_stores_pb2.py +0 -0
  138. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
  139. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/spec_pb2.py +0 -0
  140. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/spec_pb2_grpc.py +0 -0
  141. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/svc.py +0 -0
  142. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/tags_pb2.py +0 -0
  143. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/tags_pb2_grpc.py +0 -0
  144. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
  145. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
  146. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_approvers_pb2.py +0 -0
  147. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
  148. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_roles_history_pb2.py +0 -0
  149. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
  150. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_roles_pb2.py +0 -0
  151. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
  152. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflows_history_pb2.py +0 -0
  153. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
  154. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflows_pb2.py +0 -0
  155. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm/workflows_pb2_grpc.py +0 -0
  156. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm.egg-info/SOURCES.txt +0 -0
  157. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm.egg-info/dependency_links.txt +0 -0
  158. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm.egg-info/requires.txt +0 -0
  159. {strongdm-15.17.0 → strongdm-15.20.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -18340,7 +18340,6 @@ class MCP:
18340
18340
  'secret_store_id',
18341
18341
  'subdomain',
18342
18342
  'tags',
18343
- 'username',
18344
18343
  ]
18345
18344
 
18346
18345
  def __init__(
@@ -18358,7 +18357,6 @@ class MCP:
18358
18357
  secret_store_id=None,
18359
18358
  subdomain=None,
18360
18359
  tags=None,
18361
- username=None,
18362
18360
  ):
18363
18361
  self.bind_interface = bind_interface if bind_interface is not None else ''
18364
18362
  '''
@@ -18412,10 +18410,6 @@ class MCP:
18412
18410
  '''
18413
18411
  Tags is a map of key, value pairs.
18414
18412
  '''
18415
- self.username = username if username is not None else ''
18416
- '''
18417
- The username to authenticate with.
18418
- '''
18419
18413
 
18420
18414
  def __repr__(self):
18421
18415
  return '<sdm.MCP ' + \
@@ -18432,7 +18426,6 @@ class MCP:
18432
18426
  'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
18433
18427
  'subdomain: ' + repr(self.subdomain) + ' ' +\
18434
18428
  'tags: ' + repr(self.tags) + ' ' +\
18435
- 'username: ' + repr(self.username) + ' ' +\
18436
18429
  '>'
18437
18430
 
18438
18431
  def to_dict(self):
@@ -18450,7 +18443,6 @@ class MCP:
18450
18443
  'secret_store_id': self.secret_store_id,
18451
18444
  'subdomain': self.subdomain,
18452
18445
  'tags': self.tags,
18453
- 'username': self.username,
18454
18446
  }
18455
18447
 
18456
18448
  @classmethod
@@ -18469,7 +18461,6 @@ class MCP:
18469
18461
  secret_store_id=d.get('secret_store_id'),
18470
18462
  subdomain=d.get('subdomain'),
18471
18463
  tags=d.get('tags'),
18472
- username=d.get('username'),
18473
18464
  )
18474
18465
 
18475
18466
 
@@ -24092,33 +24083,51 @@ class PostgresEngine:
24092
24083
  without a major version bump.
24093
24084
  '''
24094
24085
  __slots__ = [
24086
+ 'after_read_ttl',
24087
+ 'database',
24095
24088
  'hostname',
24096
24089
  'id',
24097
24090
  'key_rotation_interval_days',
24098
24091
  'name',
24099
24092
  'password',
24093
+ 'policy',
24100
24094
  'port',
24101
24095
  'public_key',
24102
24096
  'secret_store_id',
24103
24097
  'secret_store_root_path',
24104
24098
  'tags',
24099
+ 'tls',
24100
+ 'ttl',
24105
24101
  'username',
24106
24102
  ]
24107
24103
 
24108
24104
  def __init__(
24109
24105
  self,
24106
+ after_read_ttl=None,
24107
+ database=None,
24110
24108
  hostname=None,
24111
24109
  id=None,
24112
24110
  key_rotation_interval_days=None,
24113
24111
  name=None,
24114
24112
  password=None,
24113
+ policy=None,
24115
24114
  port=None,
24116
24115
  public_key=None,
24117
24116
  secret_store_id=None,
24118
24117
  secret_store_root_path=None,
24119
24118
  tags=None,
24119
+ tls=None,
24120
+ ttl=None,
24120
24121
  username=None,
24121
24122
  ):
24123
+ self.after_read_ttl = after_read_ttl if after_read_ttl is not None else None
24124
+ '''
24125
+ The default time-to-live duration of the password after it's read. Once the ttl has passed, a password will be rotated.
24126
+ '''
24127
+ self.database = database if database is not None else ''
24128
+ '''
24129
+ Database is the database to verify credential against.
24130
+ '''
24122
24131
  self.hostname = hostname if hostname is not None else ''
24123
24132
  '''
24124
24133
  Hostname is the hostname or IP address of the Postgres server.
@@ -24139,6 +24148,10 @@ class PostgresEngine:
24139
24148
  '''
24140
24149
  Password is the password to connect to the Postgres server.
24141
24150
  '''
24151
+ self.policy = policy if policy is not None else None
24152
+ '''
24153
+ Policy for password creation
24154
+ '''
24142
24155
  self.port = port if port is not None else 0
24143
24156
  '''
24144
24157
  Port is the port number of the Postgres server.
@@ -24159,6 +24172,14 @@ class PostgresEngine:
24159
24172
  '''
24160
24173
  Tags is a map of key, value pairs.
24161
24174
  '''
24175
+ self.tls = tls if tls is not None else False
24176
+ '''
24177
+ TLS enables TLS/SSL when connecting to the Postgres server.
24178
+ '''
24179
+ self.ttl = ttl if ttl is not None else None
24180
+ '''
24181
+ The default password time-to-live duration. Once the ttl has passed, a password will be rotated the next time it's requested.
24182
+ '''
24162
24183
  self.username = username if username is not None else ''
24163
24184
  '''
24164
24185
  Username is the username to connect to the Postgres server.
@@ -24166,47 +24187,62 @@ class PostgresEngine:
24166
24187
 
24167
24188
  def __repr__(self):
24168
24189
  return '<sdm.PostgresEngine ' + \
24190
+ 'after_read_ttl: ' + repr(self.after_read_ttl) + ' ' +\
24191
+ 'database: ' + repr(self.database) + ' ' +\
24169
24192
  'hostname: ' + repr(self.hostname) + ' ' +\
24170
24193
  'id: ' + repr(self.id) + ' ' +\
24171
24194
  'key_rotation_interval_days: ' + repr(self.key_rotation_interval_days) + ' ' +\
24172
24195
  'name: ' + repr(self.name) + ' ' +\
24173
24196
  'password: ' + repr(self.password) + ' ' +\
24197
+ 'policy: ' + repr(self.policy) + ' ' +\
24174
24198
  'port: ' + repr(self.port) + ' ' +\
24175
24199
  'public_key: ' + repr(self.public_key) + ' ' +\
24176
24200
  'secret_store_id: ' + repr(self.secret_store_id) + ' ' +\
24177
24201
  'secret_store_root_path: ' + repr(self.secret_store_root_path) + ' ' +\
24178
24202
  'tags: ' + repr(self.tags) + ' ' +\
24203
+ 'tls: ' + repr(self.tls) + ' ' +\
24204
+ 'ttl: ' + repr(self.ttl) + ' ' +\
24179
24205
  'username: ' + repr(self.username) + ' ' +\
24180
24206
  '>'
24181
24207
 
24182
24208
  def to_dict(self):
24183
24209
  return {
24210
+ 'after_read_ttl': self.after_read_ttl,
24211
+ 'database': self.database,
24184
24212
  'hostname': self.hostname,
24185
24213
  'id': self.id,
24186
24214
  'key_rotation_interval_days': self.key_rotation_interval_days,
24187
24215
  'name': self.name,
24188
24216
  'password': self.password,
24217
+ 'policy': self.policy,
24189
24218
  'port': self.port,
24190
24219
  'public_key': self.public_key,
24191
24220
  'secret_store_id': self.secret_store_id,
24192
24221
  'secret_store_root_path': self.secret_store_root_path,
24193
24222
  'tags': self.tags,
24223
+ 'tls': self.tls,
24224
+ 'ttl': self.ttl,
24194
24225
  'username': self.username,
24195
24226
  }
24196
24227
 
24197
24228
  @classmethod
24198
24229
  def from_dict(cls, d):
24199
24230
  return cls(
24231
+ after_read_ttl=d.get('after_read_ttl'),
24232
+ database=d.get('database'),
24200
24233
  hostname=d.get('hostname'),
24201
24234
  id=d.get('id'),
24202
24235
  key_rotation_interval_days=d.get('key_rotation_interval_days'),
24203
24236
  name=d.get('name'),
24204
24237
  password=d.get('password'),
24238
+ policy=d.get('policy'),
24205
24239
  port=d.get('port'),
24206
24240
  public_key=d.get('public_key'),
24207
24241
  secret_store_id=d.get('secret_store_id'),
24208
24242
  secret_store_root_path=d.get('secret_store_root_path'),
24209
24243
  tags=d.get('tags'),
24244
+ tls=d.get('tls'),
24245
+ ttl=d.get('ttl'),
24210
24246
  username=d.get('username'),
24211
24247
  )
24212
24248
 
@@ -8971,7 +8971,6 @@ def convert_mcp_to_porcelain(plumbing):
8971
8971
  porcelain.secret_store_id = (plumbing.secret_store_id)
8972
8972
  porcelain.subdomain = (plumbing.subdomain)
8973
8973
  porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
8974
- porcelain.username = (plumbing.username)
8975
8974
  return porcelain
8976
8975
 
8977
8976
 
@@ -8992,7 +8991,6 @@ def convert_mcp_to_plumbing(porcelain):
8992
8991
  plumbing.secret_store_id = (porcelain.secret_store_id)
8993
8992
  plumbing.subdomain = (porcelain.subdomain)
8994
8993
  plumbing.tags.CopyFrom(convert_tags_to_plumbing(porcelain.tags))
8995
- plumbing.username = (porcelain.username)
8996
8994
  return plumbing
8997
8995
 
8998
8996
 
@@ -11987,17 +11985,24 @@ def convert_postgres_engine_to_porcelain(plumbing):
11987
11985
  if plumbing is None:
11988
11986
  return None
11989
11987
  porcelain = models.PostgresEngine()
11988
+ porcelain.after_read_ttl = convert_duration_to_porcelain(
11989
+ plumbing.after_read_ttl)
11990
+ porcelain.database = (plumbing.database)
11990
11991
  porcelain.hostname = (plumbing.hostname)
11991
11992
  porcelain.id = (plumbing.id)
11992
11993
  porcelain.key_rotation_interval_days = (
11993
11994
  plumbing.key_rotation_interval_days)
11994
11995
  porcelain.name = (plumbing.name)
11995
11996
  porcelain.password = (plumbing.password)
11997
+ porcelain.policy = convert_secret_engine_policy_to_porcelain(
11998
+ plumbing.policy)
11996
11999
  porcelain.port = (plumbing.port)
11997
12000
  porcelain.public_key = (plumbing.public_key)
11998
12001
  porcelain.secret_store_id = (plumbing.secret_store_id)
11999
12002
  porcelain.secret_store_root_path = (plumbing.secret_store_root_path)
12000
12003
  porcelain.tags = convert_tags_to_porcelain(plumbing.tags)
12004
+ porcelain.tls = (plumbing.tls)
12005
+ porcelain.ttl = convert_duration_to_porcelain(plumbing.ttl)
12001
12006
  porcelain.username = (plumbing.username)
12002
12007
  return porcelain
12003
12008
 
@@ -12006,17 +12011,24 @@ def convert_postgres_engine_to_plumbing(porcelain):
12006
12011
  plumbing = PostgresEngine()
12007
12012
  if porcelain is None:
12008
12013
  return plumbing
12014
+ plumbing.after_read_ttl.CopyFrom(
12015
+ convert_duration_to_plumbing(porcelain.after_read_ttl))
12016
+ plumbing.database = (porcelain.database)
12009
12017
  plumbing.hostname = (porcelain.hostname)
12010
12018
  plumbing.id = (porcelain.id)
12011
12019
  plumbing.key_rotation_interval_days = (
12012
12020
  porcelain.key_rotation_interval_days)
12013
12021
  plumbing.name = (porcelain.name)
12014
12022
  plumbing.password = (porcelain.password)
12023
+ plumbing.policy.CopyFrom(
12024
+ convert_secret_engine_policy_to_plumbing(porcelain.policy))
12015
12025
  plumbing.port = (porcelain.port)
12016
12026
  plumbing.public_key = (porcelain.public_key)
12017
12027
  plumbing.secret_store_id = (porcelain.secret_store_id)
12018
12028
  plumbing.secret_store_root_path = (porcelain.secret_store_root_path)
12019
12029
  plumbing.tags.CopyFrom(convert_tags_to_plumbing(porcelain.tags))
12030
+ plumbing.tls = (porcelain.tls)
12031
+ plumbing.ttl.CopyFrom(convert_duration_to_plumbing(porcelain.ttl))
12020
12032
  plumbing.username = (porcelain.username)
12021
12033
  return plumbing
12022
12034
 
@@ -32,7 +32,7 @@ from . import secret_engine_policy_pb2 as secret__engine__policy__pb2
32
32
  from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2
33
33
 
34
34
 
35
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19secret_engine_types.proto\x12\x02v1\x1a\roptions.proto\x1a\ntags.proto\x1a\x1asecret_engine_policy.proto\x1a\x1egoogle/protobuf/duration.proto\"\xc3\x03\n\x0cSecretEngine\x12q\n\x10\x61\x63tive_directory\x18\xcc\x02 \x01(\x0b\x32\x19.v1.ActiveDirectoryEngineB9\xf2\xf8\xb3\x07*\xca\xf3\xb3\x07%\xc2\xf4\xb3\x07 \n\x0cjson_gateway\x12\x10\x61\x63tive_directory\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12\\\n\tkey_value\x18\xcb\x02 \x01(\x0b\x32\x12.v1.KeyValueEngineB2\xf2\xf8\xb3\x07#\xca\xf3\xb3\x07\x1e\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tkey_value\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12Z\n\x08postgres\x18\xcd\x02 \x01(\x0b\x32\x12.v1.PostgresEngineB1\xf2\xf8\xb3\x07\"\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08postgres\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x42z\n\rsecret_engine\x12i\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04name\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04tags\xaa\xf8\xb3\x07\x14\xaa\xf8\xb3\x07\x0fsecret_store_id\xaa\xf8\xb3\x07\x1b\xaa\xf8\xb3\x07\x16secret_store_root_path\xaa\xf8\xb3\x07\x0f\xaa\xf8\xb3\x07\npublic_key\"\xe1\x0c\n\x15\x41\x63tiveDirectoryEngine\x12\x64\n\x0e\x61\x66ter_read_ttl\x18\xf4\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB0\xf2\xf8\xb3\x07+\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07!\xc2\xf4\xb3\x07\x1c\n\x0cjson_gateway\x12\x0c\x61\x66terReadTtl\x12?\n\x06\x62inddn\x18l \x01(\tB/\xf2\xf8\xb3\x07*\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06\x62inddn\x12\x43\n\x08\x62indpass\x18m \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08\x62indpass\x12\x44\n\x0b\x63\x65rtificate\x18k \x01(\tB/\xf2\xf8\xb3\x07*\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07 \xc2\xf4\xb3\x07\x1b\n\x0cjson_gateway\x12\x0b\x63\x65rtificate\x12Q\n\x12\x63onnection_timeout\x18g \x01(\rB5\xf2\xf8\xb3\x07\x30\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07&\xc2\xf4\xb3\x07!\n\x0cjson_gateway\x12\x11\x63onnectionTimeout\x12`\n\x1a\x64o_not_validate_timestamps\x18\xf7\x07 \x01(\x08\x42;\xf2\xf8\xb3\x07\x36\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07,\xc2\xf4\xb3\x07\'\n\x0cjson_gateway\x12\x17\x64oNotValidateTimestamps\x12\x45\n\x0cinsecure_tls\x18j \x01(\x08\x42/\xf2\xf8\xb3\x07*\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07 \xc2\xf4\xb3\x07\x1b\n\x0cjson_gateway\x12\x0binsecureTls\x12p\n\x14max_backoff_duration\x18\xf8\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB6\xf2\xf8\xb3\x07\x31\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\'\xc2\xf4\xb3\x07\"\n\x0cjson_gateway\x12\x12maxBackoffDuration\x12S\n\x06policy\x18\xf6\x07 \x01(\x0b\x32\x16.v1.SecretEnginePolicyB*\xf2\xf8\xb3\x07%\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06policy\x12K\n\x0frequest_timeout\x18h \x01(\rB2\xf2\xf8\xb3\x07-\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07#\xc2\xf4\xb3\x07\x1e\n\x0cjson_gateway\x12\x0erequestTimeout\x12?\n\tstart_tls\x18i \x01(\x08\x42,\xf2\xf8\xb3\x07\'\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08startTls\x12P\n\x03ttl\x18\xf5\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB\'\xf2\xf8\xb3\x07\"\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x18\xc2\xf4\xb3\x07\x13\n\x0cjson_gateway\x12\x03ttl\x12\x41\n\tupndomain\x18\xf3\x07 \x01(\tB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1e\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tupndomain\x12\x39\n\x03url\x18\x66 \x01(\tB,\xf2\xf8\xb3\x07\'\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x18\xc2\xf4\xb3\x07\x13\n\x0cjson_gateway\x12\x03url\x12;\n\x06userdn\x18\xf2\x07 \x01(\tB*\xf2\xf8\xb3\x07%\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06userdn\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12!\n\x04type\x18\x03 \x01(\tB\x13\xf2\xf8\xb3\x07\x0e\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x04!cli\x12(\n\x0fsecret_store_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12/\n\x16secret_store_root_path\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x07 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\npublic_key\x18\x08 \x01(\x0c\x42\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x04!cli\x12.\n\x1akey_rotation_interval_days\x18\t \x01(\x05\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:{\xfa\xf8\xb3\x07v\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07l\xc2\xf4\xb3\x07\x17\n\x03\x63li\x12\x10\x61\x63tive_directory\xc2\xf4\xb3\x07 \n\x0cjson_gateway\x12\x10\x61\x63tive_directory\xc2\xf4\xb3\x07&\n\x12terraform-provider\x12\x10\x61\x63tive_directory\"\xb5\x03\n\x0eKeyValueEngine\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12!\n\x04type\x18\x03 \x01(\tB\x13\xf2\xf8\xb3\x07\x0e\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x04!cli\x12(\n\x0fsecret_store_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12/\n\x16secret_store_root_path\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x07 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\npublic_key\x18\x08 \x01(\x0c\x42\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x04!cli\x12.\n\x1akey_rotation_interval_days\x18\t \x01(\x05\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:f\xfa\xf8\xb3\x07\x61\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07W\xc2\xf4\xb3\x07\x10\n\x03\x63li\x12\tkey_value\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tkey_value\xc2\xf4\xb3\x07\x1f\n\x12terraform-provider\x12\tkey_value\"\xd1\x05\n\x0ePostgresEngine\x12\x43\n\x08hostname\x18\x65 \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08hostname\x12\x43\n\x08password\x18g \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08password\x12;\n\x04port\x18h \x01(\rB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x19\xc2\xf4\xb3\x07\x14\n\x0cjson_gateway\x12\x04port\x12\x43\n\x08username\x18\x66 \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08username\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12!\n\x04type\x18\x03 \x01(\tB\x13\xf2\xf8\xb3\x07\x0e\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x04!cli\x12(\n\x0fsecret_store_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12/\n\x16secret_store_root_path\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x07 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\npublic_key\x18\x08 \x01(\x0c\x42\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x04!cli\x12.\n\x1akey_rotation_interval_days\x18\t \x01(\x05\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:v\xfa\xf8\xb3\x07q\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07g\x88\xf4\xb3\x07\x01\xc2\xf4\xb3\x07\x0f\n\x03\x63li\x12\x08postgres\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08postgres\xc2\xf4\xb3\x07,\n\x12terraform-provider\x12\x16postgres_secret_engineBm\n\x19\x63om.strongdm.api.plumbingB\x19SecretEngineTypesPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
35
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19secret_engine_types.proto\x12\x02v1\x1a\roptions.proto\x1a\ntags.proto\x1a\x1asecret_engine_policy.proto\x1a\x1egoogle/protobuf/duration.proto\"\xc3\x03\n\x0cSecretEngine\x12q\n\x10\x61\x63tive_directory\x18\xcc\x02 \x01(\x0b\x32\x19.v1.ActiveDirectoryEngineB9\xf2\xf8\xb3\x07*\xca\xf3\xb3\x07%\xc2\xf4\xb3\x07 \n\x0cjson_gateway\x12\x10\x61\x63tive_directory\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12\\\n\tkey_value\x18\xcb\x02 \x01(\x0b\x32\x12.v1.KeyValueEngineB2\xf2\xf8\xb3\x07#\xca\xf3\xb3\x07\x1e\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tkey_value\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00\x12Z\n\x08postgres\x18\xcd\x02 \x01(\x0b\x32\x12.v1.PostgresEngineB1\xf2\xf8\xb3\x07\"\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08postgres\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01H\x00:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x42z\n\rsecret_engine\x12i\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04name\xaa\xf8\xb3\x07\t\xaa\xf8\xb3\x07\x04tags\xaa\xf8\xb3\x07\x14\xaa\xf8\xb3\x07\x0fsecret_store_id\xaa\xf8\xb3\x07\x1b\xaa\xf8\xb3\x07\x16secret_store_root_path\xaa\xf8\xb3\x07\x0f\xaa\xf8\xb3\x07\npublic_key\"\xe1\x0c\n\x15\x41\x63tiveDirectoryEngine\x12\x64\n\x0e\x61\x66ter_read_ttl\x18\xf4\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB0\xf2\xf8\xb3\x07+\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07!\xc2\xf4\xb3\x07\x1c\n\x0cjson_gateway\x12\x0c\x61\x66terReadTtl\x12?\n\x06\x62inddn\x18l \x01(\tB/\xf2\xf8\xb3\x07*\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06\x62inddn\x12\x43\n\x08\x62indpass\x18m \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08\x62indpass\x12\x44\n\x0b\x63\x65rtificate\x18k \x01(\tB/\xf2\xf8\xb3\x07*\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07 \xc2\xf4\xb3\x07\x1b\n\x0cjson_gateway\x12\x0b\x63\x65rtificate\x12Q\n\x12\x63onnection_timeout\x18g \x01(\rB5\xf2\xf8\xb3\x07\x30\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07&\xc2\xf4\xb3\x07!\n\x0cjson_gateway\x12\x11\x63onnectionTimeout\x12`\n\x1a\x64o_not_validate_timestamps\x18\xf7\x07 \x01(\x08\x42;\xf2\xf8\xb3\x07\x36\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07,\xc2\xf4\xb3\x07\'\n\x0cjson_gateway\x12\x17\x64oNotValidateTimestamps\x12\x45\n\x0cinsecure_tls\x18j \x01(\x08\x42/\xf2\xf8\xb3\x07*\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07 \xc2\xf4\xb3\x07\x1b\n\x0cjson_gateway\x12\x0binsecureTls\x12p\n\x14max_backoff_duration\x18\xf8\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB6\xf2\xf8\xb3\x07\x31\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\'\xc2\xf4\xb3\x07\"\n\x0cjson_gateway\x12\x12maxBackoffDuration\x12S\n\x06policy\x18\xf6\x07 \x01(\x0b\x32\x16.v1.SecretEnginePolicyB*\xf2\xf8\xb3\x07%\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06policy\x12K\n\x0frequest_timeout\x18h \x01(\rB2\xf2\xf8\xb3\x07-\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07#\xc2\xf4\xb3\x07\x1e\n\x0cjson_gateway\x12\x0erequestTimeout\x12?\n\tstart_tls\x18i \x01(\x08\x42,\xf2\xf8\xb3\x07\'\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08startTls\x12P\n\x03ttl\x18\xf5\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB\'\xf2\xf8\xb3\x07\"\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x18\xc2\xf4\xb3\x07\x13\n\x0cjson_gateway\x12\x03ttl\x12\x41\n\tupndomain\x18\xf3\x07 \x01(\tB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1e\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tupndomain\x12\x39\n\x03url\x18\x66 \x01(\tB,\xf2\xf8\xb3\x07\'\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x18\xc2\xf4\xb3\x07\x13\n\x0cjson_gateway\x12\x03url\x12;\n\x06userdn\x18\xf2\x07 \x01(\tB*\xf2\xf8\xb3\x07%\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06userdn\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12!\n\x04type\x18\x03 \x01(\tB\x13\xf2\xf8\xb3\x07\x0e\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x04!cli\x12(\n\x0fsecret_store_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12/\n\x16secret_store_root_path\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x07 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\npublic_key\x18\x08 \x01(\x0c\x42\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x04!cli\x12.\n\x1akey_rotation_interval_days\x18\t \x01(\x05\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:{\xfa\xf8\xb3\x07v\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07l\xc2\xf4\xb3\x07\x17\n\x03\x63li\x12\x10\x61\x63tive_directory\xc2\xf4\xb3\x07 \n\x0cjson_gateway\x12\x10\x61\x63tive_directory\xc2\xf4\xb3\x07&\n\x12terraform-provider\x12\x10\x61\x63tive_directory\"\xb5\x03\n\x0eKeyValueEngine\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12!\n\x04type\x18\x03 \x01(\tB\x13\xf2\xf8\xb3\x07\x0e\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x04!cli\x12(\n\x0fsecret_store_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12/\n\x16secret_store_root_path\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x07 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\npublic_key\x18\x08 \x01(\x0c\x42\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x04!cli\x12.\n\x1akey_rotation_interval_days\x18\t \x01(\x05\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:f\xfa\xf8\xb3\x07\x61\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07W\xc2\xf4\xb3\x07\x10\n\x03\x63li\x12\tkey_value\xc2\xf4\xb3\x07\x19\n\x0cjson_gateway\x12\tkey_value\xc2\xf4\xb3\x07\x1f\n\x12terraform-provider\x12\tkey_value\"\xd6\x08\n\x0ePostgresEngine\x12\x63\n\x0e\x61\x66ter_read_ttl\x18i \x01(\x0b\x32\x19.google.protobuf.DurationB0\xf2\xf8\xb3\x07+\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07!\xc2\xf4\xb3\x07\x1c\n\x0cjson_gateway\x12\x0c\x61\x66terReadTtl\x12\x43\n\x08\x64\x61tabase\x18l \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08\x64\x61tabase\x12\x43\n\x08hostname\x18\x65 \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08hostname\x12\x43\n\x08password\x18g \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08password\x12R\n\x06policy\x18k \x01(\x0b\x32\x16.v1.SecretEnginePolicyB*\xf2\xf8\xb3\x07%\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1b\xc2\xf4\xb3\x07\x16\n\x0cjson_gateway\x12\x06policy\x12;\n\x04port\x18h \x01(\rB-\xf2\xf8\xb3\x07(\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x19\xc2\xf4\xb3\x07\x14\n\x0cjson_gateway\x12\x04port\x12\x34\n\x03tls\x18m \x01(\x08\x42\'\xf2\xf8\xb3\x07\"\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x18\xc2\xf4\xb3\x07\x13\n\x0cjson_gateway\x12\x03tls\x12O\n\x03ttl\x18j \x01(\x0b\x32\x19.google.protobuf.DurationB\'\xf2\xf8\xb3\x07\"\xb0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x18\xc2\xf4\xb3\x07\x13\n\x0cjson_gateway\x12\x03ttl\x12\x43\n\x08username\x18\x66 \x01(\tB1\xf2\xf8\xb3\x07,\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\xca\xf3\xb3\x07\x1d\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08username\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1d\n\x04name\x18\x02 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12!\n\x04type\x18\x03 \x01(\tB\x13\xf2\xf8\xb3\x07\x0e\xb0\xf3\xb3\x07\x01\xb2\xf4\xb3\x07\x04!cli\x12(\n\x0fsecret_store_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12/\n\x16secret_store_root_path\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\"\n\x04tags\x18\x07 \x01(\x0b\x32\x08.v1.TagsB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x32\n\npublic_key\x18\x08 \x01(\x0c\x42\x1e\xf2\xf8\xb3\x07\x19\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\xb2\xf4\xb3\x07\x01*\xb2\xf4\xb3\x07\x04!cli\x12.\n\x1akey_rotation_interval_days\x18\t \x01(\x05\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:v\xfa\xf8\xb3\x07q\xa8\xf3\xb3\x07\x01\xca\xf3\xb3\x07g\x88\xf4\xb3\x07\x01\xc2\xf4\xb3\x07\x0f\n\x03\x63li\x12\x08postgres\xc2\xf4\xb3\x07\x18\n\x0cjson_gateway\x12\x08postgres\xc2\xf4\xb3\x07,\n\x12terraform-provider\x12\x16postgres_secret_engineBm\n\x19\x63om.strongdm.api.plumbingB\x19SecretEngineTypesPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
36
36
 
37
37
 
38
38
 
@@ -148,12 +148,22 @@ if _descriptor._USE_C_DESCRIPTORS == False:
148
148
  _KEYVALUEENGINE.fields_by_name['key_rotation_interval_days']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
149
149
  _KEYVALUEENGINE._options = None
150
150
  _KEYVALUEENGINE._serialized_options = b'\372\370\263\007a\250\363\263\007\001\312\363\263\007W\302\364\263\007\020\n\003cli\022\tkey_value\302\364\263\007\031\n\014json_gateway\022\tkey_value\302\364\263\007\037\n\022terraform-provider\022\tkey_value'
151
+ _POSTGRESENGINE.fields_by_name['after_read_ttl']._options = None
152
+ _POSTGRESENGINE.fields_by_name['after_read_ttl']._serialized_options = b'\362\370\263\007+\260\363\263\007\001\312\363\263\007!\302\364\263\007\034\n\014json_gateway\022\014afterReadTtl'
153
+ _POSTGRESENGINE.fields_by_name['database']._options = None
154
+ _POSTGRESENGINE.fields_by_name['database']._serialized_options = b'\362\370\263\007,\260\363\263\007\001\300\363\263\007\001\312\363\263\007\035\302\364\263\007\030\n\014json_gateway\022\010database'
151
155
  _POSTGRESENGINE.fields_by_name['hostname']._options = None
152
156
  _POSTGRESENGINE.fields_by_name['hostname']._serialized_options = b'\362\370\263\007,\260\363\263\007\001\300\363\263\007\001\312\363\263\007\035\302\364\263\007\030\n\014json_gateway\022\010hostname'
153
157
  _POSTGRESENGINE.fields_by_name['password']._options = None
154
158
  _POSTGRESENGINE.fields_by_name['password']._serialized_options = b'\362\370\263\007,\260\363\263\007\001\300\363\263\007\001\312\363\263\007\035\302\364\263\007\030\n\014json_gateway\022\010password'
159
+ _POSTGRESENGINE.fields_by_name['policy']._options = None
160
+ _POSTGRESENGINE.fields_by_name['policy']._serialized_options = b'\362\370\263\007%\260\363\263\007\001\312\363\263\007\033\302\364\263\007\026\n\014json_gateway\022\006policy'
155
161
  _POSTGRESENGINE.fields_by_name['port']._options = None
156
162
  _POSTGRESENGINE.fields_by_name['port']._serialized_options = b'\362\370\263\007(\260\363\263\007\001\300\363\263\007\001\312\363\263\007\031\302\364\263\007\024\n\014json_gateway\022\004port'
163
+ _POSTGRESENGINE.fields_by_name['tls']._options = None
164
+ _POSTGRESENGINE.fields_by_name['tls']._serialized_options = b'\362\370\263\007\"\260\363\263\007\001\312\363\263\007\030\302\364\263\007\023\n\014json_gateway\022\003tls'
165
+ _POSTGRESENGINE.fields_by_name['ttl']._options = None
166
+ _POSTGRESENGINE.fields_by_name['ttl']._serialized_options = b'\362\370\263\007\"\260\363\263\007\001\312\363\263\007\030\302\364\263\007\023\n\014json_gateway\022\003ttl'
157
167
  _POSTGRESENGINE.fields_by_name['username']._options = None
158
168
  _POSTGRESENGINE.fields_by_name['username']._serialized_options = b'\362\370\263\007,\260\363\263\007\001\300\363\263\007\001\312\363\263\007\035\302\364\263\007\030\n\014json_gateway\022\010username'
159
169
  _POSTGRESENGINE.fields_by_name['id']._options = None
@@ -181,5 +191,5 @@ if _descriptor._USE_C_DESCRIPTORS == False:
181
191
  _KEYVALUEENGINE._serialized_start=2211
182
192
  _KEYVALUEENGINE._serialized_end=2648
183
193
  _POSTGRESENGINE._serialized_start=2651
184
- _POSTGRESENGINE._serialized_end=3372
194
+ _POSTGRESENGINE._serialized_end=3761
185
195
  # @@protoc_insertion_point(module_scope)
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strongdm
3
- Version: 15.17.0
3
+ Version: 15.20.0
4
4
  Summary: strongDM SDK for the Python programming language.
5
5
  Home-page: https://github.com/strongdm/strongdm-sdk-python
6
6
  Author: strongDM Team
7
7
  Author-email: sdk-feedback@strongdm.com
8
8
  License: apache-2.0
9
- Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.17.0.tar.gz
9
+ Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.20.0.tar.gz
10
10
  Keywords: strongDM,sdm,api,automation,security,audit,database,server,ssh,rdp
11
11
  Platform: UNKNOWN
12
12
  Classifier: Development Status :: 4 - Beta
File without changes
File without changes
File without changes