pulumi-vault 6.3.2__py3-none-any.whl → 6.4.0__py3-none-any.whl

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.
@@ -24,7 +24,9 @@ class AuthBackendRoleSecretIdArgs:
24
24
  cidr_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
25
25
  metadata: Optional[pulumi.Input[str]] = None,
26
26
  namespace: Optional[pulumi.Input[str]] = None,
27
+ num_uses: Optional[pulumi.Input[int]] = None,
27
28
  secret_id: Optional[pulumi.Input[str]] = None,
29
+ ttl: Optional[pulumi.Input[int]] = None,
28
30
  with_wrapped_accessor: Optional[pulumi.Input[bool]] = None,
29
31
  wrapping_ttl: Optional[pulumi.Input[str]] = None):
30
32
  """
@@ -39,8 +41,10 @@ class AuthBackendRoleSecretIdArgs:
39
41
  The value should not contain leading or trailing forward slashes.
40
42
  The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
41
43
  *Available only for Vault Enterprise*.
44
+ :param pulumi.Input[int] num_uses: The number of uses for the secret-id.
42
45
  :param pulumi.Input[str] secret_id: The SecretID to be created. If set, uses "Push"
43
46
  mode. Defaults to Vault auto-generating SecretIDs.
47
+ :param pulumi.Input[int] ttl: The TTL duration of the SecretID.
44
48
  :param pulumi.Input[bool] with_wrapped_accessor: Set to `true` to use the wrapped secret-id accessor as the resource ID.
45
49
  If `false` (default value), a fresh secret ID will be regenerated whenever the wrapping token is expired or
46
50
  invalidated through unwrapping.
@@ -58,8 +62,12 @@ class AuthBackendRoleSecretIdArgs:
58
62
  pulumi.set(__self__, "metadata", metadata)
59
63
  if namespace is not None:
60
64
  pulumi.set(__self__, "namespace", namespace)
65
+ if num_uses is not None:
66
+ pulumi.set(__self__, "num_uses", num_uses)
61
67
  if secret_id is not None:
62
68
  pulumi.set(__self__, "secret_id", secret_id)
69
+ if ttl is not None:
70
+ pulumi.set(__self__, "ttl", ttl)
63
71
  if with_wrapped_accessor is not None:
64
72
  pulumi.set(__self__, "with_wrapped_accessor", with_wrapped_accessor)
65
73
  if wrapping_ttl is not None:
@@ -130,6 +138,18 @@ class AuthBackendRoleSecretIdArgs:
130
138
  def namespace(self, value: Optional[pulumi.Input[str]]):
131
139
  pulumi.set(self, "namespace", value)
132
140
 
141
+ @property
142
+ @pulumi.getter(name="numUses")
143
+ def num_uses(self) -> Optional[pulumi.Input[int]]:
144
+ """
145
+ The number of uses for the secret-id.
146
+ """
147
+ return pulumi.get(self, "num_uses")
148
+
149
+ @num_uses.setter
150
+ def num_uses(self, value: Optional[pulumi.Input[int]]):
151
+ pulumi.set(self, "num_uses", value)
152
+
133
153
  @property
134
154
  @pulumi.getter(name="secretId")
135
155
  def secret_id(self) -> Optional[pulumi.Input[str]]:
@@ -143,6 +163,18 @@ class AuthBackendRoleSecretIdArgs:
143
163
  def secret_id(self, value: Optional[pulumi.Input[str]]):
144
164
  pulumi.set(self, "secret_id", value)
145
165
 
166
+ @property
167
+ @pulumi.getter
168
+ def ttl(self) -> Optional[pulumi.Input[int]]:
169
+ """
170
+ The TTL duration of the SecretID.
171
+ """
172
+ return pulumi.get(self, "ttl")
173
+
174
+ @ttl.setter
175
+ def ttl(self, value: Optional[pulumi.Input[int]]):
176
+ pulumi.set(self, "ttl", value)
177
+
146
178
  @property
147
179
  @pulumi.getter(name="withWrappedAccessor")
148
180
  def with_wrapped_accessor(self) -> Optional[pulumi.Input[bool]]:
@@ -181,8 +213,10 @@ class _AuthBackendRoleSecretIdState:
181
213
  cidr_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
182
214
  metadata: Optional[pulumi.Input[str]] = None,
183
215
  namespace: Optional[pulumi.Input[str]] = None,
216
+ num_uses: Optional[pulumi.Input[int]] = None,
184
217
  role_name: Optional[pulumi.Input[str]] = None,
185
218
  secret_id: Optional[pulumi.Input[str]] = None,
219
+ ttl: Optional[pulumi.Input[int]] = None,
186
220
  with_wrapped_accessor: Optional[pulumi.Input[bool]] = None,
187
221
  wrapping_accessor: Optional[pulumi.Input[str]] = None,
188
222
  wrapping_token: Optional[pulumi.Input[str]] = None,
@@ -199,9 +233,11 @@ class _AuthBackendRoleSecretIdState:
199
233
  The value should not contain leading or trailing forward slashes.
200
234
  The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
201
235
  *Available only for Vault Enterprise*.
236
+ :param pulumi.Input[int] num_uses: The number of uses for the secret-id.
202
237
  :param pulumi.Input[str] role_name: The name of the role to create the SecretID for.
203
238
  :param pulumi.Input[str] secret_id: The SecretID to be created. If set, uses "Push"
204
239
  mode. Defaults to Vault auto-generating SecretIDs.
240
+ :param pulumi.Input[int] ttl: The TTL duration of the SecretID.
205
241
  :param pulumi.Input[bool] with_wrapped_accessor: Set to `true` to use the wrapped secret-id accessor as the resource ID.
206
242
  If `false` (default value), a fresh secret ID will be regenerated whenever the wrapping token is expired or
207
243
  invalidated through unwrapping.
@@ -223,10 +259,14 @@ class _AuthBackendRoleSecretIdState:
223
259
  pulumi.set(__self__, "metadata", metadata)
224
260
  if namespace is not None:
225
261
  pulumi.set(__self__, "namespace", namespace)
262
+ if num_uses is not None:
263
+ pulumi.set(__self__, "num_uses", num_uses)
226
264
  if role_name is not None:
227
265
  pulumi.set(__self__, "role_name", role_name)
228
266
  if secret_id is not None:
229
267
  pulumi.set(__self__, "secret_id", secret_id)
268
+ if ttl is not None:
269
+ pulumi.set(__self__, "ttl", ttl)
230
270
  if with_wrapped_accessor is not None:
231
271
  pulumi.set(__self__, "with_wrapped_accessor", with_wrapped_accessor)
232
272
  if wrapping_accessor is not None:
@@ -301,6 +341,18 @@ class _AuthBackendRoleSecretIdState:
301
341
  def namespace(self, value: Optional[pulumi.Input[str]]):
302
342
  pulumi.set(self, "namespace", value)
303
343
 
344
+ @property
345
+ @pulumi.getter(name="numUses")
346
+ def num_uses(self) -> Optional[pulumi.Input[int]]:
347
+ """
348
+ The number of uses for the secret-id.
349
+ """
350
+ return pulumi.get(self, "num_uses")
351
+
352
+ @num_uses.setter
353
+ def num_uses(self, value: Optional[pulumi.Input[int]]):
354
+ pulumi.set(self, "num_uses", value)
355
+
304
356
  @property
305
357
  @pulumi.getter(name="roleName")
306
358
  def role_name(self) -> Optional[pulumi.Input[str]]:
@@ -326,6 +378,18 @@ class _AuthBackendRoleSecretIdState:
326
378
  def secret_id(self, value: Optional[pulumi.Input[str]]):
327
379
  pulumi.set(self, "secret_id", value)
328
380
 
381
+ @property
382
+ @pulumi.getter
383
+ def ttl(self) -> Optional[pulumi.Input[int]]:
384
+ """
385
+ The TTL duration of the SecretID.
386
+ """
387
+ return pulumi.get(self, "ttl")
388
+
389
+ @ttl.setter
390
+ def ttl(self, value: Optional[pulumi.Input[int]]):
391
+ pulumi.set(self, "ttl", value)
392
+
329
393
  @property
330
394
  @pulumi.getter(name="withWrappedAccessor")
331
395
  def with_wrapped_accessor(self) -> Optional[pulumi.Input[bool]]:
@@ -390,8 +454,10 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
390
454
  cidr_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
391
455
  metadata: Optional[pulumi.Input[str]] = None,
392
456
  namespace: Optional[pulumi.Input[str]] = None,
457
+ num_uses: Optional[pulumi.Input[int]] = None,
393
458
  role_name: Optional[pulumi.Input[str]] = None,
394
459
  secret_id: Optional[pulumi.Input[str]] = None,
460
+ ttl: Optional[pulumi.Input[int]] = None,
395
461
  with_wrapped_accessor: Optional[pulumi.Input[bool]] = None,
396
462
  wrapping_ttl: Optional[pulumi.Input[str]] = None,
397
463
  __props__=None):
@@ -435,9 +501,11 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
435
501
  The value should not contain leading or trailing forward slashes.
436
502
  The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
437
503
  *Available only for Vault Enterprise*.
504
+ :param pulumi.Input[int] num_uses: The number of uses for the secret-id.
438
505
  :param pulumi.Input[str] role_name: The name of the role to create the SecretID for.
439
506
  :param pulumi.Input[str] secret_id: The SecretID to be created. If set, uses "Push"
440
507
  mode. Defaults to Vault auto-generating SecretIDs.
508
+ :param pulumi.Input[int] ttl: The TTL duration of the SecretID.
441
509
  :param pulumi.Input[bool] with_wrapped_accessor: Set to `true` to use the wrapped secret-id accessor as the resource ID.
442
510
  If `false` (default value), a fresh secret ID will be regenerated whenever the wrapping token is expired or
443
511
  invalidated through unwrapping.
@@ -500,8 +568,10 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
500
568
  cidr_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
501
569
  metadata: Optional[pulumi.Input[str]] = None,
502
570
  namespace: Optional[pulumi.Input[str]] = None,
571
+ num_uses: Optional[pulumi.Input[int]] = None,
503
572
  role_name: Optional[pulumi.Input[str]] = None,
504
573
  secret_id: Optional[pulumi.Input[str]] = None,
574
+ ttl: Optional[pulumi.Input[int]] = None,
505
575
  with_wrapped_accessor: Optional[pulumi.Input[bool]] = None,
506
576
  wrapping_ttl: Optional[pulumi.Input[str]] = None,
507
577
  __props__=None):
@@ -517,10 +587,12 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
517
587
  __props__.__dict__["cidr_lists"] = cidr_lists
518
588
  __props__.__dict__["metadata"] = metadata
519
589
  __props__.__dict__["namespace"] = namespace
590
+ __props__.__dict__["num_uses"] = num_uses
520
591
  if role_name is None and not opts.urn:
521
592
  raise TypeError("Missing required property 'role_name'")
522
593
  __props__.__dict__["role_name"] = role_name
523
594
  __props__.__dict__["secret_id"] = None if secret_id is None else pulumi.Output.secret(secret_id)
595
+ __props__.__dict__["ttl"] = ttl
524
596
  __props__.__dict__["with_wrapped_accessor"] = with_wrapped_accessor
525
597
  __props__.__dict__["wrapping_ttl"] = wrapping_ttl
526
598
  __props__.__dict__["accessor"] = None
@@ -545,8 +617,10 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
545
617
  cidr_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
546
618
  metadata: Optional[pulumi.Input[str]] = None,
547
619
  namespace: Optional[pulumi.Input[str]] = None,
620
+ num_uses: Optional[pulumi.Input[int]] = None,
548
621
  role_name: Optional[pulumi.Input[str]] = None,
549
622
  secret_id: Optional[pulumi.Input[str]] = None,
623
+ ttl: Optional[pulumi.Input[int]] = None,
550
624
  with_wrapped_accessor: Optional[pulumi.Input[bool]] = None,
551
625
  wrapping_accessor: Optional[pulumi.Input[str]] = None,
552
626
  wrapping_token: Optional[pulumi.Input[str]] = None,
@@ -568,9 +642,11 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
568
642
  The value should not contain leading or trailing forward slashes.
569
643
  The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
570
644
  *Available only for Vault Enterprise*.
645
+ :param pulumi.Input[int] num_uses: The number of uses for the secret-id.
571
646
  :param pulumi.Input[str] role_name: The name of the role to create the SecretID for.
572
647
  :param pulumi.Input[str] secret_id: The SecretID to be created. If set, uses "Push"
573
648
  mode. Defaults to Vault auto-generating SecretIDs.
649
+ :param pulumi.Input[int] ttl: The TTL duration of the SecretID.
574
650
  :param pulumi.Input[bool] with_wrapped_accessor: Set to `true` to use the wrapped secret-id accessor as the resource ID.
575
651
  If `false` (default value), a fresh secret ID will be regenerated whenever the wrapping token is expired or
576
652
  invalidated through unwrapping.
@@ -591,8 +667,10 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
591
667
  __props__.__dict__["cidr_lists"] = cidr_lists
592
668
  __props__.__dict__["metadata"] = metadata
593
669
  __props__.__dict__["namespace"] = namespace
670
+ __props__.__dict__["num_uses"] = num_uses
594
671
  __props__.__dict__["role_name"] = role_name
595
672
  __props__.__dict__["secret_id"] = secret_id
673
+ __props__.__dict__["ttl"] = ttl
596
674
  __props__.__dict__["with_wrapped_accessor"] = with_wrapped_accessor
597
675
  __props__.__dict__["wrapping_accessor"] = wrapping_accessor
598
676
  __props__.__dict__["wrapping_token"] = wrapping_token
@@ -644,6 +722,14 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
644
722
  """
