pulumi-vault 7.6.0a1764657486__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.
Files changed (274) hide show
  1. pulumi_vault/__init__.py +1399 -0
  2. pulumi_vault/_inputs.py +2701 -0
  3. pulumi_vault/_utilities.py +331 -0
  4. pulumi_vault/ad/__init__.py +12 -0
  5. pulumi_vault/ad/get_access_credentials.py +177 -0
  6. pulumi_vault/ad/secret_backend.py +1916 -0
  7. pulumi_vault/ad/secret_library.py +546 -0
  8. pulumi_vault/ad/secret_role.py +499 -0
  9. pulumi_vault/alicloud/__init__.py +9 -0
  10. pulumi_vault/alicloud/auth_backend_role.py +866 -0
  11. pulumi_vault/approle/__init__.py +12 -0
  12. pulumi_vault/approle/auth_backend_login.py +571 -0
  13. pulumi_vault/approle/auth_backend_role.py +1082 -0
  14. pulumi_vault/approle/auth_backend_role_secret_id.py +796 -0
  15. pulumi_vault/approle/get_auth_backend_role_id.py +169 -0
  16. pulumi_vault/audit.py +499 -0
  17. pulumi_vault/audit_request_header.py +277 -0
  18. pulumi_vault/auth_backend.py +565 -0
  19. pulumi_vault/aws/__init__.py +22 -0
  20. pulumi_vault/aws/auth_backend_cert.py +420 -0
  21. pulumi_vault/aws/auth_backend_client.py +1259 -0
  22. pulumi_vault/aws/auth_backend_config_identity.py +494 -0
  23. pulumi_vault/aws/auth_backend_identity_whitelist.py +380 -0
  24. pulumi_vault/aws/auth_backend_login.py +1046 -0
  25. pulumi_vault/aws/auth_backend_role.py +1961 -0
  26. pulumi_vault/aws/auth_backend_role_tag.py +638 -0
  27. pulumi_vault/aws/auth_backend_roletag_blacklist.py +366 -0
  28. pulumi_vault/aws/auth_backend_sts_role.py +414 -0
  29. pulumi_vault/aws/get_access_credentials.py +369 -0
  30. pulumi_vault/aws/get_static_access_credentials.py +137 -0
  31. pulumi_vault/aws/secret_backend.py +2018 -0
  32. pulumi_vault/aws/secret_backend_role.py +1188 -0
  33. pulumi_vault/aws/secret_backend_static_role.py +639 -0
  34. pulumi_vault/azure/__init__.py +15 -0
  35. pulumi_vault/azure/_inputs.py +108 -0
  36. pulumi_vault/azure/auth_backend_config.py +1096 -0
  37. pulumi_vault/azure/auth_backend_role.py +1176 -0
  38. pulumi_vault/azure/backend.py +1793 -0
  39. pulumi_vault/azure/backend_role.py +883 -0
  40. pulumi_vault/azure/get_access_credentials.py +400 -0
  41. pulumi_vault/azure/outputs.py +107 -0
  42. pulumi_vault/cert_auth_backend_role.py +1539 -0
  43. pulumi_vault/config/__init__.py +9 -0
  44. pulumi_vault/config/__init__.pyi +164 -0
  45. pulumi_vault/config/_inputs.py +73 -0
  46. pulumi_vault/config/outputs.py +1225 -0
  47. pulumi_vault/config/ui_custom_message.py +530 -0
  48. pulumi_vault/config/vars.py +230 -0
  49. pulumi_vault/consul/__init__.py +10 -0
  50. pulumi_vault/consul/secret_backend.py +1517 -0
  51. pulumi_vault/consul/secret_backend_role.py +847 -0
  52. pulumi_vault/database/__init__.py +14 -0
  53. pulumi_vault/database/_inputs.py +11907 -0
  54. pulumi_vault/database/outputs.py +8496 -0
  55. pulumi_vault/database/secret_backend_connection.py +1676 -0
  56. pulumi_vault/database/secret_backend_role.py +840 -0
  57. pulumi_vault/database/secret_backend_static_role.py +881 -0
  58. pulumi_vault/database/secrets_mount.py +2160 -0
  59. pulumi_vault/egp_policy.py +399 -0
  60. pulumi_vault/gcp/__init__.py +17 -0
  61. pulumi_vault/gcp/_inputs.py +441 -0
  62. pulumi_vault/gcp/auth_backend.py +1486 -0
  63. pulumi_vault/gcp/auth_backend_role.py +1235 -0
  64. pulumi_vault/gcp/get_auth_backend_role.py +514 -0
  65. pulumi_vault/gcp/outputs.py +302 -0
  66. pulumi_vault/gcp/secret_backend.py +1807 -0
  67. pulumi_vault/gcp/secret_impersonated_account.py +484 -0
  68. pulumi_vault/gcp/secret_roleset.py +554 -0
  69. pulumi_vault/gcp/secret_static_account.py +557 -0
  70. pulumi_vault/generic/__init__.py +11 -0
  71. pulumi_vault/generic/endpoint.py +786 -0
  72. pulumi_vault/generic/get_secret.py +306 -0
  73. pulumi_vault/generic/secret.py +486 -0
  74. pulumi_vault/get_auth_backend.py +226 -0
  75. pulumi_vault/get_auth_backends.py +170 -0
  76. pulumi_vault/get_namespace.py +226 -0
  77. pulumi_vault/get_namespaces.py +202 -0
  78. pulumi_vault/get_nomad_access_token.py +210 -0
  79. pulumi_vault/get_policy_document.py +160 -0
  80. pulumi_vault/get_raft_autopilot_state.py +267 -0
  81. pulumi_vault/github/__init__.py +13 -0
  82. pulumi_vault/github/_inputs.py +225 -0
  83. pulumi_vault/github/auth_backend.py +1194 -0
  84. pulumi_vault/github/outputs.py +174 -0
  85. pulumi_vault/github/team.py +380 -0
  86. pulumi_vault/github/user.py +380 -0
  87. pulumi_vault/identity/__init__.py +35 -0
  88. pulumi_vault/identity/entity.py +447 -0
  89. pulumi_vault/identity/entity_alias.py +398 -0
  90. pulumi_vault/identity/entity_policies.py +455 -0
  91. pulumi_vault/identity/get_entity.py +384 -0
  92. pulumi_vault/identity/get_group.py +467 -0
  93. pulumi_vault/identity/get_oidc_client_creds.py +175 -0
  94. pulumi_vault/identity/get_oidc_openid_config.py +334 -0
  95. pulumi_vault/identity/get_oidc_public_keys.py +179 -0
  96. pulumi_vault/identity/group.py +805 -0
  97. pulumi_vault/identity/group_alias.py +386 -0
  98. pulumi_vault/identity/group_member_entity_ids.py +444 -0
  99. pulumi_vault/identity/group_member_group_ids.py +467 -0
  100. pulumi_vault/identity/group_policies.py +471 -0
  101. pulumi_vault/identity/mfa_duo.py +674 -0
  102. pulumi_vault/identity/mfa_login_enforcement.py +566 -0
  103. pulumi_vault/identity/mfa_okta.py +626 -0
  104. pulumi_vault/identity/mfa_pingid.py +616 -0
  105. pulumi_vault/identity/mfa_totp.py +758 -0
  106. pulumi_vault/identity/oidc.py +268 -0
  107. pulumi_vault/identity/oidc_assignment.py +375 -0
  108. pulumi_vault/identity/oidc_client.py +667 -0
  109. pulumi_vault/identity/oidc_key.py +474 -0
  110. pulumi_vault/identity/oidc_key_allowed_client_id.py +298 -0
  111. pulumi_vault/identity/oidc_provider.py +550 -0
  112. pulumi_vault/identity/oidc_role.py +543 -0
  113. pulumi_vault/identity/oidc_scope.py +355 -0
  114. pulumi_vault/identity/outputs.py +137 -0
  115. pulumi_vault/jwt/__init__.py +12 -0
  116. pulumi_vault/jwt/_inputs.py +225 -0
  117. pulumi_vault/jwt/auth_backend.py +1347 -0
  118. pulumi_vault/jwt/auth_backend_role.py +1847 -0
  119. pulumi_vault/jwt/outputs.py +174 -0
  120. pulumi_vault/kmip/__init__.py +11 -0
  121. pulumi_vault/kmip/secret_backend.py +1591 -0
  122. pulumi_vault/kmip/secret_role.py +1194 -0
  123. pulumi_vault/kmip/secret_scope.py +372 -0
  124. pulumi_vault/kubernetes/__init__.py +15 -0
  125. pulumi_vault/kubernetes/auth_backend_config.py +654 -0
  126. pulumi_vault/kubernetes/auth_backend_role.py +1031 -0
  127. pulumi_vault/kubernetes/get_auth_backend_config.py +280 -0
  128. pulumi_vault/kubernetes/get_auth_backend_role.py +470 -0
  129. pulumi_vault/kubernetes/get_service_account_token.py +344 -0
  130. pulumi_vault/kubernetes/secret_backend.py +1341 -0
  131. pulumi_vault/kubernetes/secret_backend_role.py +1140 -0
  132. pulumi_vault/kv/__init__.py +18 -0
  133. pulumi_vault/kv/_inputs.py +124 -0
  134. pulumi_vault/kv/get_secret.py +240 -0
  135. pulumi_vault/kv/get_secret_subkeys_v2.py +275 -0
  136. pulumi_vault/kv/get_secret_v2.py +315 -0
  137. pulumi_vault/kv/get_secrets_list.py +186 -0
  138. pulumi_vault/kv/get_secrets_list_v2.py +243 -0
  139. pulumi_vault/kv/outputs.py +102 -0
  140. pulumi_vault/kv/secret.py +397 -0
  141. pulumi_vault/kv/secret_backend_v2.py +455 -0
  142. pulumi_vault/kv/secret_v2.py +970 -0
  143. pulumi_vault/ldap/__init__.py +19 -0
  144. pulumi_vault/ldap/_inputs.py +225 -0
  145. pulumi_vault/ldap/auth_backend.py +2520 -0
  146. pulumi_vault/ldap/auth_backend_group.py +386 -0
  147. pulumi_vault/ldap/auth_backend_user.py +439 -0
  148. pulumi_vault/ldap/get_dynamic_credentials.py +181 -0
  149. pulumi_vault/ldap/get_static_credentials.py +192 -0
  150. pulumi_vault/ldap/outputs.py +174 -0
  151. pulumi_vault/ldap/secret_backend.py +2207 -0
  152. pulumi_vault/ldap/secret_backend_dynamic_role.py +767 -0
  153. pulumi_vault/ldap/secret_backend_library_set.py +552 -0
  154. pulumi_vault/ldap/secret_backend_static_role.py +541 -0
  155. pulumi_vault/managed/__init__.py +11 -0
  156. pulumi_vault/managed/_inputs.py +944 -0
  157. pulumi_vault/managed/keys.py +398 -0
  158. pulumi_vault/managed/outputs.py +667 -0
  159. pulumi_vault/mfa_duo.py +589 -0
  160. pulumi_vault/mfa_okta.py +623 -0
  161. pulumi_vault/mfa_pingid.py +670 -0
  162. pulumi_vault/mfa_totp.py +620 -0
  163. pulumi_vault/mongodbatlas/__init__.py +10 -0
  164. pulumi_vault/mongodbatlas/secret_backend.py +388 -0
  165. pulumi_vault/mongodbatlas/secret_role.py +726 -0
  166. pulumi_vault/mount.py +1262 -0
  167. pulumi_vault/namespace.py +452 -0
  168. pulumi_vault/nomad_secret_backend.py +1559 -0
  169. pulumi_vault/nomad_secret_role.py +489 -0
  170. pulumi_vault/oci_auth_backend.py +676 -0
  171. pulumi_vault/oci_auth_backend_role.py +852 -0
  172. pulumi_vault/okta/__init__.py +13 -0
  173. pulumi_vault/okta/_inputs.py +320 -0
  174. pulumi_vault/okta/auth_backend.py +1231 -0
  175. pulumi_vault/okta/auth_backend_group.py +369 -0
  176. pulumi_vault/okta/auth_backend_user.py +416 -0
  177. pulumi_vault/okta/outputs.py +244 -0
  178. pulumi_vault/outputs.py +502 -0
  179. pulumi_vault/pkisecret/__init__.py +38 -0
  180. pulumi_vault/pkisecret/_inputs.py +270 -0
  181. pulumi_vault/pkisecret/backend_acme_eab.py +550 -0
  182. pulumi_vault/pkisecret/backend_config_acme.py +690 -0
  183. pulumi_vault/pkisecret/backend_config_auto_tidy.py +1370 -0
  184. pulumi_vault/pkisecret/backend_config_cluster.py +370 -0
  185. pulumi_vault/pkisecret/backend_config_cmpv2.py +693 -0
  186. pulumi_vault/pkisecret/backend_config_est.py +756 -0
  187. pulumi_vault/pkisecret/backend_config_scep.py +738 -0
  188. pulumi_vault/pkisecret/get_backend_cert_metadata.py +277 -0
  189. pulumi_vault/pkisecret/get_backend_config_cmpv2.py +226 -0
  190. pulumi_vault/pkisecret/get_backend_config_est.py +251 -0
  191. pulumi_vault/pkisecret/get_backend_config_scep.py +271 -0
  192. pulumi_vault/pkisecret/get_backend_issuer.py +395 -0
  193. pulumi_vault/pkisecret/get_backend_issuers.py +192 -0
  194. pulumi_vault/pkisecret/get_backend_key.py +211 -0
  195. pulumi_vault/pkisecret/get_backend_keys.py +192 -0
  196. pulumi_vault/pkisecret/outputs.py +270 -0
  197. pulumi_vault/pkisecret/secret_backend_cert.py +1315 -0
  198. pulumi_vault/pkisecret/secret_backend_config_ca.py +386 -0
  199. pulumi_vault/pkisecret/secret_backend_config_issuers.py +392 -0
  200. pulumi_vault/pkisecret/secret_backend_config_urls.py +462 -0
  201. pulumi_vault/pkisecret/secret_backend_crl_config.py +846 -0
  202. pulumi_vault/pkisecret/secret_backend_intermediate_cert_request.py +1629 -0
  203. pulumi_vault/pkisecret/secret_backend_intermediate_set_signed.py +444 -0
  204. pulumi_vault/pkisecret/secret_backend_issuer.py +1089 -0
  205. pulumi_vault/pkisecret/secret_backend_key.py +613 -0
  206. pulumi_vault/pkisecret/secret_backend_role.py +2694 -0
  207. pulumi_vault/pkisecret/secret_backend_root_cert.py +2134 -0
  208. pulumi_vault/pkisecret/secret_backend_root_sign_intermediate.py +2031 -0
  209. pulumi_vault/pkisecret/secret_backend_sign.py +1194 -0
  210. pulumi_vault/plugin.py +596 -0
  211. pulumi_vault/plugin_pinned_version.py +299 -0
  212. pulumi_vault/policy.py +279 -0
  213. pulumi_vault/provider.py +781 -0
  214. pulumi_vault/pulumi-plugin.json +5 -0
  215. pulumi_vault/py.typed +0 -0
  216. pulumi_vault/quota_lease_count.py +504 -0
  217. pulumi_vault/quota_rate_limit.py +751 -0
  218. pulumi_vault/rabbitmq/__init__.py +12 -0
  219. pulumi_vault/rabbitmq/_inputs.py +235 -0
  220. pulumi_vault/rabbitmq/outputs.py +144 -0
  221. pulumi_vault/rabbitmq/secret_backend.py +1437 -0
  222. pulumi_vault/rabbitmq/secret_backend_role.py +496 -0
  223. pulumi_vault/raft_autopilot.py +609 -0
  224. pulumi_vault/raft_snapshot_agent_config.py +1591 -0
  225. pulumi_vault/rgp_policy.py +349 -0
  226. pulumi_vault/saml/__init__.py +12 -0
  227. pulumi_vault/saml/_inputs.py +225 -0
  228. pulumi_vault/saml/auth_backend.py +811 -0
  229. pulumi_vault/saml/auth_backend_role.py +1068 -0
  230. pulumi_vault/saml/outputs.py +174 -0
  231. pulumi_vault/scep_auth_backend_role.py +908 -0
  232. pulumi_vault/secrets/__init__.py +18 -0
  233. pulumi_vault/secrets/_inputs.py +110 -0
  234. pulumi_vault/secrets/outputs.py +94 -0
  235. pulumi_vault/secrets/sync_association.py +450 -0
  236. pulumi_vault/secrets/sync_aws_destination.py +780 -0
  237. pulumi_vault/secrets/sync_azure_destination.py +736 -0
  238. pulumi_vault/secrets/sync_config.py +303 -0
  239. pulumi_vault/secrets/sync_gcp_destination.py +572 -0
  240. pulumi_vault/secrets/sync_gh_destination.py +688 -0
  241. pulumi_vault/secrets/sync_github_apps.py +376 -0
  242. pulumi_vault/secrets/sync_vercel_destination.py +603 -0
  243. pulumi_vault/ssh/__init__.py +13 -0
  244. pulumi_vault/ssh/_inputs.py +76 -0
  245. pulumi_vault/ssh/get_secret_backend_sign.py +294 -0
  246. pulumi_vault/ssh/outputs.py +51 -0
  247. pulumi_vault/ssh/secret_backend_ca.py +588 -0
  248. pulumi_vault/ssh/secret_backend_role.py +1493 -0
  249. pulumi_vault/terraformcloud/__init__.py +11 -0
  250. pulumi_vault/terraformcloud/secret_backend.py +1321 -0
  251. pulumi_vault/terraformcloud/secret_creds.py +445 -0
  252. pulumi_vault/terraformcloud/secret_role.py +563 -0
  253. pulumi_vault/token.py +1026 -0
  254. pulumi_vault/tokenauth/__init__.py +9 -0
  255. pulumi_vault/tokenauth/auth_backend_role.py +1135 -0
  256. pulumi_vault/transform/__init__.py +14 -0
  257. pulumi_vault/transform/alphabet.py +348 -0
  258. pulumi_vault/transform/get_decode.py +287 -0
  259. pulumi_vault/transform/get_encode.py +291 -0
  260. pulumi_vault/transform/role.py +350 -0
  261. pulumi_vault/transform/template.py +592 -0
  262. pulumi_vault/transform/transformation.py +608 -0
  263. pulumi_vault/transit/__init__.py +15 -0
  264. pulumi_vault/transit/get_cmac.py +256 -0
  265. pulumi_vault/transit/get_decrypt.py +181 -0
  266. pulumi_vault/transit/get_encrypt.py +174 -0
  267. pulumi_vault/transit/get_sign.py +328 -0
  268. pulumi_vault/transit/get_verify.py +373 -0
  269. pulumi_vault/transit/secret_backend_key.py +1202 -0
  270. pulumi_vault/transit/secret_cache_config.py +302 -0
  271. pulumi_vault-7.6.0a1764657486.dist-info/METADATA +92 -0
  272. pulumi_vault-7.6.0a1764657486.dist-info/RECORD +274 -0
  273. pulumi_vault-7.6.0a1764657486.dist-info/WHEEL +5 -0
  274. pulumi_vault-7.6.0a1764657486.dist-info/top_level.txt +1 -0
