strongdm 11.1.0__zip → 11.4.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 (139) hide show
  1. {strongdm-11.1.0 → strongdm-11.4.0}/PKG-INFO +2 -2
  2. {strongdm-11.1.0 → strongdm-11.4.0}/setup.py +2 -2
  3. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/access_request_events_history_pb2.py +3 -3
  4. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/access_requests_history_pb2.py +3 -3
  5. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/access_requests_pb2.py +3 -3
  6. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_approvers_history_pb2.py +3 -3
  7. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_approvers_pb2.py +3 -3
  8. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_steps_history_pb2.py +3 -3
  9. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_steps_pb2.py +3 -3
  10. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflows_history_pb2.py +3 -3
  11. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflows_pb2.py +3 -3
  12. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/client.py +22 -1
  13. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/constants.py +2 -0
  14. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/drivers_pb2.py +186 -172
  15. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/models.py +408 -0
  16. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/options_pb2.py +24 -24
  17. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/plumbing.py +266 -0
  18. strongdm-11.4.0/strongdm/policies_history_pb2.py +100 -0
  19. strongdm-11.4.0/strongdm/policies_history_pb2_grpc.py +84 -0
  20. strongdm-11.4.0/strongdm/policies_pb2.py +216 -0
  21. strongdm-11.4.0/strongdm/policies_pb2_grpc.py +223 -0
  22. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/svc.py +245 -0
  23. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_approvers_history_pb2.py +3 -3
  24. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_approvers_pb2.py +3 -3
  25. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_assignments_history_pb2.py +3 -3
  26. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_assignments_pb2.py +3 -3
  27. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_roles_history_pb2.py +3 -3
  28. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_roles_pb2.py +3 -3
  29. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflows_history_pb2.py +3 -3
  30. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflows_pb2.py +3 -3
  31. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm.egg-info/PKG-INFO +2 -2
  32. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm.egg-info/SOURCES.txt +4 -0
  33. {strongdm-11.1.0 → strongdm-11.4.0}/LICENSE +0 -0
  34. {strongdm-11.1.0 → strongdm-11.4.0}/README.md +0 -0
  35. {strongdm-11.1.0 → strongdm-11.4.0}/setup.cfg +0 -0
  36. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/__init__.py +0 -0
  37. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/access_request_events_history_pb2_grpc.py +0 -0
  38. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/access_requests_history_pb2_grpc.py +0 -0
  39. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/access_requests_pb2_grpc.py +0 -0
  40. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_attachments_history_pb2.py +0 -0
  41. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_attachments_history_pb2_grpc.py +0 -0
  42. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_attachments_pb2.py +0 -0
  43. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_attachments_pb2_grpc.py +0 -0
  44. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_grants_history_pb2.py +0 -0
  45. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_grants_history_pb2_grpc.py +0 -0
  46. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_grants_pb2.py +0 -0
  47. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_grants_pb2_grpc.py +0 -0
  48. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_permissions_pb2.py +0 -0
  49. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_permissions_pb2_grpc.py +0 -0
  50. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_resources_history_pb2.py +0 -0
  51. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_resources_history_pb2_grpc.py +0 -0
  52. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_resources_pb2.py +0 -0
  53. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/account_resources_pb2_grpc.py +0 -0
  54. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/accounts_history_pb2.py +0 -0
  55. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/accounts_history_pb2_grpc.py +0 -0
  56. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/accounts_pb2.py +0 -0
  57. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/accounts_pb2_grpc.py +0 -0
  58. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/activities_pb2.py +0 -0
  59. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/activities_pb2_grpc.py +0 -0
  60. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_approvers_history_pb2_grpc.py +0 -0
  61. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_approvers_pb2_grpc.py +0 -0
  62. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_steps_history_pb2_grpc.py +0 -0
  63. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflow_steps_pb2_grpc.py +0 -0
  64. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflows_history_pb2_grpc.py +0 -0
  65. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/approval_workflows_pb2_grpc.py +0 -0
  66. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/control_panel_pb2.py +0 -0
  67. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/control_panel_pb2_grpc.py +0 -0
  68. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/drivers_pb2_grpc.py +0 -0
  69. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/errors.py +0 -0
  70. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_aliases_history_pb2.py +0 -0
  71. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_aliases_history_pb2_grpc.py +0 -0
  72. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_aliases_pb2.py +0 -0
  73. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_aliases_pb2_grpc.py +0 -0
  74. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_sets_history_pb2.py +0 -0
  75. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_sets_history_pb2_grpc.py +0 -0
  76. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_sets_pb2.py +0 -0
  77. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/identity_sets_pb2_grpc.py +0 -0
  78. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/nodes_history_pb2.py +0 -0
  79. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/nodes_history_pb2_grpc.py +0 -0
  80. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/nodes_pb2.py +0 -0
  81. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/nodes_pb2_grpc.py +0 -0
  82. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/options_pb2_grpc.py +0 -0
  83. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/organization_history_pb2.py +0 -0
  84. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/organization_history_pb2_grpc.py +0 -0
  85. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_group_nodes_pb2.py +0 -0
  86. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_group_nodes_pb2_grpc.py +0 -0
  87. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_group_peers_pb2.py +0 -0
  88. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_group_peers_pb2_grpc.py +0 -0
  89. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_group_resources_pb2.py +0 -0
  90. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_group_resources_pb2_grpc.py +0 -0
  91. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_groups_pb2.py +0 -0
  92. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/peering_groups_pb2_grpc.py +0 -0
  93. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/queries_pb2.py +0 -0
  94. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/queries_pb2_grpc.py +0 -0
  95. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identities_history_pb2.py +0 -0
  96. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identities_history_pb2_grpc.py +0 -0
  97. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identities_pb2.py +0 -0
  98. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identities_pb2_grpc.py +0 -0
  99. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identity_groups_history_pb2.py +0 -0
  100. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identity_groups_history_pb2_grpc.py +0 -0
  101. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identity_groups_pb2.py +0 -0
  102. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/remote_identity_groups_pb2_grpc.py +0 -0
  103. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/replays_pb2.py +0 -0
  104. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/replays_pb2_grpc.py +0 -0
  105. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/resources_history_pb2.py +0 -0
  106. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/resources_history_pb2_grpc.py +0 -0
  107. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/resources_pb2.py +0 -0
  108. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/resources_pb2_grpc.py +0 -0
  109. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/role_resources_history_pb2.py +0 -0
  110. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/role_resources_history_pb2_grpc.py +0 -0
  111. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/role_resources_pb2.py +0 -0
  112. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/role_resources_pb2_grpc.py +0 -0
  113. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/roles_history_pb2.py +0 -0
  114. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/roles_history_pb2_grpc.py +0 -0
  115. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/roles_pb2.py +0 -0
  116. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/roles_pb2_grpc.py +0 -0
  117. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_store_healths_pb2.py +0 -0
  118. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_store_healths_pb2_grpc.py +0 -0
  119. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_store_types_pb2.py +0 -0
  120. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_store_types_pb2_grpc.py +0 -0
  121. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_stores_history_pb2.py +0 -0
  122. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_stores_history_pb2_grpc.py +0 -0
  123. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_stores_pb2.py +0 -0
  124. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/secret_stores_pb2_grpc.py +0 -0
  125. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/spec_pb2.py +0 -0
  126. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/spec_pb2_grpc.py +0 -0
  127. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/tags_pb2.py +0 -0
  128. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/tags_pb2_grpc.py +0 -0
  129. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_approvers_history_pb2_grpc.py +0 -0
  130. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_approvers_pb2_grpc.py +0 -0
  131. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_assignments_history_pb2_grpc.py +0 -0
  132. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_assignments_pb2_grpc.py +0 -0
  133. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_roles_history_pb2_grpc.py +0 -0
  134. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflow_roles_pb2_grpc.py +0 -0
  135. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflows_history_pb2_grpc.py +0 -0
  136. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm/workflows_pb2_grpc.py +0 -0
  137. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm.egg-info/dependency_links.txt +0 -0
  138. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm.egg-info/requires.txt +0 -0
  139. {strongdm-11.1.0 → strongdm-11.4.0}/strongdm.egg-info/top_level.txt +0 -0