645
723
  return pulumi.get(self, "namespace")
646
724
 
725
+ @property
726
+ @pulumi.getter(name="numUses")
727
+ def num_uses(self) -> pulumi.Output[Optional[int]]:
728
+ """
729
+ The number of uses for the secret-id.
730
+ """
731
+ return pulumi.get(self, "num_uses")
732
+
647
733
  @property
648
734
  @pulumi.getter(name="roleName")
649
735
  def role_name(self) -> pulumi.Output[str]:
@@ -661,6 +747,14 @@ class AuthBackendRoleSecretId(pulumi.CustomResource):
661
747
  """
662
748
  return pulumi.get(self, "secret_id")
663
749
 
750
+ @property
751
+ @pulumi.getter
752
+ def ttl(self) -> pulumi.Output[Optional[int]]:
753
+ """
754
+ The TTL duration of the SecretID.
755
+ """
756
+ return pulumi.get(self, "ttl")
757
+
664
758
  @property
665
759
  @pulumi.getter(name="withWrappedAccessor")
666
760
  def with_wrapped_accessor(self) -> pulumi.Output[Optional[bool]]:
@@ -125,6 +125,10 @@ if not MYPY:
125
125
  """
126
126
  The CQL protocol version to use.
127
127
  """
128
+ skip_verification: NotRequired[pulumi.Input[bool]]
129
+ """
130
+ Skip permissions checks when a connection to Cassandra is first created. These checks ensure that Vault is able to create roles, but can be resource intensive in clusters with many roles.
131
+ """
128
132
  tls: NotRequired[pulumi.Input[bool]]
129
133
  """