@@ -0,0 +1,1847 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+
17
+ __all__ = ['AuthBackendRoleArgs', 'AuthBackendRole']
18
+
19
+ @pulumi.input_type
20
+ class AuthBackendRoleArgs:
21
+ def __init__(__self__, *,
22
+ role_name: pulumi.Input[_builtins.str],
23
+ user_claim: pulumi.Input[_builtins.str],
24
+ alias_metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
25
+ allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
26
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
27
+ bound_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
28
+ bound_claims: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
29
+ bound_claims_type: Optional[pulumi.Input[_builtins.str]] = None,
30
+ bound_subject: Optional[pulumi.Input[_builtins.str]] = None,
31
+ claim_mappings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
32
+ clock_skew_leeway: Optional[pulumi.Input[_builtins.int]] = None,
33
+ disable_bound_claims_parsing: Optional[pulumi.Input[_builtins.bool]] = None,
34
+ expiration_leeway: Optional[pulumi.Input[_builtins.int]] = None,
35
+ groups_claim: Optional[pulumi.Input[_builtins.str]] = None,
36
+ max_age: Optional[pulumi.Input[_builtins.int]] = None,
37
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
38
+ not_before_leeway: Optional[pulumi.Input[_builtins.int]] = None,
39
+ oidc_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
40
+ role_type: Optional[pulumi.Input[_builtins.str]] = None,
41
+ token_bound_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
42
+ token_explicit_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
43
+ token_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
44
+ token_no_default_policy: Optional[pulumi.Input[_builtins.bool]] = None,
45
+ token_num_uses: Optional[pulumi.Input[_builtins.int]] = None,
46
+ token_period: Optional[pulumi.Input[_builtins.int]] = None,
47
+ token_policies: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
48
+ token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
49
+ token_type: Optional[pulumi.Input[_builtins.str]] = None,
50
+ user_claim_json_pointer: Optional[pulumi.Input[_builtins.bool]] = None,
51
+ verbose_oidc_logging: Optional[pulumi.Input[_builtins.bool]] = None):
52
+ """
53
+ The set of arguments for constructing a AuthBackendRole resource.
54
+ :param pulumi.Input[_builtins.str] role_name: The name of the role.
55
+ :param pulumi.Input[_builtins.str] user_claim: The claim to use to uniquely identify
56
+ the user; this will be used as the name for the Identity entity alias created
57
+ due to a successful login.
58
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] alias_metadata: The metadata to be tied to generated entity alias.
59
+ This should be a list or map containing the metadata in key value pairs.
60
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_redirect_uris: The list of allowed values for redirect_uri during OIDC logins.
61
+ Required for OIDC roles
62
+ :param pulumi.Input[_builtins.str] backend: The unique name of the auth backend to configure.
63
+ Defaults to `jwt`.
64
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] bound_audiences: (Required for roles of type `jwt`, optional for roles of
65
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
66
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] bound_claims: If set, a map of claims to values to match against.
67
+ A claim's value must be a string, which may contain one value or multiple
68
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
69
+ :param pulumi.Input[_builtins.str] bound_claims_type: How to interpret values in the claims/values
70
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
71
+ match). Requires Vault 1.4.0 or above.
72
+ :param pulumi.Input[_builtins.str] bound_subject: If set, requires that the `sub` claim matches
73
+ this value.
74
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] claim_mappings: If set, a map of claims (keys) to be copied
75
+ to specified metadata fields (values).
76
+ :param pulumi.Input[_builtins.int] clock_skew_leeway: The amount of leeway to add to all claims to account for clock skew, in
77
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
78
+ Only applicable with "jwt" roles.
79
+ :param pulumi.Input[_builtins.bool] disable_bound_claims_parsing: Disable bound claim value parsing. Useful when values contain commas.
80
+ :param pulumi.Input[_builtins.int] expiration_leeway: The amount of leeway to add to expiration (`exp`) claims to account for
81
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
82
+ Only applicable with "jwt" roles.
83
+ :param pulumi.Input[_builtins.str] groups_claim: The claim to use to uniquely identify
84
+ the set of groups to which the user belongs; this will be used as the names
85
+ for the Identity group aliases created due to a successful login. The claim
86
+ value must be a list of strings.
87
+ :param pulumi.Input[_builtins.int] max_age: Specifies the allowable elapsed time in seconds since the last time
88
+ the user was actively authenticated with the OIDC provider.
89
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
90
+ The value should not contain leading or trailing forward slashes.
91
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
92
+ *Available only for Vault Enterprise*.
93
+ :param pulumi.Input[_builtins.int] not_before_leeway: The amount of leeway to add to not before (`nbf`) claims to account for
94
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
95
+ Only applicable with "jwt" roles.
96
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] oidc_scopes: If set, a list of OIDC scopes to be used with an OIDC role.
97
+ The standard scope "openid" is automatically included and need not be specified.
98
+ :param pulumi.Input[_builtins.str] role_type: Type of role, either "oidc" (default) or "jwt".
99
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_bound_cidrs: Specifies the blocks of IP addresses which are allowed to use the generated token
100
+ :param pulumi.Input[_builtins.int] token_explicit_max_ttl: Generated Token's Explicit Maximum TTL in seconds
101
+ :param pulumi.Input[_builtins.int] token_max_ttl: The maximum lifetime of the generated token
102
+ :param pulumi.Input[_builtins.bool] token_no_default_policy: If true, the 'default' policy will not automatically be added to generated tokens
103
+ :param pulumi.Input[_builtins.int] token_num_uses: The maximum number of times a token may be used, a value of zero means unlimited
104
+ :param pulumi.Input[_builtins.int] token_period: Generated Token's Period
105
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_policies: Generated Token's Policies
106
+ :param pulumi.Input[_builtins.int] token_ttl: The initial ttl of the token to generate in seconds
107
+ :param pulumi.Input[_builtins.str] token_type: The type of token to generate, service or batch
108
+ :param pulumi.Input[_builtins.bool] user_claim_json_pointer: Specifies if the `user_claim` value uses
109
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
110
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
111
+ Requires Vault 1.11+.
112
+ :param pulumi.Input[_builtins.bool] verbose_oidc_logging: Log received OIDC tokens and claims when debug-level
113
+ logging is active. Not recommended in production since sensitive information may be present
114
+ in OIDC responses.
115
+ """
116
+ pulumi.set(__self__, "role_name", role_name)
117
+ pulumi.set(__self__, "user_claim", user_claim)
118
+ if alias_metadata is not None:
119
+ pulumi.set(__self__, "alias_metadata", alias_metadata)
120
+ if allowed_redirect_uris is not None:
121
+ pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
122
+ if backend is not None:
123
+ pulumi.set(__self__, "backend", backend)
124
+ if bound_audiences is not None:
125
+ pulumi.set(__self__, "bound_audiences", bound_audiences)
126
+ if bound_claims is not None:
127
+ pulumi.set(__self__, "bound_claims", bound_claims)
128
+ if bound_claims_type is not None:
129
+ pulumi.set(__self__, "bound_claims_type", bound_claims_type)
130
+ if bound_subject is not None:
131
+ pulumi.set(__self__, "bound_subject", bound_subject)
132
+ if claim_mappings is not None:
133
+ pulumi.set(__self__, "claim_mappings", claim_mappings)
134
+ if clock_skew_leeway is not None:
135
+ pulumi.set(__self__, "clock_skew_leeway", clock_skew_leeway)
136
+ if disable_bound_claims_parsing is not None:
137
+ pulumi.set(__self__, "disable_bound_claims_parsing", disable_bound_claims_parsing)
138
+ if expiration_leeway is not None:
139
+ pulumi.set(__self__, "expiration_leeway", expiration_leeway)
140
+ if groups_claim is not None:
141
+ pulumi.set(__self__, "groups_claim", groups_claim)
142
+ if max_age is not None:
143
+ pulumi.set(__self__, "max_age", max_age)
144
+ if namespace is not None:
145
+ pulumi.set(__self__, "namespace", namespace)
146
+ if not_before_leeway is not None:
147
+ pulumi.set(__self__, "not_before_leeway", not_before_leeway)
148
+ if oidc_scopes is not None:
149
+ pulumi.set(__self__, "oidc_scopes", oidc_scopes)
150
+ if role_type is not None:
151
+ pulumi.set(__self__, "role_type", role_type)
152
+ if token_bound_cidrs is not None:
153
+ pulumi.set(__self__, "token_bound_cidrs", token_bound_cidrs)
154
+ if token_explicit_max_ttl is not None:
155
+ pulumi.set(__self__, "token_explicit_max_ttl", token_explicit_max_ttl)
156
+ if token_max_ttl is not None:
157
+ pulumi.set(__self__, "token_max_ttl", token_max_ttl)
158
+ if token_no_default_policy is not None:
159
+ pulumi.set(__self__, "token_no_default_policy", token_no_default_policy)
160
+ if token_num_uses is not None:
161
+ pulumi.set(__self__, "token_num_uses", token_num_uses)
162
+ if token_period is not None:
163
+ pulumi.set(__self__, "token_period", token_period)
164
+ if token_policies is not None:
165
+ pulumi.set(__self__, "token_policies", token_policies)
166
+ if token_ttl is not None:
167
+ pulumi.set(__self__, "token_ttl", token_ttl)
168
+ if token_type is not None:
169
+ pulumi.set(__self__, "token_type", token_type)
170
+ if user_claim_json_pointer is not None:
171
+ pulumi.set(__self__, "user_claim_json_pointer", user_claim_json_pointer)
172
+ if verbose_oidc_logging is not None:
173
+ pulumi.set(__self__, "verbose_oidc_logging", verbose_oidc_logging)
174
+
175
+ @_builtins.property
176
+ @pulumi.getter(name="roleName")
177
+ def role_name(self) -> pulumi.Input[_builtins.str]:
178
+ """
179
+ The name of the role.
180
+ """
181
+ return pulumi.get(self, "role_name")
182
+
183
+ @role_name.setter
184
+ def role_name(self, value: pulumi.Input[_builtins.str]):
185
+ pulumi.set(self, "role_name", value)
186
+
187
+ @_builtins.property
188
+ @pulumi.getter(name="userClaim")
189
+ def user_claim(self) -> pulumi.Input[_builtins.str]:
190
+ """
191
+ The claim to use to uniquely identify
192
+ the user; this will be used as the name for the Identity entity alias created
193
+ due to a successful login.
194
+ """
195
+ return pulumi.get(self, "user_claim")
196
+
197
+ @user_claim.setter
198
+ def user_claim(self, value: pulumi.Input[_builtins.str]):
199
+ pulumi.set(self, "user_claim", value)
200
+
201
+ @_builtins.property
202
+ @pulumi.getter(name="aliasMetadata")
203
+ def alias_metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
204
+ """
205
+ The metadata to be tied to generated entity alias.
206
+ This should be a list or map containing the metadata in key value pairs.
207
+ """
208
+ return pulumi.get(self, "alias_metadata")
209
+
210
+ @alias_metadata.setter
211
+ def alias_metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
212
+ pulumi.set(self, "alias_metadata", value)
213
+
214
+ @_builtins.property
215
+ @pulumi.getter(name="allowedRedirectUris")
216
+ def allowed_redirect_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
217
+ """
218
+ The list of allowed values for redirect_uri during OIDC logins.
219
+ Required for OIDC roles
220
+ """
221
+ return pulumi.get(self, "allowed_redirect_uris")
222
+
223
+ @allowed_redirect_uris.setter
224
+ def allowed_redirect_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
225
+ pulumi.set(self, "allowed_redirect_uris", value)
226
+
227
+ @_builtins.property
228
+ @pulumi.getter
229
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
230
+ """
231
+ The unique name of the auth backend to configure.
232
+ Defaults to `jwt`.
233
+ """
234
+ return pulumi.get(self, "backend")
235
+
236
+ @backend.setter
237
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
238
+ pulumi.set(self, "backend", value)
239
+
240
+ @_builtins.property
241
+ @pulumi.getter(name="boundAudiences")
242
+ def bound_audiences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
243
+ """
244
+ (Required for roles of type `jwt`, optional for roles of
245
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
246
+ """
247
+ return pulumi.get(self, "bound_audiences")
248
+
249
+ @bound_audiences.setter
250
+ def bound_audiences(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
251
+ pulumi.set(self, "bound_audiences", value)
252
+
253
+ @_builtins.property
254
+ @pulumi.getter(name="boundClaims")
255
+ def bound_claims(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
256
+ """
257
+ If set, a map of claims to values to match against.
258
+ A claim's value must be a string, which may contain one value or multiple
259
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
260
+ """
261
+ return pulumi.get(self, "bound_claims")
262
+
263
+ @bound_claims.setter
264
+ def bound_claims(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
265
+ pulumi.set(self, "bound_claims", value)
266
+
267
+ @_builtins.property
268
+ @pulumi.getter(name="boundClaimsType")
269
+ def bound_claims_type(self) -> Optional[pulumi.Input[_builtins.str]]:
270
+ """
271
+ How to interpret values in the claims/values
272
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
273
+ match). Requires Vault 1.4.0 or above.
274
+ """
275
+ return pulumi.get(self, "bound_claims_type")
276
+
277
+ @bound_claims_type.setter
278
+ def bound_claims_type(self, value: Optional[pulumi.Input[_builtins.str]]):
279
+ pulumi.set(self, "bound_claims_type", value)
280
+
281
+ @_builtins.property
282
+ @pulumi.getter(name="boundSubject")
283
+ def bound_subject(self) -> Optional[pulumi.Input[_builtins.str]]:
284
+ """
285
+ If set, requires that the `sub` claim matches
286
+ this value.
287
+ """
288
+ return pulumi.get(self, "bound_subject")
289
+
290
+ @bound_subject.setter
291
+ def bound_subject(self, value: Optional[pulumi.Input[_builtins.str]]):
292
+ pulumi.set(self, "bound_subject", value)
293
+
294
+ @_builtins.property
295
+ @pulumi.getter(name="claimMappings")
296
+ def claim_mappings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
297
+ """
298
+ If set, a map of claims (keys) to be copied
299
+ to specified metadata fields (values).
300
+ """
301
+ return pulumi.get(self, "claim_mappings")
302
+
303
+ @claim_mappings.setter
304
+ def claim_mappings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
305
+ pulumi.set(self, "claim_mappings", value)
306
+
307
+ @_builtins.property
308
+ @pulumi.getter(name="clockSkewLeeway")
309
+ def clock_skew_leeway(self) -> Optional[pulumi.Input[_builtins.int]]:
310
+ """
311
+ The amount of leeway to add to all claims to account for clock skew, in
312
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
313
+ Only applicable with "jwt" roles.
314
+ """
315
+ return pulumi.get(self, "clock_skew_leeway")
316
+
317
+ @clock_skew_leeway.setter
318
+ def clock_skew_leeway(self, value: Optional[pulumi.Input[_builtins.int]]):
319
+ pulumi.set(self, "clock_skew_leeway", value)
320
+
321
+ @_builtins.property
322
+ @pulumi.getter(name="disableBoundClaimsParsing")
323
+ def disable_bound_claims_parsing(self) -> Optional[pulumi.Input[_builtins.bool]]:
324
+ """
325
+ Disable bound claim value parsing. Useful when values contain commas.
326
+ """
327
+ return pulumi.get(self, "disable_bound_claims_parsing")
328
+
329
+ @disable_bound_claims_parsing.setter
330
+ def disable_bound_claims_parsing(self, value: Optional[pulumi.Input[_builtins.bool]]):
331
+ pulumi.set(self, "disable_bound_claims_parsing", value)
332
+
333
+ @_builtins.property
334
+ @pulumi.getter(name="expirationLeeway")
335
+ def expiration_leeway(self) -> Optional[pulumi.Input[_builtins.int]]:
336
+ """
337
+ The amount of leeway to add to expiration (`exp`) claims to account for
338
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
339
+ Only applicable with "jwt" roles.
340
+ """
341
+ return pulumi.get(self, "expiration_leeway")
342
+
343
+ @expiration_leeway.setter
344
+ def expiration_leeway(self, value: Optional[pulumi.Input[_builtins.int]]):
345
+ pulumi.set(self, "expiration_leeway", value)
346
+
347
+ @_builtins.property
348
+ @pulumi.getter(name="groupsClaim")
349
+ def groups_claim(self) -> Optional[pulumi.Input[_builtins.str]]:
350
+ """
351
+ The claim to use to uniquely identify
352
+ the set of groups to which the user belongs; this will be used as the names
353
+ for the Identity group aliases created due to a successful login. The claim
354
+ value must be a list of strings.
355
+ """
356
+ return pulumi.get(self, "groups_claim")
357
+
358
+ @groups_claim.setter
359
+ def groups_claim(self, value: Optional[pulumi.Input[_builtins.str]]):
360
+ pulumi.set(self, "groups_claim", value)
361
+
362
+ @_builtins.property
363
+ @pulumi.getter(name="maxAge")
364
+ def max_age(self) -> Optional[pulumi.Input[_builtins.int]]:
365
+ """
366
+ Specifies the allowable elapsed time in seconds since the last time
367
+ the user was actively authenticated with the OIDC provider.
368
+ """
369
+ return pulumi.get(self, "max_age")
370
+
371
+ @max_age.setter
372
+ def max_age(self, value: Optional[pulumi.Input[_builtins.int]]):
373
+ pulumi.set(self, "max_age", value)
374
+
375
+ @_builtins.property
376
+ @pulumi.getter
377
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
378
+ """
379
+ The namespace to provision the resource in.
380
+ The value should not contain leading or trailing forward slashes.
381
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
382
+ *Available only for Vault Enterprise*.
383
+ """
384
+ return pulumi.get(self, "namespace")
385
+
386
+ @namespace.setter
387
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
388
+ pulumi.set(self, "namespace", value)
389
+
390
+ @_builtins.property
391
+ @pulumi.getter(name="notBeforeLeeway")
392
+ def not_before_leeway(self) -> Optional[pulumi.Input[_builtins.int]]:
393
+ """
394
+ The amount of leeway to add to not before (`nbf`) claims to account for
395
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
396
+ Only applicable with "jwt" roles.
397
+ """
398
+ return pulumi.get(self, "not_before_leeway")
399
+
400
+ @not_before_leeway.setter
401
+ def not_before_leeway(self, value: Optional[pulumi.Input[_builtins.int]]):
402
+ pulumi.set(self, "not_before_leeway", value)
403
+
404
+ @_builtins.property
405
+ @pulumi.getter(name="oidcScopes")
406
+ def oidc_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
407
+ """
408
+ If set, a list of OIDC scopes to be used with an OIDC role.
409
+ The standard scope "openid" is automatically included and need not be specified.
410
+ """
411
+ return pulumi.get(self, "oidc_scopes")
412
+
413
+ @oidc_scopes.setter
414
+ def oidc_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
415
+ pulumi.set(self, "oidc_scopes", value)
416
+
417
+ @_builtins.property
418
+ @pulumi.getter(name="roleType")
419
+ def role_type(self) -> Optional[pulumi.Input[_builtins.str]]:
420
+ """
421
+ Type of role, either "oidc" (default) or "jwt".
422
+ """
423
+ return pulumi.get(self, "role_type")
424
+
425
+ @role_type.setter
426
+ def role_type(self, value: Optional[pulumi.Input[_builtins.str]]):
427
+ pulumi.set(self, "role_type", value)
428
+
429
+ @_builtins.property
430
+ @pulumi.getter(name="tokenBoundCidrs")
431
+ def token_bound_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
432
+ """
433
+ Specifies the blocks of IP addresses which are allowed to use the generated token
434
+ """
435
+ return pulumi.get(self, "token_bound_cidrs")
436
+
437
+ @token_bound_cidrs.setter
438
+ def token_bound_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
439
+ pulumi.set(self, "token_bound_cidrs", value)
440
+
441
+ @_builtins.property
442
+ @pulumi.getter(name="tokenExplicitMaxTtl")
443
+ def token_explicit_max_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
444
+ """
445
+ Generated Token's Explicit Maximum TTL in seconds
446
+ """
447
+ return pulumi.get(self, "token_explicit_max_ttl")
448
+
449
+ @token_explicit_max_ttl.setter
450
+ def token_explicit_max_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
451
+ pulumi.set(self, "token_explicit_max_ttl", value)
452
+
453
+ @_builtins.property
454
+ @pulumi.getter(name="tokenMaxTtl")
455
+ def token_max_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
456
+ """
457
+ The maximum lifetime of the generated token
458
+ """
459
+ return pulumi.get(self, "token_max_ttl")
460
+
461
+ @token_max_ttl.setter
462
+ def token_max_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
463
+ pulumi.set(self, "token_max_ttl", value)
464
+
465
+ @_builtins.property
466
+ @pulumi.getter(name="tokenNoDefaultPolicy")
467
+ def token_no_default_policy(self) -> Optional[pulumi.Input[_builtins.bool]]:
468
+ """
469
+ If true, the 'default' policy will not automatically be added to generated tokens
470
+ """
471
+ return pulumi.get(self, "token_no_default_policy")
472
+
473
+ @token_no_default_policy.setter
474
+ def token_no_default_policy(self, value: Optional[pulumi.Input[_builtins.bool]]):
475
+ pulumi.set(self, "token_no_default_policy", value)
476
+
477
+ @_builtins.property
478
+ @pulumi.getter(name="tokenNumUses")
479
+ def token_num_uses(self) -> Optional[pulumi.Input[_builtins.int]]:
480
+ """
481
+ The maximum number of times a token may be used, a value of zero means unlimited
482
+ """
483
+ return pulumi.get(self, "token_num_uses")
484
+
485
+ @token_num_uses.setter
486
+ def token_num_uses(self, value: Optional[pulumi.Input[_builtins.int]]):
487
+ pulumi.set(self, "token_num_uses", value)
488
+
489
+ @_builtins.property
490
+ @pulumi.getter(name="tokenPeriod")
491
+ def token_period(self) -> Optional[pulumi.Input[_builtins.int]]:
492
+ """
493
+ Generated Token's Period
494
+ """
495
+ return pulumi.get(self, "token_period")
496
+
497
+ @token_period.setter
498
+ def token_period(self, value: Optional[pulumi.Input[_builtins.int]]):
499
+ pulumi.set(self, "token_period", value)
500
+
501
+ @_builtins.property
502
+ @pulumi.getter(name="tokenPolicies")
503
+ def token_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
504
+ """
505
+ Generated Token's Policies
506
+ """
507
+ return pulumi.get(self, "token_policies")
508
+
509
+ @token_policies.setter
510
+ def token_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
511
+ pulumi.set(self, "token_policies", value)
512
+
513
+ @_builtins.property
514
+ @pulumi.getter(name="tokenTtl")
515
+ def token_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
516
+ """
517
+ The initial ttl of the token to generate in seconds
518
+ """
519
+ return pulumi.get(self, "token_ttl")
520
+
521
+ @token_ttl.setter
522
+ def token_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
523
+ pulumi.set(self, "token_ttl", value)
524
+
525
+ @_builtins.property
526
+ @pulumi.getter(name="tokenType")
527
+ def token_type(self) -> Optional[pulumi.Input[_builtins.str]]:
528
+ """
529
+ The type of token to generate, service or batch
530
+ """
531
+ return pulumi.get(self, "token_type")
532
+
533
+ @token_type.setter
534
+ def token_type(self, value: Optional[pulumi.Input[_builtins.str]]):
535
+ pulumi.set(self, "token_type", value)
536
+
537
+ @_builtins.property
538
+ @pulumi.getter(name="userClaimJsonPointer")
539
+ def user_claim_json_pointer(self) -> Optional[pulumi.Input[_builtins.bool]]:
540
+ """
541
+ Specifies if the `user_claim` value uses
542
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
543
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
544
+ Requires Vault 1.11+.
545
+ """
546
+ return pulumi.get(self, "user_claim_json_pointer")
547
+
548
+ @user_claim_json_pointer.setter
549
+ def user_claim_json_pointer(self, value: Optional[pulumi.Input[_builtins.bool]]):
550
+ pulumi.set(self, "user_claim_json_pointer", value)
551
+
552
+ @_builtins.property
553
+ @pulumi.getter(name="verboseOidcLogging")
554
+ def verbose_oidc_logging(self) -> Optional[pulumi.Input[_builtins.bool]]:
555
+ """
556
+ Log received OIDC tokens and claims when debug-level
557
+ logging is active. Not recommended in production since sensitive information may be present
558
+ in OIDC responses.
559
+ """
560
+ return pulumi.get(self, "verbose_oidc_logging")
561
+
562
+ @verbose_oidc_logging.setter
563
+ def verbose_oidc_logging(self, value: Optional[pulumi.Input[_builtins.bool]]):
564
+ pulumi.set(self, "verbose_oidc_logging", value)
565
+
566
+
567
+ @pulumi.input_type
568
+ class _AuthBackendRoleState:
569
+ def __init__(__self__, *,
570
+ alias_metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
571
+ allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
572
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
573
+ bound_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
574
+ bound_claims: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
575
+ bound_claims_type: Optional[pulumi.Input[_builtins.str]] = None,
576
+ bound_subject: Optional[pulumi.Input[_builtins.str]] = None,
577
+ claim_mappings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
578
+ clock_skew_leeway: Optional[pulumi.Input[_builtins.int]] = None,
579
+ disable_bound_claims_parsing: Optional[pulumi.Input[_builtins.bool]] = None,
580
+ expiration_leeway: Optional[pulumi.Input[_builtins.int]] = None,
581
+ groups_claim: Optional[pulumi.Input[_builtins.str]] = None,
582
+ max_age: Optional[pulumi.Input[_builtins.int]] = None,
583
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
584
+ not_before_leeway: Optional[pulumi.Input[_builtins.int]] = None,
585
+ oidc_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
586
+ role_name: Optional[pulumi.Input[_builtins.str]] = None,
587
+ role_type: Optional[pulumi.Input[_builtins.str]] = None,
588
+ token_bound_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
589
+ token_explicit_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
590
+ token_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
591
+ token_no_default_policy: Optional[pulumi.Input[_builtins.bool]] = None,
592
+ token_num_uses: Optional[pulumi.Input[_builtins.int]] = None,
593
+ token_period: Optional[pulumi.Input[_builtins.int]] = None,
594
+ token_policies: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
595
+ token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
596
+ token_type: Optional[pulumi.Input[_builtins.str]] = None,
597
+ user_claim: Optional[pulumi.Input[_builtins.str]] = None,
598
+ user_claim_json_pointer: Optional[pulumi.Input[_builtins.bool]] = None,
599
+ verbose_oidc_logging: Optional[pulumi.Input[_builtins.bool]] = None):
600
+ """
601
+ Input properties used for looking up and filtering AuthBackendRole resources.
602
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] alias_metadata: The metadata to be tied to generated entity alias.
603
+ This should be a list or map containing the metadata in key value pairs.
604
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_redirect_uris: The list of allowed values for redirect_uri during OIDC logins.
605
+ Required for OIDC roles
606
+ :param pulumi.Input[_builtins.str] backend: The unique name of the auth backend to configure.
607
+ Defaults to `jwt`.
608
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] bound_audiences: (Required for roles of type `jwt`, optional for roles of
609
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
610
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] bound_claims: If set, a map of claims to values to match against.
611
+ A claim's value must be a string, which may contain one value or multiple
612
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
613
+ :param pulumi.Input[_builtins.str] bound_claims_type: How to interpret values in the claims/values
614
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
615
+ match). Requires Vault 1.4.0 or above.
616
+ :param pulumi.Input[_builtins.str] bound_subject: If set, requires that the `sub` claim matches
617
+ this value.
618
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] claim_mappings: If set, a map of claims (keys) to be copied
619
+ to specified metadata fields (values).
620
+ :param pulumi.Input[_builtins.int] clock_skew_leeway: The amount of leeway to add to all claims to account for clock skew, in
621
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
622
+ Only applicable with "jwt" roles.
623
+ :param pulumi.Input[_builtins.bool] disable_bound_claims_parsing: Disable bound claim value parsing. Useful when values contain commas.
624
+ :param pulumi.Input[_builtins.int] expiration_leeway: The amount of leeway to add to expiration (`exp`) claims to account for
625
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
626
+ Only applicable with "jwt" roles.
627
+ :param pulumi.Input[_builtins.str] groups_claim: The claim to use to uniquely identify
628
+ the set of groups to which the user belongs; this will be used as the names
629
+ for the Identity group aliases created due to a successful login. The claim
630
+ value must be a list of strings.
631
+ :param pulumi.Input[_builtins.int] max_age: Specifies the allowable elapsed time in seconds since the last time
632
+ the user was actively authenticated with the OIDC provider.
633
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
634
+ The value should not contain leading or trailing forward slashes.
635
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
636
+ *Available only for Vault Enterprise*.
637
+ :param pulumi.Input[_builtins.int] not_before_leeway: The amount of leeway to add to not before (`nbf`) claims to account for
638
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
639
+ Only applicable with "jwt" roles.
640
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] oidc_scopes: If set, a list of OIDC scopes to be used with an OIDC role.
641
+ The standard scope "openid" is automatically included and need not be specified.
642
+ :param pulumi.Input[_builtins.str] role_name: The name of the role.
643
+ :param pulumi.Input[_builtins.str] role_type: Type of role, either "oidc" (default) or "jwt".
644
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_bound_cidrs: Specifies the blocks of IP addresses which are allowed to use the generated token
645
+ :param pulumi.Input[_builtins.int] token_explicit_max_ttl: Generated Token's Explicit Maximum TTL in seconds
646
+ :param pulumi.Input[_builtins.int] token_max_ttl: The maximum lifetime of the generated token
647
+ :param pulumi.Input[_builtins.bool] token_no_default_policy: If true, the 'default' policy will not automatically be added to generated tokens
648
+ :param pulumi.Input[_builtins.int] token_num_uses: The maximum number of times a token may be used, a value of zero means unlimited
649
+ :param pulumi.Input[_builtins.int] token_period: Generated Token's Period
650
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_policies: Generated Token's Policies
651
+ :param pulumi.Input[_builtins.int] token_ttl: The initial ttl of the token to generate in seconds
652
+ :param pulumi.Input[_builtins.str] token_type: The type of token to generate, service or batch
653
+ :param pulumi.Input[_builtins.str] user_claim: The claim to use to uniquely identify
654
+ the user; this will be used as the name for the Identity entity alias created
655
+ due to a successful login.
656
+ :param pulumi.Input[_builtins.bool] user_claim_json_pointer: Specifies if the `user_claim` value uses
657
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
658
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
659
+ Requires Vault 1.11+.
660
+ :param pulumi.Input[_builtins.bool] verbose_oidc_logging: Log received OIDC tokens and claims when debug-level
661
+ logging is active. Not recommended in production since sensitive information may be present
662
+ in OIDC responses.
663
+ """
664
+ if alias_metadata is not None:
665
+ pulumi.set(__self__, "alias_metadata", alias_metadata)
666
+ if allowed_redirect_uris is not None:
667
+ pulumi.set(__self__, "allowed_redirect_uris", allowed_redirect_uris)
668
+ if backend is not None:
669
+ pulumi.set(__self__, "backend", backend)
670
+ if bound_audiences is not None:
671
+ pulumi.set(__self__, "bound_audiences", bound_audiences)
672
+ if bound_claims is not None:
673
+ pulumi.set(__self__, "bound_claims", bound_claims)
674
+ if bound_claims_type is not None:
675
+ pulumi.set(__self__, "bound_claims_type", bound_claims_type)
676
+ if bound_subject is not None:
677
+ pulumi.set(__self__, "bound_subject", bound_subject)
678
+ if claim_mappings is not None:
679
+ pulumi.set(__self__, "claim_mappings", claim_mappings)
680
+ if clock_skew_leeway is not None:
681
+ pulumi.set(__self__, "clock_skew_leeway", clock_skew_leeway)
682
+ if disable_bound_claims_parsing is not None:
683
+ pulumi.set(__self__, "disable_bound_claims_parsing", disable_bound_claims_parsing)
684
+ if expiration_leeway is not None:
685
+ pulumi.set(__self__, "expiration_leeway", expiration_leeway)
686
+ if groups_claim is not None:
687
+ pulumi.set(__self__, "groups_claim", groups_claim)
688
+ if max_age is not None:
689
+ pulumi.set(__self__, "max_age", max_age)
690
+ if namespace is not None:
691
+ pulumi.set(__self__, "namespace", namespace)
692
+ if not_before_leeway is not None:
693
+ pulumi.set(__self__, "not_before_leeway", not_before_leeway)
694
+ if oidc_scopes is not None:
695
+ pulumi.set(__self__, "oidc_scopes", oidc_scopes)
696
+ if role_name is not None:
697
+ pulumi.set(__self__, "role_name", role_name)
698
+ if role_type is not None:
699
+ pulumi.set(__self__, "role_type", role_type)
700
+ if token_bound_cidrs is not None:
701
+ pulumi.set(__self__, "token_bound_cidrs", token_bound_cidrs)
702
+ if token_explicit_max_ttl is not None:
703
+ pulumi.set(__self__, "token_explicit_max_ttl", token_explicit_max_ttl)
704
+ if token_max_ttl is not None:
705
+ pulumi.set(__self__, "token_max_ttl", token_max_ttl)
706
+ if token_no_default_policy is not None:
707
+ pulumi.set(__self__, "token_no_default_policy", token_no_default_policy)
708
+ if token_num_uses is not None:
709
+ pulumi.set(__self__, "token_num_uses", token_num_uses)
710
+ if token_period is not None:
711
+ pulumi.set(__self__, "token_period", token_period)
712
+ if token_policies is not None:
713
+ pulumi.set(__self__, "token_policies", token_policies)
714
+ if token_ttl is not None:
715
+ pulumi.set(__self__, "token_ttl", token_ttl)
716
+ if token_type is not None:
717
+ pulumi.set(__self__, "token_type", token_type)
718
+ if user_claim is not None:
719
+ pulumi.set(__self__, "user_claim", user_claim)
720
+ if user_claim_json_pointer is not None:
721
+ pulumi.set(__self__, "user_claim_json_pointer", user_claim_json_pointer)
722
+ if verbose_oidc_logging is not None:
723
+ pulumi.set(__self__, "verbose_oidc_logging", verbose_oidc_logging)
724
+
725
+ @_builtins.property
726
+ @pulumi.getter(name="aliasMetadata")
727
+ def alias_metadata(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
728
+ """
729
+ The metadata to be tied to generated entity alias.
730
+ This should be a list or map containing the metadata in key value pairs.
731
+ """
732
+ return pulumi.get(self, "alias_metadata")
733
+
734
+ @alias_metadata.setter
735
+ def alias_metadata(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
736
+ pulumi.set(self, "alias_metadata", value)
737
+
738
+ @_builtins.property
739
+ @pulumi.getter(name="allowedRedirectUris")
740
+ def allowed_redirect_uris(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
741
+ """
742
+ The list of allowed values for redirect_uri during OIDC logins.
743
+ Required for OIDC roles
744
+ """
745
+ return pulumi.get(self, "allowed_redirect_uris")
746
+
747
+ @allowed_redirect_uris.setter
748
+ def allowed_redirect_uris(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
749
+ pulumi.set(self, "allowed_redirect_uris", value)
750
+
751
+ @_builtins.property
752
+ @pulumi.getter
753
+ def backend(self) -> Optional[pulumi.Input[_builtins.str]]:
754
+ """
755
+ The unique name of the auth backend to configure.
756
+ Defaults to `jwt`.
757
+ """
758
+ return pulumi.get(self, "backend")
759
+
760
+ @backend.setter
761
+ def backend(self, value: Optional[pulumi.Input[_builtins.str]]):
762
+ pulumi.set(self, "backend", value)
763
+
764
+ @_builtins.property
765
+ @pulumi.getter(name="boundAudiences")
766
+ def bound_audiences(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
767
+ """
768
+ (Required for roles of type `jwt`, optional for roles of
769
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
770
+ """
771
+ return pulumi.get(self, "bound_audiences")
772
+
773
+ @bound_audiences.setter
774
+ def bound_audiences(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
775
+ pulumi.set(self, "bound_audiences", value)
776
+
777
+ @_builtins.property
778
+ @pulumi.getter(name="boundClaims")
779
+ def bound_claims(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
780
+ """
781
+ If set, a map of claims to values to match against.
782
+ A claim's value must be a string, which may contain one value or multiple
783
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
784
+ """
785
+ return pulumi.get(self, "bound_claims")
786
+
787
+ @bound_claims.setter
788
+ def bound_claims(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
789
+ pulumi.set(self, "bound_claims", value)
790
+
791
+ @_builtins.property
792
+ @pulumi.getter(name="boundClaimsType")
793
+ def bound_claims_type(self) -> Optional[pulumi.Input[_builtins.str]]:
794
+ """
795
+ How to interpret values in the claims/values
796
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
797
+ match). Requires Vault 1.4.0 or above.
798
+ """
799
+ return pulumi.get(self, "bound_claims_type")
800
+
801
+ @bound_claims_type.setter
802
+ def bound_claims_type(self, value: Optional[pulumi.Input[_builtins.str]]):
803
+ pulumi.set(self, "bound_claims_type", value)
804
+
805
+ @_builtins.property
806
+ @pulumi.getter(name="boundSubject")
807
+ def bound_subject(self) -> Optional[pulumi.Input[_builtins.str]]:
808
+ """
809
+ If set, requires that the `sub` claim matches
810
+ this value.
811
+ """
812
+ return pulumi.get(self, "bound_subject")
813
+
814
+ @bound_subject.setter
815
+ def bound_subject(self, value: Optional[pulumi.Input[_builtins.str]]):
816
+ pulumi.set(self, "bound_subject", value)
817
+
818
+ @_builtins.property
819
+ @pulumi.getter(name="claimMappings")
820
+ def claim_mappings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
821
+ """
822
+ If set, a map of claims (keys) to be copied
823
+ to specified metadata fields (values).
824
+ """
825
+ return pulumi.get(self, "claim_mappings")
826
+
827
+ @claim_mappings.setter
828
+ def claim_mappings(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
829
+ pulumi.set(self, "claim_mappings", value)
830
+
831
+ @_builtins.property
832
+ @pulumi.getter(name="clockSkewLeeway")
833
+ def clock_skew_leeway(self) -> Optional[pulumi.Input[_builtins.int]]:
834
+ """
835
+ The amount of leeway to add to all claims to account for clock skew, in
836
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
837
+ Only applicable with "jwt" roles.
838
+ """
839
+ return pulumi.get(self, "clock_skew_leeway")
840
+
841
+ @clock_skew_leeway.setter
842
+ def clock_skew_leeway(self, value: Optional[pulumi.Input[_builtins.int]]):
843
+ pulumi.set(self, "clock_skew_leeway", value)
844
+
845
+ @_builtins.property
846
+ @pulumi.getter(name="disableBoundClaimsParsing")
847
+ def disable_bound_claims_parsing(self) -> Optional[pulumi.Input[_builtins.bool]]:
848
+ """
849
+ Disable bound claim value parsing. Useful when values contain commas.
850
+ """
851
+ return pulumi.get(self, "disable_bound_claims_parsing")
852
+
853
+ @disable_bound_claims_parsing.setter
854
+ def disable_bound_claims_parsing(self, value: Optional[pulumi.Input[_builtins.bool]]):
855
+ pulumi.set(self, "disable_bound_claims_parsing", value)
856
+
857
+ @_builtins.property
858
+ @pulumi.getter(name="expirationLeeway")
859
+ def expiration_leeway(self) -> Optional[pulumi.Input[_builtins.int]]:
860
+ """
861
+ The amount of leeway to add to expiration (`exp`) claims to account for
862
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
863
+ Only applicable with "jwt" roles.
864
+ """
865
+ return pulumi.get(self, "expiration_leeway")
866
+
867
+ @expiration_leeway.setter
868
+ def expiration_leeway(self, value: Optional[pulumi.Input[_builtins.int]]):
869
+ pulumi.set(self, "expiration_leeway", value)
870
+
871
+ @_builtins.property
872
+ @pulumi.getter(name="groupsClaim")
873
+ def groups_claim(self) -> Optional[pulumi.Input[_builtins.str]]:
874
+ """
875
+ The claim to use to uniquely identify
876
+ the set of groups to which the user belongs; this will be used as the names
877
+ for the Identity group aliases created due to a successful login. The claim
878
+ value must be a list of strings.
879
+ """
880
+ return pulumi.get(self, "groups_claim")
881
+
882
+ @groups_claim.setter
883
+ def groups_claim(self, value: Optional[pulumi.Input[_builtins.str]]):
884
+ pulumi.set(self, "groups_claim", value)
885
+
886
+ @_builtins.property
887
+ @pulumi.getter(name="maxAge")
888
+ def max_age(self) -> Optional[pulumi.Input[_builtins.int]]:
889
+ """
890
+ Specifies the allowable elapsed time in seconds since the last time
891
+ the user was actively authenticated with the OIDC provider.
892
+ """
893
+ return pulumi.get(self, "max_age")
894
+
895
+ @max_age.setter
896
+ def max_age(self, value: Optional[pulumi.Input[_builtins.int]]):
897
+ pulumi.set(self, "max_age", value)
898
+
899
+ @_builtins.property
900
+ @pulumi.getter
901
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
902
+ """
903
+ The namespace to provision the resource in.
904
+ The value should not contain leading or trailing forward slashes.
905
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
906
+ *Available only for Vault Enterprise*.
907
+ """
908
+ return pulumi.get(self, "namespace")
909
+
910
+ @namespace.setter
911
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
912
+ pulumi.set(self, "namespace", value)
913
+
914
+ @_builtins.property
915
+ @pulumi.getter(name="notBeforeLeeway")
916
+ def not_before_leeway(self) -> Optional[pulumi.Input[_builtins.int]]:
917
+ """
918
+ The amount of leeway to add to not before (`nbf`) claims to account for
919
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
920
+ Only applicable with "jwt" roles.
921
+ """
922
+ return pulumi.get(self, "not_before_leeway")
923
+
924
+ @not_before_leeway.setter
925
+ def not_before_leeway(self, value: Optional[pulumi.Input[_builtins.int]]):
926
+ pulumi.set(self, "not_before_leeway", value)
927
+
928
+ @_builtins.property
929
+ @pulumi.getter(name="oidcScopes")
930
+ def oidc_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
931
+ """
932
+ If set, a list of OIDC scopes to be used with an OIDC role.
933
+ The standard scope "openid" is automatically included and need not be specified.
934
+ """
935
+ return pulumi.get(self, "oidc_scopes")
936
+
937
+ @oidc_scopes.setter
938
+ def oidc_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
939
+ pulumi.set(self, "oidc_scopes", value)
940
+
941
+ @_builtins.property
942
+ @pulumi.getter(name="roleName")
943
+ def role_name(self) -> Optional[pulumi.Input[_builtins.str]]:
944
+ """
945
+ The name of the role.
946
+ """
947
+ return pulumi.get(self, "role_name")
948
+
949
+ @role_name.setter
950
+ def role_name(self, value: Optional[pulumi.Input[_builtins.str]]):
951
+ pulumi.set(self, "role_name", value)
952
+
953
+ @_builtins.property
954
+ @pulumi.getter(name="roleType")
955
+ def role_type(self) -> Optional[pulumi.Input[_builtins.str]]:
956
+ """
957
+ Type of role, either "oidc" (default) or "jwt".
958
+ """
959
+ return pulumi.get(self, "role_type")
960
+
961
+ @role_type.setter
962
+ def role_type(self, value: Optional[pulumi.Input[_builtins.str]]):
963
+ pulumi.set(self, "role_type", value)
964
+
965
+ @_builtins.property
966
+ @pulumi.getter(name="tokenBoundCidrs")
967
+ def token_bound_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
968
+ """
969
+ Specifies the blocks of IP addresses which are allowed to use the generated token
970
+ """
971
+ return pulumi.get(self, "token_bound_cidrs")
972
+
973
+ @token_bound_cidrs.setter
974
+ def token_bound_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
975
+ pulumi.set(self, "token_bound_cidrs", value)
976
+
977
+ @_builtins.property
978
+ @pulumi.getter(name="tokenExplicitMaxTtl")
979
+ def token_explicit_max_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
980
+ """
981
+ Generated Token's Explicit Maximum TTL in seconds
982
+ """
983
+ return pulumi.get(self, "token_explicit_max_ttl")
984
+
985
+ @token_explicit_max_ttl.setter
986
+ def token_explicit_max_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
987
+ pulumi.set(self, "token_explicit_max_ttl", value)
988
+
989
+ @_builtins.property
990
+ @pulumi.getter(name="tokenMaxTtl")
991
+ def token_max_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
992
+ """
993
+ The maximum lifetime of the generated token
994
+ """
995
+ return pulumi.get(self, "token_max_ttl")
996
+
997
+ @token_max_ttl.setter
998
+ def token_max_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
999
+ pulumi.set(self, "token_max_ttl", value)
1000
+
1001
+ @_builtins.property
1002
+ @pulumi.getter(name="tokenNoDefaultPolicy")
1003
+ def token_no_default_policy(self) -> Optional[pulumi.Input[_builtins.bool]]:
1004
+ """
1005
+ If true, the 'default' policy will not automatically be added to generated tokens
1006
+ """
1007
+ return pulumi.get(self, "token_no_default_policy")
1008
+
1009
+ @token_no_default_policy.setter
1010
+ def token_no_default_policy(self, value: Optional[pulumi.Input[_builtins.bool]]):
1011
+ pulumi.set(self, "token_no_default_policy", value)
1012
+
1013
+ @_builtins.property
1014
+ @pulumi.getter(name="tokenNumUses")
1015
+ def token_num_uses(self) -> Optional[pulumi.Input[_builtins.int]]:
1016
+ """
1017
+ The maximum number of times a token may be used, a value of zero means unlimited
1018
+ """
1019
+ return pulumi.get(self, "token_num_uses")
1020
+
1021
+ @token_num_uses.setter
1022
+ def token_num_uses(self, value: Optional[pulumi.Input[_builtins.int]]):
1023
+ pulumi.set(self, "token_num_uses", value)
1024
+
1025
+ @_builtins.property
1026
+ @pulumi.getter(name="tokenPeriod")
1027
+ def token_period(self) -> Optional[pulumi.Input[_builtins.int]]:
1028
+ """
1029
+ Generated Token's Period
1030
+ """
1031
+ return pulumi.get(self, "token_period")
1032
+
1033
+ @token_period.setter
1034
+ def token_period(self, value: Optional[pulumi.Input[_builtins.int]]):
1035
+ pulumi.set(self, "token_period", value)
1036
+
1037
+ @_builtins.property
1038
+ @pulumi.getter(name="tokenPolicies")
1039
+ def token_policies(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
1040
+ """
1041
+ Generated Token's Policies
1042
+ """
1043
+ return pulumi.get(self, "token_policies")
1044
+
1045
+ @token_policies.setter
1046
+ def token_policies(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
1047
+ pulumi.set(self, "token_policies", value)
1048
+
1049
+ @_builtins.property
1050
+ @pulumi.getter(name="tokenTtl")
1051
+ def token_ttl(self) -> Optional[pulumi.Input[_builtins.int]]:
1052
+ """
1053
+ The initial ttl of the token to generate in seconds
1054
+ """
1055
+ return pulumi.get(self, "token_ttl")
1056
+
1057
+ @token_ttl.setter
1058
+ def token_ttl(self, value: Optional[pulumi.Input[_builtins.int]]):
1059
+ pulumi.set(self, "token_ttl", value)
1060
+
1061
+ @_builtins.property
1062
+ @pulumi.getter(name="tokenType")
1063
+ def token_type(self) -> Optional[pulumi.Input[_builtins.str]]:
1064
+ """
1065
+ The type of token to generate, service or batch
1066
+ """
1067
+ return pulumi.get(self, "token_type")
1068
+
1069
+ @token_type.setter
1070
+ def token_type(self, value: Optional[pulumi.Input[_builtins.str]]):
1071
+ pulumi.set(self, "token_type", value)
1072
+
1073
+ @_builtins.property
1074
+ @pulumi.getter(name="userClaim")
1075
+ def user_claim(self) -> Optional[pulumi.Input[_builtins.str]]:
1076
+ """
1077
+ The claim to use to uniquely identify
1078
+ the user; this will be used as the name for the Identity entity alias created
1079
+ due to a successful login.
1080
+ """
1081
+ return pulumi.get(self, "user_claim")
1082
+
1083
+ @user_claim.setter
1084
+ def user_claim(self, value: Optional[pulumi.Input[_builtins.str]]):
1085
+ pulumi.set(self, "user_claim", value)
1086
+
1087
+ @_builtins.property
1088
+ @pulumi.getter(name="userClaimJsonPointer")
1089
+ def user_claim_json_pointer(self) -> Optional[pulumi.Input[_builtins.bool]]:
1090
+ """
1091
+ Specifies if the `user_claim` value uses
1092
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
1093
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
1094
+ Requires Vault 1.11+.
1095
+ """
1096
+ return pulumi.get(self, "user_claim_json_pointer")
1097
+
1098
+ @user_claim_json_pointer.setter
1099
+ def user_claim_json_pointer(self, value: Optional[pulumi.Input[_builtins.bool]]):
1100
+ pulumi.set(self, "user_claim_json_pointer", value)
1101
+
1102
+ @_builtins.property
1103
+ @pulumi.getter(name="verboseOidcLogging")
1104
+ def verbose_oidc_logging(self) -> Optional[pulumi.Input[_builtins.bool]]:
1105
+ """
1106
+ Log received OIDC tokens and claims when debug-level
1107
+ logging is active. Not recommended in production since sensitive information may be present
1108
+ in OIDC responses.
1109
+ """
1110
+ return pulumi.get(self, "verbose_oidc_logging")
1111
+
1112
+ @verbose_oidc_logging.setter
1113
+ def verbose_oidc_logging(self, value: Optional[pulumi.Input[_builtins.bool]]):
1114
+ pulumi.set(self, "verbose_oidc_logging", value)
1115
+
1116
+
1117
+ @pulumi.type_token("vault:jwt/authBackendRole:AuthBackendRole")
1118
+ class AuthBackendRole(pulumi.CustomResource):
1119
+ @overload
1120
+ def __init__(__self__,
1121
+ resource_name: str,
1122
+ opts: Optional[pulumi.ResourceOptions] = None,
1123
+ alias_metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1124
+ allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1125
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
1126
+ bound_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1127
+ bound_claims: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1128
+ bound_claims_type: Optional[pulumi.Input[_builtins.str]] = None,
1129
+ bound_subject: Optional[pulumi.Input[_builtins.str]] = None,
1130
+ claim_mappings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1131
+ clock_skew_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1132
+ disable_bound_claims_parsing: Optional[pulumi.Input[_builtins.bool]] = None,
1133
+ expiration_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1134
+ groups_claim: Optional[pulumi.Input[_builtins.str]] = None,
1135
+ max_age: Optional[pulumi.Input[_builtins.int]] = None,
1136
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1137
+ not_before_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1138
+ oidc_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1139
+ role_name: Optional[pulumi.Input[_builtins.str]] = None,
1140
+ role_type: Optional[pulumi.Input[_builtins.str]] = None,
1141
+ token_bound_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1142
+ token_explicit_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1143
+ token_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1144
+ token_no_default_policy: Optional[pulumi.Input[_builtins.bool]] = None,
1145
+ token_num_uses: Optional[pulumi.Input[_builtins.int]] = None,
1146
+ token_period: Optional[pulumi.Input[_builtins.int]] = None,
1147
+ token_policies: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1148
+ token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1149
+ token_type: Optional[pulumi.Input[_builtins.str]] = None,
1150
+ user_claim: Optional[pulumi.Input[_builtins.str]] = None,
1151
+ user_claim_json_pointer: Optional[pulumi.Input[_builtins.bool]] = None,
1152
+ verbose_oidc_logging: Optional[pulumi.Input[_builtins.bool]] = None,
1153
+ __props__=None):
1154
+ """
1155
+ Manages an JWT/OIDC auth backend role in a Vault server. See the [Vault
1156
+ documentation](https://www.vaultproject.io/docs/auth/jwt.html) for more
1157
+ information.
1158
+
1159
+ ## Example Usage
1160
+
1161
+ Role for JWT backend:
1162
+
1163
+ ```python
1164
+ import pulumi
1165
+ import pulumi_vault as vault
1166
+
1167
+ jwt = vault.jwt.AuthBackend("jwt", path="jwt")
1168
+ example = vault.jwt.AuthBackendRole("example",
1169
+ backend=jwt.path,
1170
+ role_name="test-role",
1171
+ token_policies=[
1172
+ "default",
1173
+ "dev",
1174
+ "prod",
1175
+ ],
1176
+ bound_audiences=["https://myco.test"],
1177
+ bound_claims={
1178
+ "color": "red,green,blue",
1179
+ },
1180
+ user_claim="https://vault/user",
1181
+ role_type="jwt")
1182
+ ```
1183
+
1184
+ Role for OIDC backend:
1185
+
1186
+ ```python
1187
+ import pulumi
1188
+ import pulumi_vault as vault
1189
+
1190
+ oidc = vault.jwt.AuthBackend("oidc",
1191
+ path="oidc",
1192
+ default_role="test-role")
1193
+ example = vault.jwt.AuthBackendRole("example",
1194
+ backend=oidc.path,
1195
+ role_name="test-role",
1196
+ token_policies=[
1197
+ "default",
1198
+ "dev",
1199
+ "prod",
1200
+ ],
1201
+ user_claim="https://vault/user",
1202
+ role_type="oidc",
1203
+ allowed_redirect_uris=["http://localhost:8200/ui/vault/auth/oidc/oidc/callback"])
1204
+ ```
1205
+
1206
+ ## Import
1207
+
1208
+ JWT authentication backend roles can be imported using the `path`, e.g.
1209
+
1210
+ ```sh
1211
+ $ pulumi import vault:jwt/authBackendRole:AuthBackendRole example auth/jwt/role/test-role
1212
+ ```
1213
+
1214
+ :param str resource_name: The name of the resource.
1215
+ :param pulumi.ResourceOptions opts: Options for the resource.
1216
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] alias_metadata: The metadata to be tied to generated entity alias.
1217
+ This should be a list or map containing the metadata in key value pairs.
1218
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_redirect_uris: The list of allowed values for redirect_uri during OIDC logins.
1219
+ Required for OIDC roles
1220
+ :param pulumi.Input[_builtins.str] backend: The unique name of the auth backend to configure.
1221
+ Defaults to `jwt`.
1222
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] bound_audiences: (Required for roles of type `jwt`, optional for roles of
1223
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
1224
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] bound_claims: If set, a map of claims to values to match against.
1225
+ A claim's value must be a string, which may contain one value or multiple
1226
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
1227
+ :param pulumi.Input[_builtins.str] bound_claims_type: How to interpret values in the claims/values
1228
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
1229
+ match). Requires Vault 1.4.0 or above.
1230
+ :param pulumi.Input[_builtins.str] bound_subject: If set, requires that the `sub` claim matches
1231
+ this value.
1232
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] claim_mappings: If set, a map of claims (keys) to be copied
1233
+ to specified metadata fields (values).
1234
+ :param pulumi.Input[_builtins.int] clock_skew_leeway: The amount of leeway to add to all claims to account for clock skew, in
1235
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
1236
+ Only applicable with "jwt" roles.
1237
+ :param pulumi.Input[_builtins.bool] disable_bound_claims_parsing: Disable bound claim value parsing. Useful when values contain commas.
1238
+ :param pulumi.Input[_builtins.int] expiration_leeway: The amount of leeway to add to expiration (`exp`) claims to account for
1239
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
1240
+ Only applicable with "jwt" roles.
1241
+ :param pulumi.Input[_builtins.str] groups_claim: The claim to use to uniquely identify
1242
+ the set of groups to which the user belongs; this will be used as the names
1243
+ for the Identity group aliases created due to a successful login. The claim
1244
+ value must be a list of strings.
1245
+ :param pulumi.Input[_builtins.int] max_age: Specifies the allowable elapsed time in seconds since the last time
1246
+ the user was actively authenticated with the OIDC provider.
1247
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1248
+ The value should not contain leading or trailing forward slashes.
1249
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1250
+ *Available only for Vault Enterprise*.
1251
+ :param pulumi.Input[_builtins.int] not_before_leeway: The amount of leeway to add to not before (`nbf`) claims to account for
1252
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
1253
+ Only applicable with "jwt" roles.
1254
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] oidc_scopes: If set, a list of OIDC scopes to be used with an OIDC role.
1255
+ The standard scope "openid" is automatically included and need not be specified.
1256
+ :param pulumi.Input[_builtins.str] role_name: The name of the role.
1257
+ :param pulumi.Input[_builtins.str] role_type: Type of role, either "oidc" (default) or "jwt".
1258
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_bound_cidrs: Specifies the blocks of IP addresses which are allowed to use the generated token
1259
+ :param pulumi.Input[_builtins.int] token_explicit_max_ttl: Generated Token's Explicit Maximum TTL in seconds
1260
+ :param pulumi.Input[_builtins.int] token_max_ttl: The maximum lifetime of the generated token
1261
+ :param pulumi.Input[_builtins.bool] token_no_default_policy: If true, the 'default' policy will not automatically be added to generated tokens
1262
+ :param pulumi.Input[_builtins.int] token_num_uses: The maximum number of times a token may be used, a value of zero means unlimited
1263
+ :param pulumi.Input[_builtins.int] token_period: Generated Token's Period
1264
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_policies: Generated Token's Policies
1265
+ :param pulumi.Input[_builtins.int] token_ttl: The initial ttl of the token to generate in seconds
1266
+ :param pulumi.Input[_builtins.str] token_type: The type of token to generate, service or batch
1267
+ :param pulumi.Input[_builtins.str] user_claim: The claim to use to uniquely identify
1268
+ the user; this will be used as the name for the Identity entity alias created
1269
+ due to a successful login.
1270
+ :param pulumi.Input[_builtins.bool] user_claim_json_pointer: Specifies if the `user_claim` value uses
1271
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
1272
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
1273
+ Requires Vault 1.11+.
1274
+ :param pulumi.Input[_builtins.bool] verbose_oidc_logging: Log received OIDC tokens and claims when debug-level
1275
+ logging is active. Not recommended in production since sensitive information may be present
1276
+ in OIDC responses.
1277
+ """
1278
+ ...
1279
+ @overload
1280
+ def __init__(__self__,
1281
+ resource_name: str,
1282
+ args: AuthBackendRoleArgs,
1283
+ opts: Optional[pulumi.ResourceOptions] = None):
1284
+ """
1285
+ Manages an JWT/OIDC auth backend role in a Vault server. See the [Vault
1286
+ documentation](https://www.vaultproject.io/docs/auth/jwt.html) for more
1287
+ information.
1288
+
1289
+ ## Example Usage
1290
+
1291
+ Role for JWT backend:
1292
+
1293
+ ```python
1294
+ import pulumi
1295
+ import pulumi_vault as vault
1296
+
1297
+ jwt = vault.jwt.AuthBackend("jwt", path="jwt")
1298
+ example = vault.jwt.AuthBackendRole("example",
1299
+ backend=jwt.path,
1300
+ role_name="test-role",
1301
+ token_policies=[
1302
+ "default",
1303
+ "dev",
1304
+ "prod",
1305
+ ],
1306
+ bound_audiences=["https://myco.test"],
1307
+ bound_claims={
1308
+ "color": "red,green,blue",
1309
+ },
1310
+ user_claim="https://vault/user",
1311
+ role_type="jwt")
1312
+ ```
1313
+
1314
+ Role for OIDC backend:
1315
+
1316
+ ```python
1317
+ import pulumi
1318
+ import pulumi_vault as vault
1319
+
1320
+ oidc = vault.jwt.AuthBackend("oidc",
1321
+ path="oidc",
1322
+ default_role="test-role")
1323
+ example = vault.jwt.AuthBackendRole("example",
1324
+ backend=oidc.path,
1325
+ role_name="test-role",
1326
+ token_policies=[
1327
+ "default",
1328
+ "dev",
1329
+ "prod",
1330
+ ],
1331
+ user_claim="https://vault/user",
1332
+ role_type="oidc",
1333
+ allowed_redirect_uris=["http://localhost:8200/ui/vault/auth/oidc/oidc/callback"])
1334
+ ```
1335
+
1336
+ ## Import
1337
+
1338
+ JWT authentication backend roles can be imported using the `path`, e.g.
1339
+
1340
+ ```sh
1341
+ $ pulumi import vault:jwt/authBackendRole:AuthBackendRole example auth/jwt/role/test-role
1342
+ ```
1343
+
1344
+ :param str resource_name: The name of the resource.
1345
+ :param AuthBackendRoleArgs args: The arguments to use to populate this resource's properties.
1346
+ :param pulumi.ResourceOptions opts: Options for the resource.
1347
+ """
1348
+ ...
1349
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1350
+ resource_args, opts = _utilities.get_resource_args_opts(AuthBackendRoleArgs, pulumi.ResourceOptions, *args, **kwargs)
1351
+ if resource_args is not None:
1352
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1353
+ else:
1354
+ __self__._internal_init(resource_name, *args, **kwargs)
1355
+
1356
+ def _internal_init(__self__,
1357
+ resource_name: str,
1358
+ opts: Optional[pulumi.ResourceOptions] = None,
1359
+ alias_metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1360
+ allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1361
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
1362
+ bound_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1363
+ bound_claims: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1364
+ bound_claims_type: Optional[pulumi.Input[_builtins.str]] = None,
1365
+ bound_subject: Optional[pulumi.Input[_builtins.str]] = None,
1366
+ claim_mappings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1367
+ clock_skew_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1368
+ disable_bound_claims_parsing: Optional[pulumi.Input[_builtins.bool]] = None,
1369
+ expiration_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1370
+ groups_claim: Optional[pulumi.Input[_builtins.str]] = None,
1371
+ max_age: Optional[pulumi.Input[_builtins.int]] = None,
1372
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1373
+ not_before_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1374
+ oidc_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1375
+ role_name: Optional[pulumi.Input[_builtins.str]] = None,
1376
+ role_type: Optional[pulumi.Input[_builtins.str]] = None,
1377
+ token_bound_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1378
+ token_explicit_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1379
+ token_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1380
+ token_no_default_policy: Optional[pulumi.Input[_builtins.bool]] = None,
1381
+ token_num_uses: Optional[pulumi.Input[_builtins.int]] = None,
1382
+ token_period: Optional[pulumi.Input[_builtins.int]] = None,
1383
+ token_policies: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1384
+ token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1385
+ token_type: Optional[pulumi.Input[_builtins.str]] = None,
1386
+ user_claim: Optional[pulumi.Input[_builtins.str]] = None,
1387
+ user_claim_json_pointer: Optional[pulumi.Input[_builtins.bool]] = None,
1388
+ verbose_oidc_logging: Optional[pulumi.Input[_builtins.bool]] = None,
1389
+ __props__=None):
1390
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1391
+ if not isinstance(opts, pulumi.ResourceOptions):
1392
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1393
+ if opts.id is None:
1394
+ if __props__ is not None:
1395
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1396
+ __props__ = AuthBackendRoleArgs.__new__(AuthBackendRoleArgs)
1397
+
1398
+ __props__.__dict__["alias_metadata"] = alias_metadata
1399
+ __props__.__dict__["allowed_redirect_uris"] = allowed_redirect_uris
1400
+ __props__.__dict__["backend"] = backend
1401
+ __props__.__dict__["bound_audiences"] = bound_audiences
1402
+ __props__.__dict__["bound_claims"] = bound_claims
1403
+ __props__.__dict__["bound_claims_type"] = bound_claims_type
1404
+ __props__.__dict__["bound_subject"] = bound_subject
1405
+ __props__.__dict__["claim_mappings"] = claim_mappings
1406
+ __props__.__dict__["clock_skew_leeway"] = clock_skew_leeway
1407
+ __props__.__dict__["disable_bound_claims_parsing"] = disable_bound_claims_parsing
1408
+ __props__.__dict__["expiration_leeway"] = expiration_leeway
1409
+ __props__.__dict__["groups_claim"] = groups_claim
1410
+ __props__.__dict__["max_age"] = max_age
1411
+ __props__.__dict__["namespace"] = namespace
1412
+ __props__.__dict__["not_before_leeway"] = not_before_leeway
1413
+ __props__.__dict__["oidc_scopes"] = oidc_scopes
1414
+ if role_name is None and not opts.urn:
1415
+ raise TypeError("Missing required property 'role_name'")
1416
+ __props__.__dict__["role_name"] = role_name
1417
+ __props__.__dict__["role_type"] = role_type
1418
+ __props__.__dict__["token_bound_cidrs"] = token_bound_cidrs
1419
+ __props__.__dict__["token_explicit_max_ttl"] = token_explicit_max_ttl
1420
+ __props__.__dict__["token_max_ttl"] = token_max_ttl
1421
+ __props__.__dict__["token_no_default_policy"] = token_no_default_policy
1422
+ __props__.__dict__["token_num_uses"] = token_num_uses
1423
+ __props__.__dict__["token_period"] = token_period
1424
+ __props__.__dict__["token_policies"] = token_policies
1425
+ __props__.__dict__["token_ttl"] = token_ttl
1426
+ __props__.__dict__["token_type"] = token_type
1427
+ if user_claim is None and not opts.urn:
1428
+ raise TypeError("Missing required property 'user_claim'")
1429
+ __props__.__dict__["user_claim"] = user_claim
1430
+ __props__.__dict__["user_claim_json_pointer"] = user_claim_json_pointer
1431
+ __props__.__dict__["verbose_oidc_logging"] = verbose_oidc_logging
1432
+ super(AuthBackendRole, __self__).__init__(
1433
+ 'vault:jwt/authBackendRole:AuthBackendRole',
1434
+ resource_name,
1435
+ __props__,
1436
+ opts)
1437
+
1438
+ @staticmethod
1439
+ def get(resource_name: str,
1440
+ id: pulumi.Input[str],
1441
+ opts: Optional[pulumi.ResourceOptions] = None,
1442
+ alias_metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1443
+ allowed_redirect_uris: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1444
+ backend: Optional[pulumi.Input[_builtins.str]] = None,
1445
+ bound_audiences: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1446
+ bound_claims: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1447
+ bound_claims_type: Optional[pulumi.Input[_builtins.str]] = None,
1448
+ bound_subject: Optional[pulumi.Input[_builtins.str]] = None,
1449
+ claim_mappings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1450
+ clock_skew_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1451
+ disable_bound_claims_parsing: Optional[pulumi.Input[_builtins.bool]] = None,
1452
+ expiration_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1453
+ groups_claim: Optional[pulumi.Input[_builtins.str]] = None,
1454
+ max_age: Optional[pulumi.Input[_builtins.int]] = None,
1455
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
1456
+ not_before_leeway: Optional[pulumi.Input[_builtins.int]] = None,
1457
+ oidc_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1458
+ role_name: Optional[pulumi.Input[_builtins.str]] = None,
1459
+ role_type: Optional[pulumi.Input[_builtins.str]] = None,
1460
+ token_bound_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1461
+ token_explicit_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1462
+ token_max_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1463
+ token_no_default_policy: Optional[pulumi.Input[_builtins.bool]] = None,
1464
+ token_num_uses: Optional[pulumi.Input[_builtins.int]] = None,
1465
+ token_period: Optional[pulumi.Input[_builtins.int]] = None,
1466
+ token_policies: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1467
+ token_ttl: Optional[pulumi.Input[_builtins.int]] = None,
1468
+ token_type: Optional[pulumi.Input[_builtins.str]] = None,
1469
+ user_claim: Optional[pulumi.Input[_builtins.str]] = None,
1470
+ user_claim_json_pointer: Optional[pulumi.Input[_builtins.bool]] = None,
1471
+ verbose_oidc_logging: Optional[pulumi.Input[_builtins.bool]] = None) -> 'AuthBackendRole':
1472
+ """
1473
+ Get an existing AuthBackendRole resource's state with the given name, id, and optional extra
1474
+ properties used to qualify the lookup.
1475
+
1476
+ :param str resource_name: The unique name of the resulting resource.
1477
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1478
+ :param pulumi.ResourceOptions opts: Options for the resource.
1479
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] alias_metadata: The metadata to be tied to generated entity alias.
1480
+ This should be a list or map containing the metadata in key value pairs.
1481
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] allowed_redirect_uris: The list of allowed values for redirect_uri during OIDC logins.
1482
+ Required for OIDC roles
1483
+ :param pulumi.Input[_builtins.str] backend: The unique name of the auth backend to configure.
1484
+ Defaults to `jwt`.
1485
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] bound_audiences: (Required for roles of type `jwt`, optional for roles of
1486
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
1487
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] bound_claims: If set, a map of claims to values to match against.
1488
+ A claim's value must be a string, which may contain one value or multiple
1489
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
1490
+ :param pulumi.Input[_builtins.str] bound_claims_type: How to interpret values in the claims/values
1491
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
1492
+ match). Requires Vault 1.4.0 or above.
1493
+ :param pulumi.Input[_builtins.str] bound_subject: If set, requires that the `sub` claim matches
1494
+ this value.
1495
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] claim_mappings: If set, a map of claims (keys) to be copied
1496
+ to specified metadata fields (values).
1497
+ :param pulumi.Input[_builtins.int] clock_skew_leeway: The amount of leeway to add to all claims to account for clock skew, in
1498
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
1499
+ Only applicable with "jwt" roles.
1500
+ :param pulumi.Input[_builtins.bool] disable_bound_claims_parsing: Disable bound claim value parsing. Useful when values contain commas.
1501
+ :param pulumi.Input[_builtins.int] expiration_leeway: The amount of leeway to add to expiration (`exp`) claims to account for
1502
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
1503
+ Only applicable with "jwt" roles.
1504
+ :param pulumi.Input[_builtins.str] groups_claim: The claim to use to uniquely identify
1505
+ the set of groups to which the user belongs; this will be used as the names
1506
+ for the Identity group aliases created due to a successful login. The claim
1507
+ value must be a list of strings.
1508
+ :param pulumi.Input[_builtins.int] max_age: Specifies the allowable elapsed time in seconds since the last time
1509
+ the user was actively authenticated with the OIDC provider.
1510
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
1511
+ The value should not contain leading or trailing forward slashes.
1512
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1513
+ *Available only for Vault Enterprise*.
1514
+ :param pulumi.Input[_builtins.int] not_before_leeway: The amount of leeway to add to not before (`nbf`) claims to account for
1515
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
1516
+ Only applicable with "jwt" roles.
1517
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] oidc_scopes: If set, a list of OIDC scopes to be used with an OIDC role.
1518
+ The standard scope "openid" is automatically included and need not be specified.
1519
+ :param pulumi.Input[_builtins.str] role_name: The name of the role.
1520
+ :param pulumi.Input[_builtins.str] role_type: Type of role, either "oidc" (default) or "jwt".
1521
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_bound_cidrs: Specifies the blocks of IP addresses which are allowed to use the generated token
1522
+ :param pulumi.Input[_builtins.int] token_explicit_max_ttl: Generated Token's Explicit Maximum TTL in seconds
1523
+ :param pulumi.Input[_builtins.int] token_max_ttl: The maximum lifetime of the generated token
1524
+ :param pulumi.Input[_builtins.bool] token_no_default_policy: If true, the 'default' policy will not automatically be added to generated tokens
1525
+ :param pulumi.Input[_builtins.int] token_num_uses: The maximum number of times a token may be used, a value of zero means unlimited
1526
+ :param pulumi.Input[_builtins.int] token_period: Generated Token's Period
1527
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] token_policies: Generated Token's Policies
1528
+ :param pulumi.Input[_builtins.int] token_ttl: The initial ttl of the token to generate in seconds
1529
+ :param pulumi.Input[_builtins.str] token_type: The type of token to generate, service or batch
1530
+ :param pulumi.Input[_builtins.str] user_claim: The claim to use to uniquely identify
1531
+ the user; this will be used as the name for the Identity entity alias created
1532
+ due to a successful login.
1533
+ :param pulumi.Input[_builtins.bool] user_claim_json_pointer: Specifies if the `user_claim` value uses
1534
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
1535
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
1536
+ Requires Vault 1.11+.
1537
+ :param pulumi.Input[_builtins.bool] verbose_oidc_logging: Log received OIDC tokens and claims when debug-level
1538
+ logging is active. Not recommended in production since sensitive information may be present
1539
+ in OIDC responses.
1540
+ """
1541
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1542
+
1543
+ __props__ = _AuthBackendRoleState.__new__(_AuthBackendRoleState)
1544
+
1545
+ __props__.__dict__["alias_metadata"] = alias_metadata
1546
+ __props__.__dict__["allowed_redirect_uris"] = allowed_redirect_uris
1547
+ __props__.__dict__["backend"] = backend
1548
+ __props__.__dict__["bound_audiences"] = bound_audiences
1549
+ __props__.__dict__["bound_claims"] = bound_claims
1550
+ __props__.__dict__["bound_claims_type"] = bound_claims_type
1551
+ __props__.__dict__["bound_subject"] = bound_subject
1552
+ __props__.__dict__["claim_mappings"] = claim_mappings
1553
+ __props__.__dict__["clock_skew_leeway"] = clock_skew_leeway
1554
+ __props__.__dict__["disable_bound_claims_parsing"] = disable_bound_claims_parsing
1555
+ __props__.__dict__["expiration_leeway"] = expiration_leeway
1556
+ __props__.__dict__["groups_claim"] = groups_claim
1557
+ __props__.__dict__["max_age"] = max_age
1558
+ __props__.__dict__["namespace"] = namespace
1559
+ __props__.__dict__["not_before_leeway"] = not_before_leeway
1560
+ __props__.__dict__["oidc_scopes"] = oidc_scopes
1561
+ __props__.__dict__["role_name"] = role_name
1562
+ __props__.__dict__["role_type"] = role_type
1563
+ __props__.__dict__["token_bound_cidrs"] = token_bound_cidrs
1564
+ __props__.__dict__["token_explicit_max_ttl"] = token_explicit_max_ttl
1565
+ __props__.__dict__["token_max_ttl"] = token_max_ttl
1566
+ __props__.__dict__["token_no_default_policy"] = token_no_default_policy
1567
+ __props__.__dict__["token_num_uses"] = token_num_uses
1568
+ __props__.__dict__["token_period"] = token_period
1569
+ __props__.__dict__["token_policies"] = token_policies
1570
+ __props__.__dict__["token_ttl"] = token_ttl
1571
+ __props__.__dict__["token_type"] = token_type
1572
+ __props__.__dict__["user_claim"] = user_claim
1573
+ __props__.__dict__["user_claim_json_pointer"] = user_claim_json_pointer
1574
+ __props__.__dict__["verbose_oidc_logging"] = verbose_oidc_logging
1575
+ return AuthBackendRole(resource_name, opts=opts, __props__=__props__)
1576
+
1577
+ @_builtins.property
1578
+ @pulumi.getter(name="aliasMetadata")
1579
+ def alias_metadata(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1580
+ """
1581
+ The metadata to be tied to generated entity alias.
1582
+ This should be a list or map containing the metadata in key value pairs.
1583
+ """
1584
+ return pulumi.get(self, "alias_metadata")
1585
+
1586
+ @_builtins.property
1587
+ @pulumi.getter(name="allowedRedirectUris")
1588
+ def allowed_redirect_uris(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1589
+ """
1590
+ The list of allowed values for redirect_uri during OIDC logins.
1591
+ Required for OIDC roles
1592
+ """
1593
+ return pulumi.get(self, "allowed_redirect_uris")
1594
+
1595
+ @_builtins.property
1596
+ @pulumi.getter
1597
+ def backend(self) -> pulumi.Output[Optional[_builtins.str]]:
1598
+ """
1599
+ The unique name of the auth backend to configure.
1600
+ Defaults to `jwt`.
1601
+ """
1602
+ return pulumi.get(self, "backend")
1603
+
1604
+ @_builtins.property
1605
+ @pulumi.getter(name="boundAudiences")
1606
+ def bound_audiences(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1607
+ """
1608
+ (Required for roles of type `jwt`, optional for roles of
1609
+ type `oidc`) List of `aud` claims to match against. Any match is sufficient.
1610
+ """
1611
+ return pulumi.get(self, "bound_audiences")
1612
+
1613
+ @_builtins.property
1614
+ @pulumi.getter(name="boundClaims")
1615
+ def bound_claims(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1616
+ """
1617
+ If set, a map of claims to values to match against.
1618
+ A claim's value must be a string, which may contain one value or multiple
1619
+ comma-separated values, e.g. `"red"` or `"red,green,blue"`.
1620
+ """
1621
+ return pulumi.get(self, "bound_claims")
1622
+
1623
+ @_builtins.property
1624
+ @pulumi.getter(name="boundClaimsType")
1625
+ def bound_claims_type(self) -> pulumi.Output[_builtins.str]:
1626
+ """
1627
+ How to interpret values in the claims/values
1628
+ map (`bound_claims`): can be either `string` (exact match) or `glob` (wildcard
1629
+ match). Requires Vault 1.4.0 or above.
1630
+ """
1631
+ return pulumi.get(self, "bound_claims_type")
1632
+
1633
+ @_builtins.property
1634
+ @pulumi.getter(name="boundSubject")
1635
+ def bound_subject(self) -> pulumi.Output[Optional[_builtins.str]]:
1636
+ """
1637
+ If set, requires that the `sub` claim matches
1638
+ this value.
1639
+ """
1640
+ return pulumi.get(self, "bound_subject")
1641
+
1642
+ @_builtins.property
1643
+ @pulumi.getter(name="claimMappings")
1644
+ def claim_mappings(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1645
+ """
1646
+ If set, a map of claims (keys) to be copied
1647
+ to specified metadata fields (values).
1648
+ """
1649
+ return pulumi.get(self, "claim_mappings")
1650
+
1651
+ @_builtins.property
1652
+ @pulumi.getter(name="clockSkewLeeway")
1653
+ def clock_skew_leeway(self) -> pulumi.Output[Optional[_builtins.int]]:
1654
+ """
1655
+ The amount of leeway to add to all claims to account for clock skew, in
1656
+ seconds. Defaults to `60` seconds if set to `0` and can be disabled if set to `-1`.
1657
+ Only applicable with "jwt" roles.
1658
+ """
1659
+ return pulumi.get(self, "clock_skew_leeway")
1660
+
1661
+ @_builtins.property
1662
+ @pulumi.getter(name="disableBoundClaimsParsing")
1663
+ def disable_bound_claims_parsing(self) -> pulumi.Output[Optional[_builtins.bool]]:
1664
+ """
1665
+ Disable bound claim value parsing. Useful when values contain commas.
1666
+ """
1667
+ return pulumi.get(self, "disable_bound_claims_parsing")
1668
+
1669
+ @_builtins.property
1670
+ @pulumi.getter(name="expirationLeeway")
1671
+ def expiration_leeway(self) -> pulumi.Output[Optional[_builtins.int]]:
1672
+ """
1673
+ The amount of leeway to add to expiration (`exp`) claims to account for
1674
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
1675
+ Only applicable with "jwt" roles.
1676
+ """
1677
+ return pulumi.get(self, "expiration_leeway")
1678
+
1679
+ @_builtins.property
1680
+ @pulumi.getter(name="groupsClaim")
1681
+ def groups_claim(self) -> pulumi.Output[Optional[_builtins.str]]:
1682
+ """
1683
+ The claim to use to uniquely identify
1684
+ the set of groups to which the user belongs; this will be used as the names
1685
+ for the Identity group aliases created due to a successful login. The claim
1686
+ value must be a list of strings.
1687
+ """
1688
+ return pulumi.get(self, "groups_claim")
1689
+
1690
+ @_builtins.property
1691
+ @pulumi.getter(name="maxAge")
1692
+ def max_age(self) -> pulumi.Output[Optional[_builtins.int]]:
1693
+ """
1694
+ Specifies the allowable elapsed time in seconds since the last time
1695
+ the user was actively authenticated with the OIDC provider.
1696
+ """
1697
+ return pulumi.get(self, "max_age")
1698
+
1699
+ @_builtins.property
1700
+ @pulumi.getter
1701
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
1702
+ """
1703
+ The namespace to provision the resource in.
1704
+ The value should not contain leading or trailing forward slashes.
1705
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
1706
+ *Available only for Vault Enterprise*.
1707
+ """
1708
+ return pulumi.get(self, "namespace")
1709
+
1710
+ @_builtins.property
1711
+ @pulumi.getter(name="notBeforeLeeway")
1712
+ def not_before_leeway(self) -> pulumi.Output[Optional[_builtins.int]]:
1713
+ """
1714
+ The amount of leeway to add to not before (`nbf`) claims to account for
1715
+ clock skew, in seconds. Defaults to `150` seconds if set to `0` and can be disabled if set to `-1`.
1716
+ Only applicable with "jwt" roles.
1717
+ """
1718
+ return pulumi.get(self, "not_before_leeway")
1719
+
1720
+ @_builtins.property
1721
+ @pulumi.getter(name="oidcScopes")
1722
+ def oidc_scopes(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1723
+ """
1724
+ If set, a list of OIDC scopes to be used with an OIDC role.
1725
+ The standard scope "openid" is automatically included and need not be specified.
1726
+ """
1727
+ return pulumi.get(self, "oidc_scopes")
1728
+
1729
+ @_builtins.property
1730
+ @pulumi.getter(name="roleName")
1731
+ def role_name(self) -> pulumi.Output[_builtins.str]:
1732
+ """
1733
+ The name of the role.
1734
+ """
1735
+ return pulumi.get(self, "role_name")
1736
+
1737
+ @_builtins.property
1738
+ @pulumi.getter(name="roleType")
1739
+ def role_type(self) -> pulumi.Output[_builtins.str]:
1740
+ """
1741
+ Type of role, either "oidc" (default) or "jwt".
1742
+ """
1743
+ return pulumi.get(self, "role_type")
1744
+
1745
+ @_builtins.property
1746
+ @pulumi.getter(name="tokenBoundCidrs")
1747
+ def token_bound_cidrs(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1748
+ """
1749
+ Specifies the blocks of IP addresses which are allowed to use the generated token
1750
+ """
1751
+ return pulumi.get(self, "token_bound_cidrs")
1752
+
1753
+ @_builtins.property
1754
+ @pulumi.getter(name="tokenExplicitMaxTtl")
1755
+ def token_explicit_max_ttl(self) -> pulumi.Output[Optional[_builtins.int]]:
1756
+ """
1757
+ Generated Token's Explicit Maximum TTL in seconds
1758
+ """
1759
+ return pulumi.get(self, "token_explicit_max_ttl")
1760
+
1761
+ @_builtins.property
1762
+ @pulumi.getter(name="tokenMaxTtl")
1763
+ def token_max_ttl(self) -> pulumi.Output[Optional[_builtins.int]]:
1764
+ """
1765
+ The maximum lifetime of the generated token
1766
+ """
1767
+ return pulumi.get(self, "token_max_ttl")
1768
+
1769
+ @_builtins.property
1770
+ @pulumi.getter(name="tokenNoDefaultPolicy")
1771
+ def token_no_default_policy(self) -> pulumi.Output[Optional[_builtins.bool]]:
1772
+ """
1773
+ If true, the 'default' policy will not automatically be added to generated tokens
1774
+ """
1775
+ return pulumi.get(self, "token_no_default_policy")
1776
+
1777
+ @_builtins.property
1778
+ @pulumi.getter(name="tokenNumUses")
1779
+ def token_num_uses(self) -> pulumi.Output[Optional[_builtins.int]]:
1780
+ """
1781
+ The maximum number of times a token may be used, a value of zero means unlimited
1782
+ """
1783
+ return pulumi.get(self, "token_num_uses")
1784
+
1785
+ @_builtins.property
1786
+ @pulumi.getter(name="tokenPeriod")
1787
+ def token_period(self) -> pulumi.Output[Optional[_builtins.int]]:
1788
+ """
1789
+ Generated Token's Period
1790
+ """
1791
+ return pulumi.get(self, "token_period")
1792
+
1793
+ @_builtins.property
1794
+ @pulumi.getter(name="tokenPolicies")
1795
+ def token_policies(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1796
+ """
1797
+ Generated Token's Policies
1798
+ """
1799
+ return pulumi.get(self, "token_policies")
1800
+
1801
+ @_builtins.property
1802
+ @pulumi.getter(name="tokenTtl")
1803
+ def token_ttl(self) -> pulumi.Output[Optional[_builtins.int]]:
1804
+ """
1805
+ The initial ttl of the token to generate in seconds
1806
+ """
1807
+ return pulumi.get(self, "token_ttl")
1808
+
1809
+ @_builtins.property
1810
+ @pulumi.getter(name="tokenType")
1811
+ def token_type(self) -> pulumi.Output[Optional[_builtins.str]]:
1812
+ """
1813
+ The type of token to generate, service or batch
1814
+ """
1815
+ return pulumi.get(self, "token_type")
1816
+
1817
+ @_builtins.property
1818
+ @pulumi.getter(name="userClaim")
1819
+ def user_claim(self) -> pulumi.Output[_builtins.str]:
1820
+ """
1821
+ The claim to use to uniquely identify
1822
+ the user; this will be used as the name for the Identity entity alias created
1823
+ due to a successful login.
1824
+ """
1825
+ return pulumi.get(self, "user_claim")
1826
+
1827
+ @_builtins.property
1828
+ @pulumi.getter(name="userClaimJsonPointer")
1829
+ def user_claim_json_pointer(self) -> pulumi.Output[Optional[_builtins.bool]]:
1830
+ """
1831
+ Specifies if the `user_claim` value uses
1832
+ [JSON pointer](https://www.vaultproject.io/docs/auth/jwt#claim-specifications-and-json-pointer)
1833
+ syntax for referencing claims. By default, the `user_claim` value will not use JSON pointer.
1834
+ Requires Vault 1.11+.
1835
+ """
1836
+ return pulumi.get(self, "user_claim_json_pointer")
1837
+
1838
+ @_builtins.property
1839
+ @pulumi.getter(name="verboseOidcLogging")
1840
+ def verbose_oidc_logging(self) -> pulumi.Output[Optional[_builtins.bool]]:
1841
+ """
1842
+ Log received OIDC tokens and claims when debug-level
1843
+ logging is active. Not recommended in production since sensitive information may be present
1844
+ in OIDC responses.
1845
+ """
1846
+ return pulumi.get(self, "verbose_oidc_logging")
1847
+