strongdm 15.44.0__tar.gz → 15.45.0__tar.gz

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 (161) hide show
  1. {strongdm-15.44.0 → strongdm-15.45.0}/PKG-INFO +2 -2
  2. {strongdm-15.44.0 → strongdm-15.45.0}/setup.py +2 -2
  3. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/client.py +1 -1
  4. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/managed_secrets_pb2.py +2 -2
  5. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/models.py +1 -12
  6. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/plumbing.py +0 -2
  7. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/svc.py +1 -2
  8. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm.egg-info/PKG-INFO +2 -2
  9. {strongdm-15.44.0 → strongdm-15.45.0}/LICENSE +0 -0
  10. {strongdm-15.44.0 → strongdm-15.45.0}/README.md +0 -0
  11. {strongdm-15.44.0 → strongdm-15.45.0}/setup.cfg +0 -0
  12. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/__init__.py +0 -0
  13. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/access_request_events_history_pb2.py +0 -0
  14. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
  15. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/access_requests_history_pb2.py +0 -0
  16. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
  17. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/access_requests_pb2.py +0 -0
  18. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/access_requests_pb2_grpc.py +0 -0
  19. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_attachments_history_pb2.py +0 -0
  20. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
  21. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_attachments_pb2.py +0 -0
  22. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
  23. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_grants_history_pb2.py +0 -0
  24. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
  25. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_grants_pb2.py +0 -0
  26. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_grants_pb2_grpc.py +0 -0
  27. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_permissions_pb2.py +0 -0
  28. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
  29. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_resources_history_pb2.py +0 -0
  30. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
  31. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_resources_pb2.py +0 -0
  32. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/account_resources_pb2_grpc.py +0 -0
  33. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_groups_history_pb2.py +0 -0
  34. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_groups_history_pb2_grpc.py +0 -0
  35. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_groups_pb2.py +0 -0
  36. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_groups_pb2_grpc.py +0 -0
  37. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_history_pb2.py +0 -0
  38. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
  39. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_pb2.py +0 -0
  40. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/accounts_pb2_grpc.py +0 -0
  41. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/activities_pb2.py +0 -0
  42. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/activities_pb2_grpc.py +0 -0
  43. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_approvers_history_pb2.py +0 -0
  44. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
  45. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_approvers_pb2.py +0 -0
  46. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
  47. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_steps_history_pb2.py +0 -0
  48. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
  49. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_steps_pb2.py +0 -0
  50. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
  51. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflows_history_pb2.py +0 -0
  52. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
  53. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflows_pb2.py +0 -0
  54. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
  55. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/constants.py +0 -0
  56. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/control_panel_pb2.py +0 -0
  57. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/control_panel_pb2_grpc.py +0 -0
  58. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/discovery_connectors_pb2.py +0 -0
  59. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/discovery_connectors_pb2_grpc.py +0 -0
  60. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/drivers_pb2.py +0 -0
  61. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/drivers_pb2_grpc.py +0 -0
  62. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/errors.py +0 -0
  63. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_history_pb2.py +0 -0
  64. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_history_pb2_grpc.py +0 -0
  65. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_pb2.py +0 -0
  66. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_pb2_grpc.py +0 -0
  67. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_roles_history_pb2.py +0 -0
  68. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_roles_history_pb2_grpc.py +0 -0
  69. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_roles_pb2.py +0 -0
  70. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/groups_roles_pb2_grpc.py +0 -0
  71. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/health_checks_pb2.py +0 -0
  72. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/health_checks_pb2_grpc.py +0 -0
  73. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_aliases_history_pb2.py +0 -0
  74. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
  75. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_aliases_pb2.py +0 -0
  76. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
  77. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_sets_history_pb2.py +0 -0
  78. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
  79. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_sets_pb2.py +0 -0
  80. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
  81. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/managed_secrets_pb2_grpc.py +0 -0
  82. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/nodes_history_pb2.py +0 -0
  83. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
  84. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/nodes_pb2.py +0 -0
  85. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/nodes_pb2_grpc.py +0 -0
  86. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/options_pb2.py +0 -0
  87. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/options_pb2_grpc.py +0 -0
  88. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/organization_history_pb2.py +0 -0
  89. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/organization_history_pb2_grpc.py +0 -0
  90. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_group_nodes_pb2.py +0 -0
  91. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
  92. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_group_peers_pb2.py +0 -0
  93. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
  94. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_group_resources_pb2.py +0 -0
  95. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
  96. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_groups_pb2.py +0 -0
  97. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
  98. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/policies_history_pb2.py +0 -0
  99. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/policies_history_pb2_grpc.py +0 -0
  100. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/policies_pb2.py +0 -0
  101. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/policies_pb2_grpc.py +0 -0
  102. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/proxy_cluster_keys_pb2.py +0 -0
  103. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/proxy_cluster_keys_pb2_grpc.py +0 -0
  104. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/queries_pb2.py +0 -0
  105. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/queries_pb2_grpc.py +0 -0
  106. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identities_history_pb2.py +0 -0
  107. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
  108. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identities_pb2.py +0 -0
  109. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
  110. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
  111. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
  112. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identity_groups_pb2.py +0 -0
  113. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
  114. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/replays_pb2.py +0 -0
  115. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/replays_pb2_grpc.py +0 -0
  116. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/resources_history_pb2.py +0 -0
  117. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/resources_history_pb2_grpc.py +0 -0
  118. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/resources_pb2.py +0 -0
  119. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/resources_pb2_grpc.py +0 -0
  120. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/role_resources_history_pb2.py +0 -0
  121. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
  122. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/role_resources_pb2.py +0 -0
  123. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/role_resources_pb2_grpc.py +0 -0
  124. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/roles_history_pb2.py +0 -0
  125. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/roles_history_pb2_grpc.py +0 -0
  126. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/roles_pb2.py +0 -0
  127. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/roles_pb2_grpc.py +0 -0
  128. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_engine_policy_pb2.py +0 -0
  129. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_engine_policy_pb2_grpc.py +0 -0
  130. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_engine_types_pb2.py +0 -0
  131. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_engine_types_pb2_grpc.py +0 -0
  132. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_engines_pb2.py +0 -0
  133. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_engines_pb2_grpc.py +0 -0
  134. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_store_healths_pb2.py +0 -0
  135. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
  136. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_store_types_pb2.py +0 -0
  137. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
  138. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_stores_history_pb2.py +0 -0
  139. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
  140. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_stores_pb2.py +0 -0
  141. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
  142. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/spec_pb2.py +0 -0
  143. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/spec_pb2_grpc.py +0 -0
  144. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/tags_pb2.py +0 -0
  145. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/tags_pb2_grpc.py +0 -0
  146. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_approvers_history_pb2.py +0 -0
  147. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
  148. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_approvers_pb2.py +0 -0
  149. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
  150. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_roles_history_pb2.py +0 -0
  151. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
  152. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_roles_pb2.py +0 -0
  153. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
  154. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflows_history_pb2.py +0 -0
  155. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
  156. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflows_pb2.py +0 -0
  157. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm/workflows_pb2_grpc.py +0 -0
  158. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm.egg-info/SOURCES.txt +0 -0
  159. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm.egg-info/dependency_links.txt +0 -0
  160. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm.egg-info/requires.txt +0 -0
  161. {strongdm-15.44.0 → strongdm-15.45.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strongdm
3
- Version: 15.44.0
3
+ Version: 15.45.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.44.0.tar.gz
9
+ Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.45.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
@@ -23,7 +23,7 @@ from setuptools import setup
23
23
  setup(
24
24
  name='strongdm',
25
25
  packages=['strongdm'],
26
- version='15.44.0',
26
+ version='15.45.0',
27
27
  license='apache-2.0',
28
28
  description='strongDM SDK for the Python programming language.',
29
29
  long_description=long_description,
@@ -32,7 +32,7 @@ setup(
32
32
  author_email='sdk-feedback@strongdm.com',
33
33
  url='https://github.com/strongdm/strongdm-sdk-python',
34
34
  download_url=
35
- 'https://github.com/strongdm/strongdm-sdk-python/archive/v15.44.0.tar.gz',
35
+ 'https://github.com/strongdm/strongdm-sdk-python/archive/v15.45.0.tar.gz',
36
36
  keywords=[
37
37
  'strongDM', 'sdm', 'api', 'automation', 'security', 'audit',
38
38
  'database', 'server', 'ssh', 'rdp'
@@ -40,7 +40,7 @@ DEFAULT_MAX_RETRY_DELAY = 120 # 120 seconds
40
40
  DEFAULT_RETRY_FACTOR = 1.6
41
41
  DEFAULT_RETRY_JITTER = 0.2
42
42
  API_VERSION = '2025-04-14'
43
- USER_AGENT = 'strongdm-sdk-python/15.44.0'
43
+ USER_AGENT = 'strongdm-sdk-python/15.45.0'
44
44
 
45
45
  method_regexp = re.compile(r'\W+')
46
46
 
@@ -32,7 +32,7 @@ from . import tags_pb2 as tags__pb2
32
32
  from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
33
33
 
34
34
 
35
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15managed_secrets.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\x1a\ntags.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"i\n\x18ManagedSecretLogsRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xe7\x01\n\x19ManagedSecretLogsResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12=\n\x13managed_secret_logs\x18\x02 \x03(\x0b\x32\x14.v1.ManagedSecretLogB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"i\n\x18ManagedSecretListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xbe\x01\n\x19ManagedSecretListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12\x36\n\x0fmanaged_secrets\x18\x02 \x03(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12\x35\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x88\x01\n\x1cManagedSecretRetrieveRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\npublic_key\x18\x03 \x01(\x0c\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xee\x01\n\x1dManagedSecretRetrieveResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"h\n\x1cManagedSecretValidateRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xf4\x01\n\x1dManagedSecretValidateResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x19\n\x05valid\x18\x02 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\x12 \n\x0cinvalid_info\x18\x04 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"c\n\x17ManagedSecretGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xe9\x01\n\x18ManagedSecretGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x88\x01\n\x1aManagedSecretCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xef\x01\n\x1bManagedSecretCreateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x94\x01\n\x1aManagedSecretUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\n\n\x02id\x18\x02 \x01(\t\x12\x35\n\x0emanaged_secret\x18\x03 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xef\x01\n\x1bManagedSecretUpdateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"j\n\x1aManagedSecretRotateRequest\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.GenericRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xb9\x01\n\x1bManagedSecretRotateResponse\x12\x35\n\x04meta\x18\x01 \x01(\x0b\x32\x1b.v1.GenericResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"i\n\x1aManagedSecretDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xac\x01\n\x1bManagedSecretDeleteResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadata\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xaf\x02\n\x10ManagedSecretLog\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12:\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12)\n\x10secret_engine_id\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12*\n\x11managed_secret_id\x18\x04 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12#\n\naccount_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1f\n\x06\x61\x63tion\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1e\n\x05\x64\x65\x62ug\x18\x07 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xcf\x03\n\rManagedSecret\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\x10secret_engine_id\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1e\n\x05value\x18\x04 \x01(\x0c\x42\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xf0\xf3\xb3\x07\x01\x12*\n\x11secret_store_path\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12\x38\n\x06policy\x18\x06 \x01(\x0b\x32\x17.v1.ManagedSecretPolicyB\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\x44\n\x0flast_rotated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12?\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12\x1f\n\x06\x63onfig\x18\n \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xad\x01\n\x13ManagedSecretPolicy\x12\x44\n\x0frotation_policy\x18\x01 \x01(\x0b\x32\x1f.v1.ManagedSecretRotationPolicyB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x44\n\x0fpassword_policy\x18\x02 \x01(\x0b\x32\x1f.v1.ManagedSecretPasswordPolicyB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xf8\x01\n\x1bManagedSecretPasswordPolicy\x12\x1a\n\x06length\x18\x01 \x01(\rB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12&\n\x12\x65xclude_upper_case\x18\x02 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\nnum_digits\x18\x03 \x01(\rB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x0bnum_symbols\x18\x04 \x01(\rB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12 \n\x0c\x61llow_repeat\x18\x05 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12&\n\x12\x65xclude_characters\x18\x06 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\")\n\x1bManagedSecretRotationPolicy:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x32\xd6\x0b\n\x0eManagedSecrets\x12o\n\x04List\x12\x1c.v1.ManagedSecretListRequest\x1a\x1d.v1.ManagedSecretListResponse\"*\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x18\xaa\xf3\xb3\x07\x13/v1/managed-secrets\x12|\n\x0bListByActor\x12\x1c.v1.ManagedSecretListRequest\x1a\x1d.v1.ManagedSecretListResponse\"0\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1e\xaa\xf3\xb3\x07\x19/v1/managed-secrets/actor\x12v\n\x06\x43reate\x12\x1e.v1.ManagedSecretCreateRequest\x1a\x1f.v1.ManagedSecretCreateResponse\"+\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x18\xaa\xf3\xb3\x07\x13/v1/managed-secrets\x12z\n\x06Update\x12\x1e.v1.ManagedSecretUpdateRequest\x1a\x1f.v1.ManagedSecretUpdateResponse\"/\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets/{id}\x12\x81\x01\n\x06Rotate\x12\x1e.v1.ManagedSecretRotateRequest\x1a\x1f.v1.ManagedSecretRotateResponse\"6\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07$\xaa\xf3\xb3\x07\x1f/v1/managed-secrets/{id}/rotate\x12}\n\x06\x44\x65lete\x12\x1e.v1.ManagedSecretDeleteRequest\x1a\x1f.v1.ManagedSecretDeleteResponse\"2\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets/{id}\x12\x88\x01\n\x0b\x46orceDelete\x12\x1e.v1.ManagedSecretDeleteRequest\x1a\x1f.v1.ManagedSecretDeleteResponse\"8\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07#\xaa\xf3\xb3\x07\x1e/v1/managed-secrets/{id}/force\x12q\n\x03Get\x12\x1b.v1.ManagedSecretGetRequest\x1a\x1c.v1.ManagedSecretGetResponse\"/\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets/{id}\x12\x8a\x01\n\x08Retrieve\x12 .v1.ManagedSecretRetrieveRequest\x1a!.v1.ManagedSecretRetrieveResponse\"9\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\'\xaa\xf3\xb3\x07\"/v1/managed-secrets/{id}/sensitive\x12\x89\x01\n\x08Validate\x12 .v1.ManagedSecretValidateRequest\x1a!.v1.ManagedSecretValidateResponse\"8\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07&\xaa\xf3\xb3\x07!/v1/managed-secrets/{id}/validate\x12t\n\x04Logs\x12\x1c.v1.ManagedSecretLogsRequest\x1a\x1d.v1.ManagedSecretLogsResponse\"/\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets-logs\x1aQ\xca\xf9\xb3\x07\x12\xc2\xf9\xb3\x07\rManagedSecret\xca\xf9\xb3\x07\x08\xd2\xf9\xb3\x07\x03ms-\xca\xf9\xb3\x07\x05\xd8\xf9\xb3\x07\x01\xca\xf9\xb3\x07\x06\xca\xf9\xb3\x07\x01*\xca\xf9\xb3\x07\t\xca\xf9\xb3\x07\x04!cli\xca\xf9\xb3\x07\x05\xe8\xf9\xb3\x07\x01\x42j\n\x19\x63om.strongdm.api.plumbingB\x16ManagedSecretsPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
35
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15managed_secrets.proto\x12\x02v1\x1a\roptions.proto\x1a\nspec.proto\x1a\ntags.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"i\n\x18ManagedSecretLogsRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xe7\x01\n\x19ManagedSecretLogsResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12=\n\x13managed_secret_logs\x18\x02 \x03(\x0b\x32\x14.v1.ManagedSecretLogB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"i\n\x18ManagedSecretListRequest\x12%\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.ListRequestMetadata\x12\x1a\n\x06\x66ilter\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xbe\x01\n\x19ManagedSecretListResponse\x12&\n\x04meta\x18\x01 \x01(\x0b\x32\x18.v1.ListResponseMetadata\x12\x36\n\x0fmanaged_secrets\x18\x02 \x03(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb8\xf3\xb3\x07\x01\x12\x35\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x88\x01\n\x1cManagedSecretRetrieveRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\npublic_key\x18\x03 \x01(\x0c\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x00:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xee\x01\n\x1dManagedSecretRetrieveResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"h\n\x1cManagedSecretValidateRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xf4\x01\n\x1dManagedSecretValidateResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x19\n\x05valid\x18\x02 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway\x12 \n\x0cinvalid_info\x18\x04 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"c\n\x17ManagedSecretGetRequest\x12$\n\x04meta\x18\x01 \x01(\x0b\x32\x16.v1.GetRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xe9\x01\n\x18ManagedSecretGetResponse\x12\x31\n\x04meta\x18\x01 \x01(\x0b\x32\x17.v1.GetResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x88\x01\n\x1aManagedSecretCreateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.CreateRequestMetadata\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xef\x01\n\x1bManagedSecretCreateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.CreateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\x94\x01\n\x1aManagedSecretUpdateRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\n\n\x02id\x18\x02 \x01(\t\x12\x35\n\x0emanaged_secret\x18\x03 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xef\x01\n\x1bManagedSecretUpdateResponse\x12\x34\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.UpdateResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x35\n\x0emanaged_secret\x18\x02 \x01(\x0b\x32\x11.v1.ManagedSecretB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x03 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"j\n\x1aManagedSecretRotateRequest\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.GenericRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xb9\x01\n\x1bManagedSecretRotateResponse\x12\x35\n\x04meta\x18\x01 \x01(\x0b\x32\x1b.v1.GenericResponseMetadataB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"i\n\x1aManagedSecretDeleteRequest\x12\'\n\x04meta\x18\x01 \x01(\x0b\x32\x19.v1.UpdateRequestMetadata\x12\x16\n\x02id\x18\x02 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xac\x01\n\x1bManagedSecretDeleteResponse\x12(\n\x04meta\x18\x01 \x01(\x0b\x32\x1a.v1.DeleteResponseMetadata\x12W\n\nrate_limit\x18\x02 \x01(\x0b\x32\x15.v1.RateLimitMetadataB,\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\xf2\xf8\xb3\x07\x06\xb2\xf4\xb3\x07\x01*\xf2\xf8\xb3\x07\x12\xb2\xf4\xb3\x07\r!json_gateway:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xaf\x02\n\x10ManagedSecretLog\x12\x16\n\x02id\x18\x01 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12:\n\ncreated_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12)\n\x10secret_engine_id\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12*\n\x11managed_secret_id\x18\x04 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12#\n\naccount_id\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1f\n\x06\x61\x63tion\x18\x06 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1e\n\x05\x64\x65\x62ug\x18\x07 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xcf\x03\n\rManagedSecret\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\x10secret_engine_id\x18\x03 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xc0\xf3\xb3\x07\x01\x12\x1e\n\x05value\x18\x04 \x01(\x0c\x42\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\xf0\xf3\xb3\x07\x01\x12*\n\x11secret_store_path\x18\x05 \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12\x38\n\x06policy\x18\x06 \x01(\x0b\x32\x17.v1.ManagedSecretPolicyB\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\x44\n\x0flast_rotated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12?\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01\x12\x1f\n\x06\x63onfig\x18\n \x01(\tB\x0f\xf2\xf8\xb3\x07\n\xb0\xf3\xb3\x07\x01\x98\xf4\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xad\x01\n\x13ManagedSecretPolicy\x12\x44\n\x0frotation_policy\x18\x01 \x01(\x0b\x32\x1f.v1.ManagedSecretRotationPolicyB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x44\n\x0fpassword_policy\x18\x02 \x01(\x0b\x32\x1f.v1.ManagedSecretPasswordPolicyB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\"\xf8\x01\n\x1bManagedSecretPasswordPolicy\x12\x1a\n\x06length\x18\x01 \x01(\rB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12&\n\x12\x65xclude_upper_case\x18\x02 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1e\n\nnum_digits\x18\x03 \x01(\rB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12\x1f\n\x0bnum_symbols\x18\x04 \x01(\rB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12 \n\x0c\x61llow_repeat\x18\x05 \x01(\x08\x42\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01\x12&\n\x12\x65xclude_characters\x18\x06 \x01(\tB\n\xf2\xf8\xb3\x07\x05\xb0\xf3\xb3\x07\x01:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\")\n\x1bManagedSecretRotationPolicy:\n\xfa\xf8\xb3\x07\x05\xa8\xf3\xb3\x07\x01\x32\xd6\x0b\n\x0eManagedSecrets\x12o\n\x04List\x12\x1c.v1.ManagedSecretListRequest\x1a\x1d.v1.ManagedSecretListResponse\"*\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x18\xaa\xf3\xb3\x07\x13/v1/managed-secrets\x12|\n\x0bListByActor\x12\x1c.v1.ManagedSecretListRequest\x1a\x1d.v1.ManagedSecretListResponse\"0\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1e\xaa\xf3\xb3\x07\x19/v1/managed-secrets/actor\x12v\n\x06\x43reate\x12\x1e.v1.ManagedSecretCreateRequest\x1a\x1f.v1.ManagedSecretCreateResponse\"+\x82\xf9\xb3\x07\t\xa2\xf3\xb3\x07\x04post\x82\xf9\xb3\x07\x18\xaa\xf3\xb3\x07\x13/v1/managed-secrets\x12z\n\x06Update\x12\x1e.v1.ManagedSecretUpdateRequest\x1a\x1f.v1.ManagedSecretUpdateResponse\"/\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets/{id}\x12\x81\x01\n\x06Rotate\x12\x1e.v1.ManagedSecretRotateRequest\x1a\x1f.v1.ManagedSecretRotateResponse\"6\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03put\x82\xf9\xb3\x07$\xaa\xf3\xb3\x07\x1f/v1/managed-secrets/{id}/rotate\x12}\n\x06\x44\x65lete\x12\x1e.v1.ManagedSecretDeleteRequest\x1a\x1f.v1.ManagedSecretDeleteResponse\"2\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets/{id}\x12\x88\x01\n\x0b\x46orceDelete\x12\x1e.v1.ManagedSecretDeleteRequest\x1a\x1f.v1.ManagedSecretDeleteResponse\"8\x82\xf9\xb3\x07\x0b\xa2\xf3\xb3\x07\x06\x64\x65lete\x82\xf9\xb3\x07#\xaa\xf3\xb3\x07\x1e/v1/managed-secrets/{id}/force\x12q\n\x03Get\x12\x1b.v1.ManagedSecretGetRequest\x1a\x1c.v1.ManagedSecretGetResponse\"/\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets/{id}\x12\x8a\x01\n\x08Retrieve\x12 .v1.ManagedSecretRetrieveRequest\x1a!.v1.ManagedSecretRetrieveResponse\"9\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\'\xaa\xf3\xb3\x07\"/v1/managed-secrets/{id}/sensitive\x12\x89\x01\n\x08Validate\x12 .v1.ManagedSecretValidateRequest\x1a!.v1.ManagedSecretValidateResponse\"8\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07&\xaa\xf3\xb3\x07!/v1/managed-secrets/{id}/validate\x12t\n\x04Logs\x12\x1c.v1.ManagedSecretLogsRequest\x1a\x1d.v1.ManagedSecretLogsResponse\"/\x82\xf9\xb3\x07\x08\xa2\xf3\xb3\x07\x03get\x82\xf9\xb3\x07\x1d\xaa\xf3\xb3\x07\x18/v1/managed-secrets-logs\x1aQ\xca\xf9\xb3\x07\x12\xc2\xf9\xb3\x07\rManagedSecret\xca\xf9\xb3\x07\x08\xd2\xf9\xb3\x07\x03ms-\xca\xf9\xb3\x07\x05\xd8\xf9\xb3\x07\x01\xca\xf9\xb3\x07\x06\xca\xf9\xb3\x07\x01*\xca\xf9\xb3\x07\t\xca\xf9\xb3\x07\x04!cli\xca\xf9\xb3\x07\x05\xe8\xf9\xb3\x07\x01\x42j\n\x19\x63om.strongdm.api.plumbingB\x16ManagedSecretsPlumbingZ5github.com/strongdm/strongdm-sdk-go/v3/internal/v1;v1b\x06proto3')
36
36
 
37
37
 
38
38
 
@@ -248,7 +248,7 @@ if _descriptor._USE_C_DESCRIPTORS == False:
248
248
  _MANAGEDSECRETRETRIEVEREQUEST.fields_by_name['id']._options = None
249
249
  _MANAGEDSECRETRETRIEVEREQUEST.fields_by_name['id']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
250
250
  _MANAGEDSECRETRETRIEVEREQUEST.fields_by_name['public_key']._options = None
251
- _MANAGEDSECRETRETRIEVEREQUEST.fields_by_name['public_key']._serialized_options = b'\362\370\263\007\005\260\363\263\007\001'
251
+ _MANAGEDSECRETRETRIEVEREQUEST.fields_by_name['public_key']._serialized_options = b'\362\370\263\007\005\260\363\263\007\000'
252
252
  _MANAGEDSECRETRETRIEVEREQUEST._options = None
253
253
  _MANAGEDSECRETRETRIEVEREQUEST._serialized_options = b'\372\370\263\007\005\250\363\263\007\001'
254
254
  _MANAGEDSECRETRETRIEVERESPONSE.fields_by_name['meta']._options = None
@@ -20506,41 +20506,30 @@ class ManagedSecretRetrieveRequest:
20506
20506
  '''
20507
20507
  __slots__ = [
20508
20508
  'id',
20509
- 'public_key',
20510
20509
  ]
20511
20510
 
20512
20511
  def __init__(
20513
20512
  self,
20514
20513
  id=None,
20515
- public_key=None,
20516
20514
  ):
20517
20515
  self.id = id if id is not None else ''
20518
20516
  '''
20519
20517
  The unique identifier of the Managed Secret to retrieve.
20520
20518
  '''
20521
- self.public_key = public_key if public_key is not None else b''
20522
- '''
20523
- Public key to encrypt a sensitive value with
20524
- '''
20525
20519
 
20526
20520
  def __repr__(self):
20527
20521
  return '<sdm.ManagedSecretRetrieveRequest ' + \
20528
20522
  'id: ' + repr(self.id) + ' ' +\
20529
- 'public_key: ' + repr(self.public_key) + ' ' +\
20530
20523
  '>'
20531
20524
 
20532
20525
  def to_dict(self):
20533
20526
  return {
20534
20527
  'id': self.id,
20535
- 'public_key': self.public_key,
20536
20528
  }
20537
20529
 
20538
20530
  @classmethod
20539
20531
  def from_dict(cls, d):
20540
- return cls(
20541
- id=d.get('id'),
20542
- public_key=d.get('public_key'),
20543
- )
20532
+ return cls(id=d.get('id'), )
20544
20533
 
20545
20534
 
20546
20535
  class ManagedSecretRetrieveResponse:
@@ -10245,7 +10245,6 @@ def convert_managed_secret_retrieve_request_to_porcelain(plumbing):
10245
10245
  return None
10246
10246
  porcelain = models.ManagedSecretRetrieveRequest()
10247
10247
  porcelain.id = (plumbing.id)
10248
- porcelain.public_key = (plumbing.public_key)
10249
10248
  return porcelain
10250
10249
 
10251
10250
 
@@ -10254,7 +10253,6 @@ def convert_managed_secret_retrieve_request_to_plumbing(porcelain):
10254
10253
  if porcelain is None:
10255
10254
  return plumbing
10256
10255
  plumbing.id = (porcelain.id)
10257
- plumbing.public_key = (porcelain.public_key)
10258
10256
  return plumbing
10259
10257
 
10260
10258
 
@@ -4255,7 +4255,7 @@ class ManagedSecrets:
4255
4255
  plumbing_response.rate_limit)
4256
4256
  return resp
4257
4257
 
4258
- def retrieve(self, id, public_key, timeout=None):
4258
+ def retrieve(self, id, timeout=None):
4259
4259
  '''
4260
4260
  Retrieve returns Managed Secret with sensitive data
4261
4261
  '''
@@ -4263,7 +4263,6 @@ class ManagedSecrets:
4263
4263
  req = ManagedSecretRetrieveRequest()
4264
4264
 
4265
4265
  req.id = (id)
4266
- req.public_key = (public_key)
4267
4266
  tries = 0
4268
4267
  plumbing_response = None
4269
4268
  while True:
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: strongdm
3
- Version: 15.44.0
3
+ Version: 15.45.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.44.0.tar.gz
9
+ Download-URL: https://github.com/strongdm/strongdm-sdk-python/archive/v15.45.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