130
134
  Whether to use TLS when connecting to Cassandra.
@@ -147,6 +151,7 @@ class SecretBackendConnectionCassandraArgs:
147
151
  pem_json: Optional[pulumi.Input[str]] = None,
148
152
  port: Optional[pulumi.Input[int]] = None,
149
153
  protocol_version: Optional[pulumi.Input[int]] = None,
154
+ skip_verification: Optional[pulumi.Input[bool]] = None,
150
155
  tls: Optional[pulumi.Input[bool]] = None,
151
156
  username: Optional[pulumi.Input[str]] = None):
152
157
  """
@@ -158,6 +163,7 @@ class SecretBackendConnectionCassandraArgs:
158
163
  :param pulumi.Input[str] pem_json: Specifies JSON containing a certificate and private key; a certificate, private key, and issuing CA certificate; or just a CA certificate.
159
164
  :param pulumi.Input[int] port: The transport port to use to connect to Cassandra.
160
165
  :param pulumi.Input[int] protocol_version: The CQL protocol version to use.
166
+ :param pulumi.Input[bool] skip_verification: Skip permissions checks when a connection to Cassandra is first created. These checks ensure that Vault is able to create roles, but can be resource intensive in clusters with many roles.
161
167
  :param pulumi.Input[bool] tls: Whether to use TLS when connecting to Cassandra.
162
168
  :param pulumi.Input[str] username: The username to use when authenticating with Cassandra.
163
169
  """