@@ -20,6 +20,7 @@ import collections
20
20
 
21
21
  class AKS:
22
22
  __slots__ = [
23
+ 'allow_resource_role_bypass',
23
24
  'bind_interface',
24
25
  'certificate_authority',
25
26
  'client_certificate',
@@ -43,6 +44,7 @@ class AKS:
43
44
 
44
45
  def __init__(
45
46
  self,
47
+ allow_resource_role_bypass=None,
46
48
  bind_interface=None,
47
49
  certificate_authority=None,
48
50
  client_certificate=None,
@@ -63,6 +65,11 @@ class AKS:
63
65
  subdomain=None,
64
66
  tags=None,
65
67
  ):
68
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
69
+ '''
70
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
71
+ when a resource role is not provided.
72
+ '''
66
73
  self.bind_interface = bind_interface if bind_interface is not None else ''
67
74
  '''
68
75
  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.
@@ -143,6 +150,7 @@ class AKS:
143
150
 
144
151
  def __repr__(self):
145
152
  return '<sdm.AKS ' + \
153
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
146
154
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
147
155
  'certificate_authority: ' + repr(self.certificate_authority) + ' ' +\
148
156
  'client_certificate: ' + repr(self.client_certificate) + ' ' +\
@@ -166,6 +174,7 @@ class AKS:
166
174
 
167
175
  def to_dict(self):
168
176
  return {
177
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
169
178
  'bind_interface': self.bind_interface,
170
179
  'certificate_authority': self.certificate_authority,
171
180
  'client_certificate': self.client_certificate,
@@ -191,6 +200,7 @@ class AKS:
191
200
  @classmethod
192
201
  def from_dict(cls, d):
193
202
  return cls(
203
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
194
204
  bind_interface=d.get('bind_interface'),
195
205
  certificate_authority=d.get('certificate_authority'),
196
206
  client_certificate=d.get('client_certificate'),
@@ -215,6 +225,10 @@ class AKS:
215
225
 
216
226
 
217
227
  class AKSBasicAuth:
228
+ '''
229
+ AKSBasicAuth is currently unstable, and its API may change, or it may be removed,
230
+ without a major version bump.
231
+ '''
218
232
  __slots__ = [
219
233
  'bind_interface',
220
234
  'egress_filter',
@@ -364,6 +378,7 @@ class AKSBasicAuth:
364
378
 
365
379
  class AKSServiceAccount:
366
380
  __slots__ = [
381
+ 'allow_resource_role_bypass',
367
382
  'bind_interface',
368
383
  'discovery_enabled',
369
384
  'discovery_username',
@@ -385,6 +400,7 @@ class AKSServiceAccount:
385
400
 
386
401
  def __init__(
387
402
  self,
403
+ allow_resource_role_bypass=None,
388
404
  bind_interface=None,
389
405
  discovery_enabled=None,
390
406
  discovery_username=None,
@@ -403,6 +419,11 @@ class AKSServiceAccount:
403
419
  tags=None,
404
420
  token=None,
405
421
  ):
422
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
423
+ '''
424
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
425
+ when a resource role is not provided.
426
+ '''
406
427
  self.bind_interface = bind_interface if bind_interface is not None else ''
407
428
  '''
408
429
  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.
@@ -475,6 +496,7 @@ class AKSServiceAccount:
475
496
 
476
497
  def __repr__(self):
477
498
  return '<sdm.AKSServiceAccount ' + \
499
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
478
500
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
479
501
  'discovery_enabled: ' + repr(self.discovery_enabled) + ' ' +\
480
502
  'discovery_username: ' + repr(self.discovery_username) + ' ' +\
@@ -496,6 +518,7 @@ class AKSServiceAccount:
496
518
 
497
519
  def to_dict(self):
498
520
  return {
521
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
499
522
  'bind_interface': self.bind_interface,
500
523
  'discovery_enabled': self.discovery_enabled,
501
524
  'discovery_username': self.discovery_username,
@@ -519,6 +542,7 @@ class AKSServiceAccount:
519
542
  @classmethod
520
543
  def from_dict(cls, d):
521
544
  return cls(
545
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
522
546
  bind_interface=d.get('bind_interface'),
523
547
  discovery_enabled=d.get('discovery_enabled'),
524
548
  discovery_username=d.get('discovery_username'),
@@ -3342,6 +3366,7 @@ class ActivityGetResponse:
3342
3366
  class AmazonEKS:
3343
3367
  __slots__ = [
3344
3368
  'access_key',
3369
+ 'allow_resource_role_bypass',
3345
3370
  'bind_interface',
3346
3371
  'certificate_authority',
3347
3372
  'cluster_name',
@@ -3368,6 +3393,7 @@ class AmazonEKS:
3368
3393
  def __init__(
3369
3394
  self,
3370
3395
  access_key=None,
3396
+ allow_resource_role_bypass=None,
3371
3397
  bind_interface=None,
3372
3398
  certificate_authority=None,
3373
3399
  cluster_name=None,
@@ -3394,6 +3420,11 @@ class AmazonEKS:
3394
3420
  '''
3395
3421
  The Access Key ID to use to authenticate.
3396
3422
  '''
3423
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
3424
+ '''
3425
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
3426
+ when a resource role is not provided.
3427
+ '''
3397
3428
  self.bind_interface = bind_interface if bind_interface is not None else ''
3398
3429
  '''
3399
3430
  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.
@@ -3483,6 +3514,7 @@ class AmazonEKS:
3483
3514
  def __repr__(self):
3484
3515
  return '<sdm.AmazonEKS ' + \
3485
3516
  'access_key: ' + repr(self.access_key) + ' ' +\
3517
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
3486
3518
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
3487
3519
  'certificate_authority: ' + repr(self.certificate_authority) + ' ' +\
3488
3520
  'cluster_name: ' + repr(self.cluster_name) + ' ' +\
@@ -3509,6 +3541,7 @@ class AmazonEKS:
3509
3541
  def to_dict(self):
3510
3542
  return {
3511
3543
  'access_key': self.access_key,
3544
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
3512
3545
  'bind_interface': self.bind_interface,
3513
3546
  'certificate_authority': self.certificate_authority,
3514
3547
  'cluster_name': self.cluster_name,
@@ -3537,6 +3570,7 @@ class AmazonEKS:
3537
3570
  def from_dict(cls, d):
3538
3571
  return cls(
3539
3572
  access_key=d.get('access_key'),
3573
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
3540
3574
  bind_interface=d.get('bind_interface'),
3541
3575
  certificate_authority=d.get('certificate_authority'),
3542
3576
  cluster_name=d.get('cluster_name'),
@@ -3564,6 +3598,7 @@ class AmazonEKS:
3564
3598
 
3565
3599
  class AmazonEKSInstanceProfile:
3566
3600
  __slots__ = [
3601
+ 'allow_resource_role_bypass',
3567
3602
  'bind_interface',
3568
3603
  'certificate_authority',
3569
3604
  'cluster_name',
@@ -3588,6 +3623,7 @@ class AmazonEKSInstanceProfile:
3588
3623
 
3589
3624
  def __init__(
3590
3625
  self,
3626
+ allow_resource_role_bypass=None,
3591
3627
  bind_interface=None,
3592
3628
  certificate_authority=None,
3593
3629
  cluster_name=None,
@@ -3609,6 +3645,11 @@ class AmazonEKSInstanceProfile:
3609
3645
  subdomain=None,
3610
3646
  tags=None,
3611
3647
  ):
3648
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
3649
+ '''
3650
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
3651
+ when a resource role is not provided.
3652
+ '''
3612
3653
  self.bind_interface = bind_interface if bind_interface is not None else ''
3613
3654
  '''
3614
3655
  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.
@@ -3693,6 +3734,7 @@ class AmazonEKSInstanceProfile:
3693
3734
 
3694
3735
  def __repr__(self):
3695
3736
  return '<sdm.AmazonEKSInstanceProfile ' + \
3737
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
3696
3738
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
3697
3739
  'certificate_authority: ' + repr(self.certificate_authority) + ' ' +\
3698
3740
  'cluster_name: ' + repr(self.cluster_name) + ' ' +\
@@ -3717,6 +3759,7 @@ class AmazonEKSInstanceProfile:
3717
3759
 
3718
3760
  def to_dict(self):
3719
3761
  return {
3762
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
3720
3763
  'bind_interface': self.bind_interface,
3721
3764
  'certificate_authority': self.certificate_authority,
3722
3765
  'cluster_name': self.cluster_name,
@@ -3743,6 +3786,7 @@ class AmazonEKSInstanceProfile:
3743
3786
  @classmethod
3744
3787
  def from_dict(cls, d):
3745
3788
  return cls(
3789
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
3746
3790
  bind_interface=d.get('bind_interface'),
3747
3791
  certificate_authority=d.get('certificate_authority'),
3748
3792
  cluster_name=d.get('cluster_name'),
@@ -9651,6 +9695,7 @@ class GetResponseMetadata:
9651
9695
 
9652
9696
  class GoogleGKE:
9653
9697
  __slots__ = [
9698
+ 'allow_resource_role_bypass',
9654
9699
  'bind_interface',
9655
9700
  'certificate_authority',
9656
9701
  'discovery_enabled',
@@ -9672,6 +9717,7 @@ class GoogleGKE:
9672
9717
 
9673
9718
  def __init__(
9674
9719
  self,
9720
+ allow_resource_role_bypass=None,
9675
9721
  bind_interface=None,
9676
9722
  certificate_authority=None,
9677
9723
  discovery_enabled=None,
@@ -9690,6 +9736,11 @@ class GoogleGKE:
9690
9736
  subdomain=None,
9691
9737
  tags=None,
9692
9738
  ):
9739
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
9740
+ '''
9741
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
9742
+ when a resource role is not provided.
9743
+ '''
9693
9744
  self.bind_interface = bind_interface if bind_interface is not None else ''
9694
9745
  '''
9695
9746
  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.
@@ -9762,6 +9813,7 @@ class GoogleGKE:
9762
9813
 
9763
9814
  def __repr__(self):
9764
9815
  return '<sdm.GoogleGKE ' + \
9816
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
9765
9817
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
9766
9818
  'certificate_authority: ' + repr(self.certificate_authority) + ' ' +\
9767
9819
  'discovery_enabled: ' + repr(self.discovery_enabled) + ' ' +\
@@ -9783,6 +9835,7 @@ class GoogleGKE:
9783
9835
 
9784
9836
  def to_dict(self):
9785
9837
  return {
9838
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
9786
9839
  'bind_interface': self.bind_interface,
9787
9840
  'certificate_authority': self.certificate_authority,
9788
9841
  'discovery_enabled': self.discovery_enabled,
@@ -9806,6 +9859,7 @@ class GoogleGKE:
9806
9859
  @classmethod
9807
9860
  def from_dict(cls, d):
9808
9861
  return cls(
9862
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
9809
9863
  bind_interface=d.get('bind_interface'),
9810
9864
  certificate_authority=d.get('certificate_authority'),
9811
9865
  discovery_enabled=d.get('discovery_enabled'),
@@ -11487,6 +11541,7 @@ class KeyfactorX509Store:
11487
11541
 
11488
11542
  class Kubernetes:
11489
11543
  __slots__ = [
11544
+ 'allow_resource_role_bypass',
11490
11545
  'bind_interface',
11491
11546
  'certificate_authority',
11492
11547
  'client_certificate',
@@ -11510,6 +11565,7 @@ class Kubernetes:
11510
11565
 
11511
11566
  def __init__(
11512
11567
  self,
11568
+ allow_resource_role_bypass=None,
11513
11569
  bind_interface=None,
11514
11570
  certificate_authority=None,
11515
11571
  client_certificate=None,
@@ -11530,6 +11586,11 @@ class Kubernetes:
11530
11586
  subdomain=None,
11531
11587
  tags=None,
11532
11588
  ):
11589
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
11590
+ '''
11591
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
11592
+ when a resource role is not provided.
11593
+ '''
11533
11594
  self.bind_interface = bind_interface if bind_interface is not None else ''
11534
11595
  '''
11535
11596
  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.
@@ -11610,6 +11671,7 @@ class Kubernetes:
11610
11671
 
11611
11672
  def __repr__(self):
11612
11673
  return '<sdm.Kubernetes ' + \
11674
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
11613
11675
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
11614
11676
  'certificate_authority: ' + repr(self.certificate_authority) + ' ' +\
11615
11677
  'client_certificate: ' + repr(self.client_certificate) + ' ' +\
@@ -11633,6 +11695,7 @@ class Kubernetes:
11633
11695
 
11634
11696
  def to_dict(self):
11635
11697
  return {
11698
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
11636
11699
  'bind_interface': self.bind_interface,
11637
11700
  'certificate_authority': self.certificate_authority,
11638
11701
  'client_certificate': self.client_certificate,
@@ -11658,6 +11721,7 @@ class Kubernetes:
11658
11721
  @classmethod
11659
11722
  def from_dict(cls, d):
11660
11723
  return cls(
11724
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
11661
11725
  bind_interface=d.get('bind_interface'),
11662
11726
  certificate_authority=d.get('certificate_authority'),
11663
11727
  client_certificate=d.get('client_certificate'),
@@ -11682,6 +11746,10 @@ class Kubernetes:
11682
11746
 
11683
11747
 
11684
11748
  class KubernetesBasicAuth:
11749
+ '''
11750
+ KubernetesBasicAuth is currently unstable, and its API may change, or it may be removed,
11751
+ without a major version bump.
11752
+ '''
11685
11753
  __slots__ = [
11686
11754
  'bind_interface',
11687
11755
  'egress_filter',
@@ -11831,6 +11899,7 @@ class KubernetesBasicAuth:
11831
11899
 
11832
11900
  class KubernetesServiceAccount:
11833
11901
  __slots__ = [
11902
+ 'allow_resource_role_bypass',
11834
11903
  'bind_interface',
11835
11904
  'discovery_enabled',
11836
11905
  'discovery_username',
@@ -11852,6 +11921,7 @@ class KubernetesServiceAccount:
11852
11921
 
11853
11922
  def __init__(
11854
11923
  self,
11924
+ allow_resource_role_bypass=None,
11855
11925
  bind_interface=None,
11856
11926
  discovery_enabled=None,
11857
11927
  discovery_username=None,
@@ -11870,6 +11940,11 @@ class KubernetesServiceAccount:
11870
11940
  tags=None,
11871
11941
  token=None,
11872
11942
  ):
11943
+ self.allow_resource_role_bypass = allow_resource_role_bypass if allow_resource_role_bypass is not None else False
11944
+ '''
11945
+ If true, allows users to fallback to the existing authentication mode (Leased Credential or Identity Set)
11946
+ when a resource role is not provided.
11947
+ '''
11873
11948
  self.bind_interface = bind_interface if bind_interface is not None else ''
11874
11949
  '''
11875
11950
  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.
@@ -11942,6 +12017,7 @@ class KubernetesServiceAccount:
11942
12017
 
11943
12018
  def __repr__(self):
11944
12019
  return '<sdm.KubernetesServiceAccount ' + \
12020
+ 'allow_resource_role_bypass: ' + repr(self.allow_resource_role_bypass) + ' ' +\
11945
12021
  'bind_interface: ' + repr(self.bind_interface) + ' ' +\
11946
12022
  'discovery_enabled: ' + repr(self.discovery_enabled) + ' ' +\
11947
12023
  'discovery_username: ' + repr(self.discovery_username) + ' ' +\
@@ -11963,6 +12039,7 @@ class KubernetesServiceAccount:
11963
12039
 
11964
12040
  def to_dict(self):
11965
12041
  return {
12042
+ 'allow_resource_role_bypass': self.allow_resource_role_bypass,
11966
12043
  'bind_interface': self.bind_interface,
11967
12044
  'discovery_enabled': self.discovery_enabled,
11968
12045
  'discovery_username': self.discovery_username,
@@ -11986,6 +12063,7 @@ class KubernetesServiceAccount:
11986
12063
  @classmethod
11987
12064
  def from_dict(cls, d):
11988
12065
  return cls(
12066
+ allow_resource_role_bypass=d.get('allow_resource_role_bypass'),
11989
12067
  bind_interface=d.get('bind_interface'),
11990
12068
  discovery_enabled=d.get('discovery_enabled'),
11991
12069
  discovery_username=d.get('discovery_username'),
@@ -16027,6 +16105,336 @@ class PeeringGroupResourceGetResponse:
16027
16105
  )
16028
16106
 
16029
16107
 
16108
+ class Policy:
16109
+ '''
16110
+ Policy is a collection of one or more statements that enforce fine-grained access control
16111
+ for the users of an organization.
16112
+ '''
16113
+ __slots__ = [
16114
+ 'description',
16115
+ 'id',
16116
+ 'name',
16117
+ 'policy',
16118
+ ]
16119
+
16120
+ def __init__(
16121
+ self,
16122
+ description=None,
16123
+ id=None,
16124
+ name=None,
16125
+ policy=None,
16126
+ ):
16127
+ self.description = description if description is not None else ''
16128
+ '''
16129
+ Optional description of the Policy.
16130
+ '''
16131
+ self.id = id if id is not None else ''
16132
+ '''
16133
+ Unique identifier of the Policy.
16134
+ '''
16135
+ self.name = name if name is not None else ''
16136
+ '''
16137
+ Unique human-readable name of the Policy.
16138
+ '''
16139
+ self.policy = policy if policy is not None else ''
16140
+ '''
16141
+ The content of the Policy, in Cedar policy language.
16142
+ '''
16143
+
16144
+ def __repr__(self):
16145
+ return '<sdm.Policy ' + \
16146
+ 'description: ' + repr(self.description) + ' ' +\
16147
+ 'id: ' + repr(self.id) + ' ' +\
16148
+ 'name: ' + repr(self.name) + ' ' +\
16149
+ 'policy: ' + repr(self.policy) + ' ' +\
16150
+ '>'
16151
+
16152
+ def to_dict(self):
16153
+ return {
16154
+ 'description': self.description,
16155
+ 'id': self.id,
16156
+ 'name': self.name,
16157
+ 'policy': self.policy,
16158
+ }
16159
+
16160
+ @classmethod
16161
+ def from_dict(cls, d):
16162
+ return cls(
16163
+ description=d.get('description'),
16164
+ id=d.get('id'),
16165
+ name=d.get('name'),
16166
+ policy=d.get('policy'),
16167
+ )
16168
+
16169
+
16170
+ class PolicyCreateResponse:
16171
+ '''
16172
+ PolicyCreateResponse reports how the Policy was created in the system.
16173
+ '''
16174
+ __slots__ = [
16175
+ 'policy',
16176
+ 'rate_limit',
16177
+ ]
16178
+
16179
+ def __init__(
16180
+ self,
16181
+ policy=None,
16182
+ rate_limit=None,
16183
+ ):
16184
+ self.policy = policy if policy is not None else None
16185
+ '''
16186
+ The created Policy.
16187
+ '''
16188
+ self.rate_limit = rate_limit if rate_limit is not None else None
16189
+ '''
16190
+ Rate limit information.
16191
+ '''
16192
+
16193
+ def __repr__(self):
16194
+ return '<sdm.PolicyCreateResponse ' + \
16195
+ 'policy: ' + repr(self.policy) + ' ' +\
16196
+ 'rate_limit: ' + repr(self.rate_limit) + ' ' +\
16197
+ '>'
16198
+
16199
+ def to_dict(self):
16200
+ return {
16201
+ 'policy': self.policy,
16202
+ 'rate_limit': self.rate_limit,
16203
+ }
16204
+
16205
+ @classmethod
16206
+ def from_dict(cls, d):
16207
+ return cls(
16208
+ policy=d.get('policy'),
16209
+ rate_limit=d.get('rate_limit'),
16210
+ )
16211
+
16212
+
16213
+ class PolicyDeleteResponse:
16214
+ '''
16215
+ PolicyDeleteResponse returns information about a Policy that was deleted.
16216
+ '''
16217
+ __slots__ = [
16218
+ 'rate_limit',
16219
+ ]
16220
+
16221
+ def __init__(
16222
+ self,
16223
+ rate_limit=None,
16224
+ ):
16225
+ self.rate_limit = rate_limit if rate_limit is not None else None
16226
+ '''
16227
+ Rate limit information.
16228
+ '''
16229
+
16230
+ def __repr__(self):
16231
+ return '<sdm.PolicyDeleteResponse ' + \
16232
+ 'rate_limit: ' + repr(self.rate_limit) + ' ' +\
16233
+ '>'
16234
+
16235
+ def to_dict(self):
16236
+ return {
16237
+ 'rate_limit': self.rate_limit,
16238
+ }
16239
+
16240
+ @classmethod
16241
+ def from_dict(cls, d):
16242
+ return cls(rate_limit=d.get('rate_limit'), )
16243
+
16244
+
16245
+ class PolicyGetResponse:
16246
+ '''
16247
+ PolicyGetResponse returns a requested Policy.
16248
+ '''
16249
+ __slots__ = [
16250
+ 'meta',
16251
+ 'policy',
16252
+ 'rate_limit',
16253
+ ]
16254
+
16255
+ def __init__(
16256
+ self,
16257
+ meta=None,
16258
+ policy=None,
16259
+ rate_limit=None,
16260
+ ):
16261
+ self.meta = meta if meta is not None else None
16262
+ '''
16263
+ Reserved for future use.
16264
+ '''
16265
+ self.policy = policy if policy is not None else None
16266
+ '''
16267
+ The requested Policy.
16268
+ '''
16269
+ self.rate_limit = rate_limit if rate_limit is not None else None
16270
+ '''
16271
+ Rate limit information.
16272
+ '''
16273
+
16274
+ def __repr__(self):
16275
+ return '<sdm.PolicyGetResponse ' + \
16276
+ 'meta: ' + repr(self.meta) + ' ' +\
16277
+ 'policy: ' + repr(self.policy) + ' ' +\
16278
+ 'rate_limit: ' + repr(self.rate_limit) + ' ' +\
16279
+ '>'
16280
+
16281
+ def to_dict(self):
16282
+ return {
16283
+ 'meta': self.meta,
16284
+ 'policy': self.policy,
16285
+ 'rate_limit': self.rate_limit,
16286
+ }
16287
+
16288
+ @classmethod
16289
+ def from_dict(cls, d):
16290
+ return cls(
16291
+ meta=d.get('meta'),
16292
+ policy=d.get('policy'),
16293
+ rate_limit=d.get('rate_limit'),
16294
+ )
16295
+
16296
+
16297
+ class PolicyHistory:
16298
+ '''
16299
+ PolicyHistory records the state of a Policy at a given point in time,
16300
+ where every change (create, update and delete) to a Policy produces a
16301
+ PolicyHistory record.
16302
+ '''
16303
+ __slots__ = [
16304
+ 'activity_id',
16305
+ 'deleted_at',
16306
+ 'policy',
16307
+ 'timestamp',
16308
+ ]
16309
+
16310
+ def __init__(
16311
+ self,
16312
+ activity_id=None,
16313
+ deleted_at=None,
16314
+ policy=None,
16315
+ timestamp=None,
16316
+ ):
16317
+ self.activity_id = activity_id if activity_id is not None else ''
16318
+ '''
16319
+ The unique identifier of the Activity that produced this change to the Policy.
16320
+ May be empty for some system-initiated updates.
16321
+ '''
16322
+ self.deleted_at = deleted_at if deleted_at is not None else None
16323
+ '''
16324
+ If this Policy was deleted, the time it was deleted.
16325
+ '''
16326
+ self.policy = policy if policy is not None else None
16327
+ '''
16328
+ The complete Policy state at this time.
16329
+ '''
16330
+ self.timestamp = timestamp if timestamp is not None else None
16331
+ '''
16332
+ The time at which the Policy state was recorded.
16333
+ '''
16334
+
16335
+ def __repr__(self):
16336
+ return '<sdm.PolicyHistory ' + \
16337
+ 'activity_id: ' + repr(self.activity_id) + ' ' +\
16338
+ 'deleted_at: ' + repr(self.deleted_at) + ' ' +\
16339
+ 'policy: ' + repr(self.policy) + ' ' +\
16340
+ 'timestamp: ' + repr(self.timestamp) + ' ' +\
16341
+ '>'
16342
+
16343
+ def to_dict(self):
16344
+ return {
16345
+ 'activity_id': self.activity_id,
16346
+ 'deleted_at': self.deleted_at,
16347
+ 'policy': self.policy,
16348
+ 'timestamp': self.timestamp,
16349
+ }
16350
+
16351
+ @classmethod
16352
+ def from_dict(cls, d):
16353
+ return cls(
16354
+ activity_id=d.get('activity_id'),
16355
+ deleted_at=d.get('deleted_at'),
16356
+ policy=d.get('policy'),
16357
+ timestamp=d.get('timestamp'),
16358
+ )
16359
+
16360
+
16361
+ class PolicyListResponse:
16362
+ '''
16363
+ PolicyListResponse returns a list of Policy records that meet
16364
+ the criteria of a PolicyListRequest.
16365
+ '''
16366
+ __slots__ = [
16367
+ 'rate_limit',
16368
+ ]
16369
+
16370
+ def __init__(
16371
+ self,
16372
+ rate_limit=None,
16373
+ ):
16374
+ self.rate_limit = rate_limit if rate_limit is not None else None
16375
+ '''
16376
+ Rate limit information.
16377
+ '''
16378
+
16379
+ def __repr__(self):
16380
+ return '<sdm.PolicyListResponse ' + \
16381
+ 'rate_limit: ' + repr(self.rate_limit) + ' ' +\
16382
+ '>'
16383
+
16384
+ def to_dict(self):
16385
+ return {
16386
+ 'rate_limit': self.rate_limit,
16387
+ }
16388
+
16389
+ @classmethod
16390
+ def from_dict(cls, d):
16391
+ return cls(rate_limit=d.get('rate_limit'), )
16392
+
16393
+
16394
+ class PolicyUpdateResponse:
16395
+ '''
16396
+ PolicyUpdateResponse returns the fields of a Policy after it has been updated by
16397
+ a PolicyUpdateRequest.
16398
+ '''
16399
+ __slots__ = [
16400
+ 'policy',
16401
+ 'rate_limit',
16402
+ ]
16403
+
16404
+ def __init__(
16405
+ self,
16406
+ policy=None,
16407
+ rate_limit=None,
16408
+ ):
16409
+ self.policy = policy if policy is not None else None
16410
+ '''
16411
+ The updated Policy.
16412
+ '''
16413
+ self.rate_limit = rate_limit if rate_limit is not None else None
16414
+ '''
16415
+ Rate limit information.
16416
+ '''
16417
+
16418
+ def __repr__(self):
16419
+ return '<sdm.PolicyUpdateResponse ' + \
16420
+ 'policy: ' + repr(self.policy) + ' ' +\
16421
+ 'rate_limit: ' + repr(self.rate_limit) + ' ' +\
16422
+ '>'
16423
+
16424
+ def to_dict(self):
16425
+ return {
16426
+ 'policy': self.policy,
16427
+ 'rate_limit': self.rate_limit,
16428
+ }
16429
+
16430
+ @classmethod
16431
+ def from_dict(cls, d):
16432
+ return cls(
16433
+ policy=d.get('policy'),
16434
+ rate_limit=d.get('rate_limit'),
16435
+ )
16436
+
16437
+
16030
16438
  class Postgres:
16031
16439
  __slots__ = [
16032
16440
  'bind_interface',