@@ -177,6 +183,8 @@ class SecretBackendConnectionCassandraArgs:
177
183
  pulumi.set(__self__, "port", port)
178
184
  if protocol_version is not None:
179
185
  pulumi.set(__self__, "protocol_version", protocol_version)
186
+ if skip_verification is not None:
187
+ pulumi.set(__self__, "skip_verification", skip_verification)
180
188
  if tls is not None:
181
189
  pulumi.set(__self__, "tls", tls)
182
190
  if username is not None:
@@ -278,6 +286,18 @@ class SecretBackendConnectionCassandraArgs:
278
286
  def protocol_version(self, value: Optional[pulumi.Input[int]]):
279
287
  pulumi.set(self, "protocol_version", value)
280
288
 
289
+ @property
290
+ @pulumi.getter(name="skipVerification")
291
+ def skip_verification(self) -> Optional[pulumi.Input[bool]]:
292
+ """
293
+ Skip permissions checks when a connection to Cassandra is first created. These checks ensure that Vault is able to create roles, but can be resource intensive in clusters with many roles.
294
+ """
295
+ return pulumi.get(self, "skip_verification")
296
+
297
+ @skip_verification.setter
298
+ def skip_verification(self, value: Optional[pulumi.Input[bool]]):
299
+ pulumi.set(self, "skip_verification", value)
300
+
281
301
  @property
282
302
  @pulumi.getter
283
303
  def tls(self) -> Optional[pulumi.Input[bool]]:
@@ -2605,10 +2625,26 @@ if not MYPY:
2605
2625
  """
2606
2626
  The root credential password used in the connection URL
2607
2627
  """
2628
+ private_key: NotRequired[pulumi.Input[str]]
2629
+ """
2630
+ The secret key used for the x509 client certificate. Must be PEM encoded.
2631
+ """
2632
+ self_managed: NotRequired[pulumi.Input[bool]]
2633
+ """
2634
+ If set, allows onboarding static roles with a rootless connection configuration.
2635
+ """
2608
2636
  service_account_json: NotRequired[pulumi.Input[str]]
2609
2637
  """
2610
2638
  A JSON encoded credential for use with IAM authorization
2611
2639
  """
2640
+ tls_ca: NotRequired[pulumi.Input[str]]
2641
+ """
2642
+ The x509 CA file for validating the certificate presented by the PostgreSQL server. Must be PEM encoded.
2643
+ """
2644
+ tls_certificate: NotRequired[pulumi.Input[str]]
2645
+ """
2646
+ The x509 client certificate for connecting to the database. Must be PEM encoded.
2647
+ """
2612
2648
  username: NotRequired[pulumi.Input[str]]
2613
2649
  """
2614
2650
  The root credential username used in the connection URL
@@ -2630,7 +2666,11 @@ class SecretBackendConnectionPostgresqlArgs:
2630
2666
  max_idle_connections: Optional[pulumi.Input[int]] = None,
2631
2667
  max_open_connections: Optional[pulumi.Input[int]] = None,
2632
2668
  password: Optional[pulumi.Input[str]] = None,
2669
+ private_key: Optional[pulumi.Input[str]] = None,
2670
+ self_managed: Optional[pulumi.Input[bool]] = None,
2633
2671
  service_account_json: Optional[pulumi.Input[str]] = None,
2672
+ tls_ca: Optional[pulumi.Input[str]] = None,
2673
+ tls_certificate: Optional[pulumi.Input[str]] = None,
2634
2674
  username: Optional[pulumi.Input[str]] = None,
2635
2675
  username_template: Optional[pulumi.Input[str]] = None):
2636
2676
  """
@@ -2641,7 +2681,11 @@ class SecretBackendConnectionPostgresqlArgs:
2641
2681
  :param pulumi.Input[int] max_idle_connections: Maximum number of idle connections to the database.
2642
2682
  :param pulumi.Input[int] max_open_connections: Maximum number of open connections to the database.
2643
2683
  :param pulumi.Input[str] password: The root credential password used in the connection URL
2684
+ :param pulumi.Input[str] private_key: The secret key used for the x509 client certificate. Must be PEM encoded.
2685
+ :param pulumi.Input[bool] self_managed: If set, allows onboarding static roles with a rootless connection configuration.
2644
2686
  :param pulumi.Input[str] service_account_json: A JSON encoded credential for use with IAM authorization
2687
+ :param pulumi.Input[str] tls_ca: The x509 CA file for validating the certificate presented by the PostgreSQL server. Must be PEM encoded.
2688
+ :param pulumi.Input[str] tls_certificate: The x509 client certificate for connecting to the database. Must be PEM encoded.
2645
2689
  :param pulumi.Input[str] username: The root credential username used in the connection URL
2646
2690
  :param pulumi.Input[str] username_template: Username generation template.
2647
2691
  """
@@ -2659,8 +2703,16 @@ class SecretBackendConnectionPostgresqlArgs:
2659
2703
  pulumi.set(__self__, "max_open_connections", max_open_connections)
2660
2704
  if password is not None:
2661
2705
  pulumi.set(__self__, "password", password)
2706
+ if private_key is not None:
2707
+ pulumi.set(__self__, "private_key", private_key)
2708
+ if self_managed is not None:
2709
+ pulumi.set(__self__, "self_managed", self_managed)
2662
2710
  if service_account_json is not None:
2663
2711
  pulumi.set(__self__, "service_account_json", service_account_json)
2712
+ if tls_ca is not None:
2713
+ pulumi.set(__self__, "tls_ca", tls_ca)
2714
+ if tls_certificate is not None:
2715
+ pulumi.set(__self__, "tls_certificate", tls_certificate)
2664
2716
  if username is not None:
2665
2717
  pulumi.set(__self__, "username", username)
2666
2718
  if username_template is not None:
@@ -2750,6 +2802,30 @@ class SecretBackendConnectionPostgresqlArgs:
2750
2802
  def password(self, value: Optional[pulumi.Input[str]]):
2751
2803
  pulumi.set(self, "password", value)
2752
2804
 
2805
+ @property
2806
+ @pulumi.getter(name="privateKey")
2807
+ def private_key(self) -> Optional[pulumi.Input[str]]:
2808
+ """
2809
+ The secret key used for the x509 client certificate. Must be PEM encoded.
2810
+ """
2811
+ return pulumi.get(self, "private_key")
2812
+
2813
+ @private_key.setter
2814
+ def private_key(self, value: Optional[pulumi.Input[str]]):
2815
+ pulumi.set(self, "private_key", value)
2816
+
2817
+ @property
2818
+ @pulumi.getter(name="selfManaged")
2819
+ def self_managed(self) -> Optional[pulumi.Input[bool]]:
2820
+ """
2821
+ If set, allows onboarding static roles with a rootless connection configuration.
2822
+ """
2823
+ return pulumi.get(self, "self_managed")
2824
+
2825
+ @self_managed.setter
2826
+ def self_managed(self, value: Optional[pulumi.Input[bool]]):
2827
+ pulumi.set(self, "self_managed", value)
2828
+
2753
2829
  @property
2754
2830
  @pulumi.getter(name="serviceAccountJson")
2755
2831
  def service_account_json(self) -> Optional[pulumi.Input[str]]:
@@ -2762,6 +2838,30 @@ class SecretBackendConnectionPostgresqlArgs:
2762
2838
  def service_account_json(self, value: Optional[pulumi.Input[str]]):
2763
2839
  pulumi.set(self, "service_account_json", value)
2764
2840
 
2841
+ @property
2842
+ @pulumi.getter(name="tlsCa")
2843
+ def tls_ca(self) -> Optional[pulumi.Input[str]]:
2844
+ """
2845
+ The x509 CA file for validating the certificate presented by the PostgreSQL server. Must be PEM encoded.
2846
+ """
2847
+ return pulumi.get(self, "tls_ca")
2848
+
2849
+ @tls_ca.setter
2850
+ def tls_ca(self, value: Optional[pulumi.Input[str]]):
2851
+ pulumi.set(self, "tls_ca", value)
2852
+
2853
+ @property
2854
+ @pulumi.getter(name="tlsCertificate")
2855
+ def tls_certificate(self) -> Optional[pulumi.Input[str]]:
2856
+ """
2857
+ The x509 client certificate for connecting to the database. Must be PEM encoded.
2858
+ """
2859
+ return pulumi.get(self, "tls_certificate")
2860
+
2861
+ @tls_certificate.setter
2862
+ def tls_certificate(self, value: Optional[pulumi.Input[str]]):
2863
+ pulumi.set(self, "tls_certificate", value)
2864
+
2765
2865
  @property
2766
2866
  @pulumi.getter
2767
2867
  def username(self) -> Optional[pulumi.Input[str]]:
@@ -3408,6 +3508,10 @@ if not MYPY:
3408
3508
  """
3409
3509
  A list of database statements to be executed to rotate the root user's credentials.
3410
3510
  """
3511
+ skip_verification: NotRequired[pulumi.Input[bool]]
3512
+ """
3513
+ Skip permissions checks when a connection to Cassandra is first created. These checks ensure that Vault is able to create roles, but can be resource intensive in clusters with many roles.
3514
+ """
3411
3515
  tls: NotRequired[pulumi.Input[bool]]
3412
3516
  """
3413
3517
  Whether to use TLS when connecting to Cassandra.
@@ -3440,6 +3544,7 @@ class SecretsMountCassandraArgs:
3440
3544
  port: Optional[pulumi.Input[int]] = None,
3441
3545
  protocol_version: Optional[pulumi.Input[int]] = None,
3442
3546
  root_rotation_statements: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
3547
+ skip_verification: Optional[pulumi.Input[bool]] = None,
3443
3548
  tls: Optional[pulumi.Input[bool]] = None,
3444
3549
  username: Optional[pulumi.Input[str]] = None,
3445
3550
  verify_connection: Optional[pulumi.Input[bool]] = None):
@@ -3460,6 +3565,7 @@ class SecretsMountCassandraArgs:
3460
3565
  :param pulumi.Input[int] port: The transport port to use to connect to Cassandra.
3461
3566
  :param pulumi.Input[int] protocol_version: The CQL protocol version to use.
3462
3567
  :param pulumi.Input[Sequence[pulumi.Input[str]]] root_rotation_statements: A list of database statements to be executed to rotate the root user's credentials.
3568
+ :param pulumi.Input[bool] skip_verification: Skip permissions checks when a connection to Cassandra is first created. These checks ensure that Vault is able to create roles, but can be resource intensive in clusters with many roles.
3463
3569
  :param pulumi.Input[bool] tls: Whether to use TLS when connecting to Cassandra.
3464
3570
  :param pulumi.Input[str] username: The username to use when authenticating with Cassandra.
3465
3571
  :param pulumi.Input[bool] verify_connection: Whether the connection should be verified on
@@ -3490,6 +3596,8 @@ class SecretsMountCassandraArgs:
3490
3596
  pulumi.set(__self__, "protocol_version", protocol_version)
3491
3597
  if root_rotation_statements is not None:
3492
3598
  pulumi.set(__self__, "root_rotation_statements", root_rotation_statements)
3599
+ if skip_verification is not None:
3600
+ pulumi.set(__self__, "skip_verification", skip_verification)
3493
3601
  if tls is not None:
3494
3602
  pulumi.set(__self__, "tls", tls)
3495
3603
  if username is not None:
@@ -3656,6 +3764,18 @@ class SecretsMountCassandraArgs:
3656
3764
  def root_rotation_statements(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
3657
3765
  pulumi.set(self, "root_rotation_statements", value)
3658
3766
 
3767
+ @property
3768
+ @pulumi.getter(name="skipVerification")
3769
+ def skip_verification(self) -> Optional[pulumi.Input[bool]]:
3770
+ """
3771
+ Skip permissions checks when a connection to Cassandra is first created. These checks ensure that Vault is able to create roles, but can be resource intensive in clusters with many roles.
3772
+ """
3773
+ return pulumi.get(self, "skip_verification")
3774
+
3775
+ @skip_verification.setter
3776
+ def skip_verification(self, value: Optional[pulumi.Input[bool]]):
3777
+ pulumi.set(self, "skip_verification", value)
3778
+
3659
3779
  @property
3660
3780
  @pulumi.getter
3661
3781
  def tls(self) -> Optional[pulumi.Input[bool]]:
@@ -7587,14 +7707,30 @@ if not MYPY:
7587
7707
  """
7588
7708
  Specifies the name of the plugin to use.
7589
7709
  """
7710
+ private_key: NotRequired[pulumi.Input[str]]
7711
+ """
7712
+ The secret key used for the x509 client certificate. Must be PEM encoded.
7713
+ """
7590
7714
  root_rotation_statements: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
7591
7715
  """
7592
7716
  A list of database statements to be executed to rotate the root user's credentials.
7593
7717
  """
7718
+ self_managed: NotRequired[pulumi.Input[bool]]
7719
+ """
7720
+ If set, allows onboarding static roles with a rootless connection configuration.
7721
+ """
7594
7722
  service_account_json: NotRequired[pulumi.Input[str]]
7595
7723
  """
7596
7724
  A JSON encoded credential for use with IAM authorization
7597
7725
  """
7726
+ tls_ca: NotRequired[pulumi.Input[str]]
7727
+ """
7728
+ The x509 CA file for validating the certificate presented by the PostgreSQL server. Must be PEM encoded.
7729
+ """
7730
+ tls_certificate: NotRequired[pulumi.Input[str]]
7731
+ """
7732
+ The x509 client certificate for connecting to the database. Must be PEM encoded.
7733
+ """
7598
7734
  username: NotRequired[pulumi.Input[str]]
7599
7735
  """
7600
7736
  The root credential username used in the connection URL
@@ -7625,8 +7761,12 @@ class SecretsMountPostgresqlArgs:
7625
7761
  max_open_connections: Optional[pulumi.Input[int]] = None,
7626
7762
  password: Optional[pulumi.Input[str]] = None,
7627
7763
  plugin_name: Optional[pulumi.Input[str]] = None,
7764
+ private_key: Optional[pulumi.Input[str]] = None,
7628
7765
  root_rotation_statements: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
7766
+ self_managed: Optional[pulumi.Input[bool]] = None,
7629
7767
  service_account_json: Optional[pulumi.Input[str]] = None,
7768
+ tls_ca: Optional[pulumi.Input[str]] = None,
7769
+ tls_certificate: Optional[pulumi.Input[str]] = None,
7630
7770
  username: Optional[pulumi.Input[str]] = None,
7631
7771
  username_template: Optional[pulumi.Input[str]] = None,
7632
7772
  verify_connection: Optional[pulumi.Input[bool]] = None):
@@ -7645,8 +7785,12 @@ class SecretsMountPostgresqlArgs:
7645
7785
  :param pulumi.Input[int] max_open_connections: Maximum number of open connections to the database.
7646
7786
  :param pulumi.Input[str] password: The root credential password used in the connection URL
7647
7787
  :param pulumi.Input[str] plugin_name: Specifies the name of the plugin to use.
7788
+ :param pulumi.Input[str] private_key: The secret key used for the x509 client certificate. Must be PEM encoded.
7648
7789
  :param pulumi.Input[Sequence[pulumi.Input[str]]] root_rotation_statements: A list of database statements to be executed to rotate the root user's credentials.
7790
+ :param pulumi.Input[bool] self_managed: If set, allows onboarding static roles with a rootless connection configuration.
7649
7791
  :param pulumi.Input[str] service_account_json: A JSON encoded credential for use with IAM authorization
7792
+ :param pulumi.Input[str] tls_ca: The x509 CA file for validating the certificate presented by the PostgreSQL server. Must be PEM encoded.
7793
+ :param pulumi.Input[str] tls_certificate: The x509 client certificate for connecting to the database. Must be PEM encoded.
7650
7794
  :param pulumi.Input[str] username: The root credential username used in the connection URL
7651
7795
  :param pulumi.Input[str] username_template: Username generation template.
7652
7796
  :param pulumi.Input[bool] verify_connection: Whether the connection should be verified on
@@ -7673,10 +7817,18 @@ class SecretsMountPostgresqlArgs:
7673
7817
  pulumi.set(__self__, "password", password)
7674
7818
  if plugin_name is not None:
7675
7819
  pulumi.set(__self__, "plugin_name", plugin_name)
7820
+ if private_key is not None:
7821
+ pulumi.set(__self__, "private_key", private_key)
7676
7822
  if root_rotation_statements is not None:
7677
7823
  pulumi.set(__self__, "root_rotation_statements", root_rotation_statements)
7824
+ if self_managed is not None:
7825
+ pulumi.set(__self__, "self_managed", self_managed)
7678
7826
  if service_account_json is not None:
7679
7827
  pulumi.set(__self__, "service_account_json", service_account_json)
7828
+ if tls_ca is not None:
7829
+ pulumi.set(__self__, "tls_ca", tls_ca)
7830
+ if tls_certificate is not None:
7831
+ pulumi.set(__self__, "tls_certificate", tls_certificate)
7680
7832
  if username is not None:
7681
7833
  pulumi.set(__self__, "username", username)
7682
7834
  if username_template is not None:
@@ -7819,6 +7971,18 @@ class SecretsMountPostgresqlArgs:
7819
7971
  def plugin_name(self, value: Optional[pulumi.Input[str]]):
7820
7972
  pulumi.set(self, "plugin_name", value)
7821
7973
 
7974
+ @property
7975
+ @pulumi.getter(name="privateKey")
7976
+ def private_key(self) -> Optional[pulumi.Input[str]]:
7977
+ """
7978
+ The secret key used for the x509 client certificate. Must be PEM encoded.
7979
+ """
7980
+ return pulumi.get(self, "private_key")
7981
+
7982
+ @private_key.setter
7983
+ def private_key(self, value: Optional[pulumi.Input[str]]):
7984
+ pulumi.set(self, "private_key", value)
7985
+
7822
7986
  @property
7823
7987
  @pulumi.getter(name="rootRotationStatements")
7824
7988
  def root_rotation_statements(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
@@ -7831,6 +7995,18 @@ class SecretsMountPostgresqlArgs:
7831
7995
  def root_rotation_statements(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
7832
7996
  pulumi.set(self, "root_rotation_statements", value)
7833
7997
 
7998
+ @property
7999
+ @pulumi.getter(name="selfManaged")
8000
+ def self_managed(self) -> Optional[pulumi.Input[bool]]:
8001
+ """
8002
+ If set, allows onboarding static roles with a rootless connection configuration.
8003
+ """
8004
+ return pulumi.get(self, "self_managed")
8005
+
8006
+ @self_managed.setter
8007
+ def self_managed(self, value: Optional[pulumi.Input[bool]]):
8008
+ pulumi.set(self, "self_managed", value)
8009
+
7834
8010
  @property
7835
8011
  @pulumi.getter(name="serviceAccountJson")
7836
8012
  def service_account_json(self) -> Optional[pulumi.Input[str]]:
@@ -7843,6 +8019,30 @@ class SecretsMountPostgresqlArgs:
7843
8019
  def service_account_json(self, value: Optional[pulumi.Input[str]]):
7844
8020
  pulumi.set(self, "service_account_json", value)
7845
8021
 
8022
+ @property
8023
+ @pulumi.getter(name="tlsCa")
8024
+ def tls_ca(self) -> Optional[pulumi.Input[str]]:
8025
+ """
8026
+ The x509 CA file for validating the certificate presented by the PostgreSQL server. Must be PEM encoded.
8027
+ """
8028
+ return pulumi.get(self, "tls_ca")
8029
+
8030
+ @tls_ca.setter
8031
+ def tls_ca(self, value: Optional[pulumi.Input[str]]):
8032
+ pulumi.set(self, "tls_ca", value)
8033
+
8034
+ @property
8035
+ @pulumi.getter(name="tlsCertificate")
8036
+ def tls_certificate(self) -> Optional[pulumi.Input[str]]:
8037
+ """
8038
+ The x509 client certificate for connecting to the database. Must be PEM encoded.
8039
+ """
8040
+ return pulumi.get(self, "tls_certificate")
8041
+
8042
+ @tls_certificate.setter
8043
+ def tls_certificate(self, value: Optional[pulumi.Input[str]]):
8044
+ pulumi.set(self, "tls_certificate", value)
8045
+
7846
8046
  @property
7847
8047
  @pulumi.getter
7848
8048
  def username(self) -> Optional[pulumi.Input[str]]: