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,623 @@
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__ = ['MfaOktaArgs', 'MfaOkta']
18
+
19
+ @pulumi.input_type
20
+ class MfaOktaArgs:
21
+ def __init__(__self__, *,
22
+ api_token: pulumi.Input[_builtins.str],
23
+ mount_accessor: pulumi.Input[_builtins.str],
24
+ org_name: pulumi.Input[_builtins.str],
25
+ base_url: Optional[pulumi.Input[_builtins.str]] = None,
26
+ name: Optional[pulumi.Input[_builtins.str]] = None,
27
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
28
+ primary_email: Optional[pulumi.Input[_builtins.bool]] = None,
29
+ username_format: Optional[pulumi.Input[_builtins.str]] = None):
30
+ """
31
+ The set of arguments for constructing a MfaOkta resource.
32
+ :param pulumi.Input[_builtins.str] api_token: `(string: <required>)` - Okta API key.
33
+ :param pulumi.Input[_builtins.str] mount_accessor: `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
34
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
35
+ :param pulumi.Input[_builtins.str] org_name: `(string: <required>)` - Name of the organization to be used in the Okta API.
36
+ :param pulumi.Input[_builtins.str] base_url: `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
37
+ `oktapreview.com`, and `okta-emea.com`.
38
+ :param pulumi.Input[_builtins.str] name: `(string: <required>)` – Name of the MFA method.
39
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
40
+ The value should not contain leading or trailing forward slashes.
41
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
42
+ *Available only for Vault Enterprise*.
43
+ :param pulumi.Input[_builtins.bool] primary_email: `(string: <required>)` - If set to true, the username will only match the
44
+ primary email for the account.
45
+ :param pulumi.Input[_builtins.str] username_format: `(string)` - A format string for mapping Identity names to MFA method names.
46
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
47
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
48
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
49
+ - entity.name: The name configured for the Entity
50
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
51
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
52
+ """
53
+ pulumi.set(__self__, "api_token", api_token)
54
+ pulumi.set(__self__, "mount_accessor", mount_accessor)
55
+ pulumi.set(__self__, "org_name", org_name)
56
+ if base_url is not None:
57
+ pulumi.set(__self__, "base_url", base_url)
58
+ if name is not None:
59
+ pulumi.set(__self__, "name", name)
60
+ if namespace is not None:
61
+ pulumi.set(__self__, "namespace", namespace)
62
+ if primary_email is not None:
63
+ pulumi.set(__self__, "primary_email", primary_email)
64
+ if username_format is not None:
65
+ pulumi.set(__self__, "username_format", username_format)
66
+
67
+ @_builtins.property
68
+ @pulumi.getter(name="apiToken")
69
+ def api_token(self) -> pulumi.Input[_builtins.str]:
70
+ """
71
+ `(string: <required>)` - Okta API key.
72
+ """
73
+ return pulumi.get(self, "api_token")
74
+
75
+ @api_token.setter
76
+ def api_token(self, value: pulumi.Input[_builtins.str]):
77
+ pulumi.set(self, "api_token", value)
78
+
79
+ @_builtins.property
80
+ @pulumi.getter(name="mountAccessor")
81
+ def mount_accessor(self) -> pulumi.Input[_builtins.str]:
82
+ """
83
+ `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
84
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
85
+ """
86
+ return pulumi.get(self, "mount_accessor")
87
+
88
+ @mount_accessor.setter
89
+ def mount_accessor(self, value: pulumi.Input[_builtins.str]):
90
+ pulumi.set(self, "mount_accessor", value)
91
+
92
+ @_builtins.property
93
+ @pulumi.getter(name="orgName")
94
+ def org_name(self) -> pulumi.Input[_builtins.str]:
95
+ """
96
+ `(string: <required>)` - Name of the organization to be used in the Okta API.
97
+ """
98
+ return pulumi.get(self, "org_name")
99
+
100
+ @org_name.setter
101
+ def org_name(self, value: pulumi.Input[_builtins.str]):
102
+ pulumi.set(self, "org_name", value)
103
+
104
+ @_builtins.property
105
+ @pulumi.getter(name="baseUrl")
106
+ def base_url(self) -> Optional[pulumi.Input[_builtins.str]]:
107
+ """
108
+ `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
109
+ `oktapreview.com`, and `okta-emea.com`.
110
+ """
111
+ return pulumi.get(self, "base_url")
112
+
113
+ @base_url.setter
114
+ def base_url(self, value: Optional[pulumi.Input[_builtins.str]]):
115
+ pulumi.set(self, "base_url", value)
116
+
117
+ @_builtins.property
118
+ @pulumi.getter
119
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
120
+ """
121
+ `(string: <required>)` – Name of the MFA method.
122
+ """
123
+ return pulumi.get(self, "name")
124
+
125
+ @name.setter
126
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
127
+ pulumi.set(self, "name", value)
128
+
129
+ @_builtins.property
130
+ @pulumi.getter
131
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
132
+ """
133
+ The namespace to provision the resource in.
134
+ The value should not contain leading or trailing forward slashes.
135
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
136
+ *Available only for Vault Enterprise*.
137
+ """
138
+ return pulumi.get(self, "namespace")
139
+
140
+ @namespace.setter
141
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
142
+ pulumi.set(self, "namespace", value)
143
+
144
+ @_builtins.property
145
+ @pulumi.getter(name="primaryEmail")
146
+ def primary_email(self) -> Optional[pulumi.Input[_builtins.bool]]:
147
+ """
148
+ `(string: <required>)` - If set to true, the username will only match the
149
+ primary email for the account.
150
+ """
151
+ return pulumi.get(self, "primary_email")
152
+
153
+ @primary_email.setter
154
+ def primary_email(self, value: Optional[pulumi.Input[_builtins.bool]]):
155
+ pulumi.set(self, "primary_email", value)
156
+
157
+ @_builtins.property
158
+ @pulumi.getter(name="usernameFormat")
159
+ def username_format(self) -> Optional[pulumi.Input[_builtins.str]]:
160
+ """
161
+ `(string)` - A format string for mapping Identity names to MFA method names.
162
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
163
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
164
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
165
+ - entity.name: The name configured for the Entity
166
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
167
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
168
+ """
169
+ return pulumi.get(self, "username_format")
170
+
171
+ @username_format.setter
172
+ def username_format(self, value: Optional[pulumi.Input[_builtins.str]]):
173
+ pulumi.set(self, "username_format", value)
174
+
175
+
176
+ @pulumi.input_type
177
+ class _MfaOktaState:
178
+ def __init__(__self__, *,
179
+ api_token: Optional[pulumi.Input[_builtins.str]] = None,
180
+ base_url: Optional[pulumi.Input[_builtins.str]] = None,
181
+ mount_accessor: Optional[pulumi.Input[_builtins.str]] = None,
182
+ name: Optional[pulumi.Input[_builtins.str]] = None,
183
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
184
+ org_name: Optional[pulumi.Input[_builtins.str]] = None,
185
+ primary_email: Optional[pulumi.Input[_builtins.bool]] = None,
186
+ username_format: Optional[pulumi.Input[_builtins.str]] = None):
187
+ """
188
+ Input properties used for looking up and filtering MfaOkta resources.
189
+ :param pulumi.Input[_builtins.str] api_token: `(string: <required>)` - Okta API key.
190
+ :param pulumi.Input[_builtins.str] base_url: `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
191
+ `oktapreview.com`, and `okta-emea.com`.
192
+ :param pulumi.Input[_builtins.str] mount_accessor: `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
193
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
194
+ :param pulumi.Input[_builtins.str] name: `(string: <required>)` – Name of the MFA method.
195
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
196
+ The value should not contain leading or trailing forward slashes.
197
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
198
+ *Available only for Vault Enterprise*.
199
+ :param pulumi.Input[_builtins.str] org_name: `(string: <required>)` - Name of the organization to be used in the Okta API.
200
+ :param pulumi.Input[_builtins.bool] primary_email: `(string: <required>)` - If set to true, the username will only match the
201
+ primary email for the account.
202
+ :param pulumi.Input[_builtins.str] username_format: `(string)` - A format string for mapping Identity names to MFA method names.
203
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
204
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
205
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
206
+ - entity.name: The name configured for the Entity
207
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
208
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
209
+ """
210
+ if api_token is not None:
211
+ pulumi.set(__self__, "api_token", api_token)
212
+ if base_url is not None:
213
+ pulumi.set(__self__, "base_url", base_url)
214
+ if mount_accessor is not None:
215
+ pulumi.set(__self__, "mount_accessor", mount_accessor)
216
+ if name is not None:
217
+ pulumi.set(__self__, "name", name)
218
+ if namespace is not None:
219
+ pulumi.set(__self__, "namespace", namespace)
220
+ if org_name is not None:
221
+ pulumi.set(__self__, "org_name", org_name)
222
+ if primary_email is not None:
223
+ pulumi.set(__self__, "primary_email", primary_email)
224
+ if username_format is not None:
225
+ pulumi.set(__self__, "username_format", username_format)
226
+
227
+ @_builtins.property
228
+ @pulumi.getter(name="apiToken")
229
+ def api_token(self) -> Optional[pulumi.Input[_builtins.str]]:
230
+ """
231
+ `(string: <required>)` - Okta API key.
232
+ """
233
+ return pulumi.get(self, "api_token")
234
+
235
+ @api_token.setter
236
+ def api_token(self, value: Optional[pulumi.Input[_builtins.str]]):
237
+ pulumi.set(self, "api_token", value)
238
+
239
+ @_builtins.property
240
+ @pulumi.getter(name="baseUrl")
241
+ def base_url(self) -> Optional[pulumi.Input[_builtins.str]]:
242
+ """
243
+ `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
244
+ `oktapreview.com`, and `okta-emea.com`.
245
+ """
246
+ return pulumi.get(self, "base_url")
247
+
248
+ @base_url.setter
249
+ def base_url(self, value: Optional[pulumi.Input[_builtins.str]]):
250
+ pulumi.set(self, "base_url", value)
251
+
252
+ @_builtins.property
253
+ @pulumi.getter(name="mountAccessor")
254
+ def mount_accessor(self) -> Optional[pulumi.Input[_builtins.str]]:
255
+ """
256
+ `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
257
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
258
+ """
259
+ return pulumi.get(self, "mount_accessor")
260
+
261
+ @mount_accessor.setter
262
+ def mount_accessor(self, value: Optional[pulumi.Input[_builtins.str]]):
263
+ pulumi.set(self, "mount_accessor", value)
264
+
265
+ @_builtins.property
266
+ @pulumi.getter
267
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
268
+ """
269
+ `(string: <required>)` – Name of the MFA method.
270
+ """
271
+ return pulumi.get(self, "name")
272
+
273
+ @name.setter
274
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
275
+ pulumi.set(self, "name", value)
276
+
277
+ @_builtins.property
278
+ @pulumi.getter
279
+ def namespace(self) -> Optional[pulumi.Input[_builtins.str]]:
280
+ """
281
+ The namespace to provision the resource in.
282
+ The value should not contain leading or trailing forward slashes.
283
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
284
+ *Available only for Vault Enterprise*.
285
+ """
286
+ return pulumi.get(self, "namespace")
287
+
288
+ @namespace.setter
289
+ def namespace(self, value: Optional[pulumi.Input[_builtins.str]]):
290
+ pulumi.set(self, "namespace", value)
291
+
292
+ @_builtins.property
293
+ @pulumi.getter(name="orgName")
294
+ def org_name(self) -> Optional[pulumi.Input[_builtins.str]]:
295
+ """
296
+ `(string: <required>)` - Name of the organization to be used in the Okta API.
297
+ """
298
+ return pulumi.get(self, "org_name")
299
+
300
+ @org_name.setter
301
+ def org_name(self, value: Optional[pulumi.Input[_builtins.str]]):
302
+ pulumi.set(self, "org_name", value)
303
+
304
+ @_builtins.property
305
+ @pulumi.getter(name="primaryEmail")
306
+ def primary_email(self) -> Optional[pulumi.Input[_builtins.bool]]:
307
+ """
308
+ `(string: <required>)` - If set to true, the username will only match the
309
+ primary email for the account.
310
+ """
311
+ return pulumi.get(self, "primary_email")
312
+
313
+ @primary_email.setter
314
+ def primary_email(self, value: Optional[pulumi.Input[_builtins.bool]]):
315
+ pulumi.set(self, "primary_email", value)
316
+
317
+ @_builtins.property
318
+ @pulumi.getter(name="usernameFormat")
319
+ def username_format(self) -> Optional[pulumi.Input[_builtins.str]]:
320
+ """
321
+ `(string)` - A format string for mapping Identity names to MFA method names.
322
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
323
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
324
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
325
+ - entity.name: The name configured for the Entity
326
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
327
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
328
+ """
329
+ return pulumi.get(self, "username_format")
330
+
331
+ @username_format.setter
332
+ def username_format(self, value: Optional[pulumi.Input[_builtins.str]]):
333
+ pulumi.set(self, "username_format", value)
334
+
335
+
336
+ @pulumi.type_token("vault:index/mfaOkta:MfaOkta")
337
+ class MfaOkta(pulumi.CustomResource):
338
+ @overload
339
+ def __init__(__self__,
340
+ resource_name: str,
341
+ opts: Optional[pulumi.ResourceOptions] = None,
342
+ api_token: Optional[pulumi.Input[_builtins.str]] = None,
343
+ base_url: Optional[pulumi.Input[_builtins.str]] = None,
344
+ mount_accessor: Optional[pulumi.Input[_builtins.str]] = None,
345
+ name: Optional[pulumi.Input[_builtins.str]] = None,
346
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
347
+ org_name: Optional[pulumi.Input[_builtins.str]] = None,
348
+ primary_email: Optional[pulumi.Input[_builtins.bool]] = None,
349
+ username_format: Optional[pulumi.Input[_builtins.str]] = None,
350
+ __props__=None):
351
+ """
352
+ Provides a resource to manage [Okta MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-okta).
353
+
354
+ **Note** this feature is available only with Vault Enterprise.
355
+
356
+ ## Example Usage
357
+
358
+ ```python
359
+ import pulumi
360
+ import pulumi_vault as vault
361
+
362
+ userpass = vault.AuthBackend("userpass",
363
+ type="userpass",
364
+ path="userpass")
365
+ my_okta = vault.MfaOkta("my_okta",
366
+ name="my_okta",
367
+ mount_accessor=userpass.accessor,
368
+ username_format="user@example.com",
369
+ org_name="hashicorp",
370
+ api_token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9")
371
+ ```
372
+
373
+ ## Import
374
+
375
+ Mounts can be imported using the `path`, e.g.
376
+
377
+ ```sh
378
+ $ pulumi import vault:index/mfaOkta:MfaOkta my_okta my_okta
379
+ ```
380
+
381
+ :param str resource_name: The name of the resource.
382
+ :param pulumi.ResourceOptions opts: Options for the resource.
383
+ :param pulumi.Input[_builtins.str] api_token: `(string: <required>)` - Okta API key.
384
+ :param pulumi.Input[_builtins.str] base_url: `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
385
+ `oktapreview.com`, and `okta-emea.com`.
386
+ :param pulumi.Input[_builtins.str] mount_accessor: `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
387
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
388
+ :param pulumi.Input[_builtins.str] name: `(string: <required>)` – Name of the MFA method.
389
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
390
+ The value should not contain leading or trailing forward slashes.
391
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
392
+ *Available only for Vault Enterprise*.
393
+ :param pulumi.Input[_builtins.str] org_name: `(string: <required>)` - Name of the organization to be used in the Okta API.
394
+ :param pulumi.Input[_builtins.bool] primary_email: `(string: <required>)` - If set to true, the username will only match the
395
+ primary email for the account.
396
+ :param pulumi.Input[_builtins.str] username_format: `(string)` - A format string for mapping Identity names to MFA method names.
397
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
398
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
399
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
400
+ - entity.name: The name configured for the Entity
401
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
402
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
403
+ """
404
+ ...
405
+ @overload
406
+ def __init__(__self__,
407
+ resource_name: str,
408
+ args: MfaOktaArgs,
409
+ opts: Optional[pulumi.ResourceOptions] = None):
410
+ """
411
+ Provides a resource to manage [Okta MFA](https://www.vaultproject.io/docs/enterprise/mfa/mfa-okta).
412
+
413
+ **Note** this feature is available only with Vault Enterprise.
414
+
415
+ ## Example Usage
416
+
417
+ ```python
418
+ import pulumi
419
+ import pulumi_vault as vault
420
+
421
+ userpass = vault.AuthBackend("userpass",
422
+ type="userpass",
423
+ path="userpass")
424
+ my_okta = vault.MfaOkta("my_okta",
425
+ name="my_okta",
426
+ mount_accessor=userpass.accessor,
427
+ username_format="user@example.com",
428
+ org_name="hashicorp",
429
+ api_token="eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9")
430
+ ```
431
+
432
+ ## Import
433
+
434
+ Mounts can be imported using the `path`, e.g.
435
+
436
+ ```sh
437
+ $ pulumi import vault:index/mfaOkta:MfaOkta my_okta my_okta
438
+ ```
439
+
440
+ :param str resource_name: The name of the resource.
441
+ :param MfaOktaArgs args: The arguments to use to populate this resource's properties.
442
+ :param pulumi.ResourceOptions opts: Options for the resource.
443
+ """
444
+ ...
445
+ def __init__(__self__, resource_name: str, *args, **kwargs):
446
+ resource_args, opts = _utilities.get_resource_args_opts(MfaOktaArgs, pulumi.ResourceOptions, *args, **kwargs)
447
+ if resource_args is not None:
448
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
449
+ else:
450
+ __self__._internal_init(resource_name, *args, **kwargs)
451
+
452
+ def _internal_init(__self__,
453
+ resource_name: str,
454
+ opts: Optional[pulumi.ResourceOptions] = None,
455
+ api_token: Optional[pulumi.Input[_builtins.str]] = None,
456
+ base_url: Optional[pulumi.Input[_builtins.str]] = None,
457
+ mount_accessor: Optional[pulumi.Input[_builtins.str]] = None,
458
+ name: Optional[pulumi.Input[_builtins.str]] = None,
459
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
460
+ org_name: Optional[pulumi.Input[_builtins.str]] = None,
461
+ primary_email: Optional[pulumi.Input[_builtins.bool]] = None,
462
+ username_format: Optional[pulumi.Input[_builtins.str]] = None,
463
+ __props__=None):
464
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
465
+ if not isinstance(opts, pulumi.ResourceOptions):
466
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
467
+ if opts.id is None:
468
+ if __props__ is not None:
469
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
470
+ __props__ = MfaOktaArgs.__new__(MfaOktaArgs)
471
+
472
+ if api_token is None and not opts.urn:
473
+ raise TypeError("Missing required property 'api_token'")
474
+ __props__.__dict__["api_token"] = None if api_token is None else pulumi.Output.secret(api_token)
475
+ __props__.__dict__["base_url"] = base_url
476
+ if mount_accessor is None and not opts.urn:
477
+ raise TypeError("Missing required property 'mount_accessor'")
478
+ __props__.__dict__["mount_accessor"] = mount_accessor
479
+ __props__.__dict__["name"] = name
480
+ __props__.__dict__["namespace"] = namespace
481
+ if org_name is None and not opts.urn:
482
+ raise TypeError("Missing required property 'org_name'")
483
+ __props__.__dict__["org_name"] = org_name
484
+ __props__.__dict__["primary_email"] = primary_email
485
+ __props__.__dict__["username_format"] = username_format
486
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiToken"])
487
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
488
+ super(MfaOkta, __self__).__init__(
489
+ 'vault:index/mfaOkta:MfaOkta',
490
+ resource_name,
491
+ __props__,
492
+ opts)
493
+
494
+ @staticmethod
495
+ def get(resource_name: str,
496
+ id: pulumi.Input[str],
497
+ opts: Optional[pulumi.ResourceOptions] = None,
498
+ api_token: Optional[pulumi.Input[_builtins.str]] = None,
499
+ base_url: Optional[pulumi.Input[_builtins.str]] = None,
500
+ mount_accessor: Optional[pulumi.Input[_builtins.str]] = None,
501
+ name: Optional[pulumi.Input[_builtins.str]] = None,
502
+ namespace: Optional[pulumi.Input[_builtins.str]] = None,
503
+ org_name: Optional[pulumi.Input[_builtins.str]] = None,
504
+ primary_email: Optional[pulumi.Input[_builtins.bool]] = None,
505
+ username_format: Optional[pulumi.Input[_builtins.str]] = None) -> 'MfaOkta':
506
+ """
507
+ Get an existing MfaOkta resource's state with the given name, id, and optional extra
508
+ properties used to qualify the lookup.
509
+
510
+ :param str resource_name: The unique name of the resulting resource.
511
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
512
+ :param pulumi.ResourceOptions opts: Options for the resource.
513
+ :param pulumi.Input[_builtins.str] api_token: `(string: <required>)` - Okta API key.
514
+ :param pulumi.Input[_builtins.str] base_url: `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
515
+ `oktapreview.com`, and `okta-emea.com`.
516
+ :param pulumi.Input[_builtins.str] mount_accessor: `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
517
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
518
+ :param pulumi.Input[_builtins.str] name: `(string: <required>)` – Name of the MFA method.
519
+ :param pulumi.Input[_builtins.str] namespace: The namespace to provision the resource in.
520
+ The value should not contain leading or trailing forward slashes.
521
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
522
+ *Available only for Vault Enterprise*.
523
+ :param pulumi.Input[_builtins.str] org_name: `(string: <required>)` - Name of the organization to be used in the Okta API.
524
+ :param pulumi.Input[_builtins.bool] primary_email: `(string: <required>)` - If set to true, the username will only match the
525
+ primary email for the account.
526
+ :param pulumi.Input[_builtins.str] username_format: `(string)` - A format string for mapping Identity names to MFA method names.
527
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
528
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
529
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
530
+ - entity.name: The name configured for the Entity
531
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
532
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
533
+ """
534
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
535
+
536
+ __props__ = _MfaOktaState.__new__(_MfaOktaState)
537
+
538
+ __props__.__dict__["api_token"] = api_token
539
+ __props__.__dict__["base_url"] = base_url
540
+ __props__.__dict__["mount_accessor"] = mount_accessor
541
+ __props__.__dict__["name"] = name
542
+ __props__.__dict__["namespace"] = namespace
543
+ __props__.__dict__["org_name"] = org_name
544
+ __props__.__dict__["primary_email"] = primary_email
545
+ __props__.__dict__["username_format"] = username_format
546
+ return MfaOkta(resource_name, opts=opts, __props__=__props__)
547
+
548
+ @_builtins.property
549
+ @pulumi.getter(name="apiToken")
550
+ def api_token(self) -> pulumi.Output[_builtins.str]:
551
+ """
552
+ `(string: <required>)` - Okta API key.
553
+ """
554
+ return pulumi.get(self, "api_token")
555
+
556
+ @_builtins.property
557
+ @pulumi.getter(name="baseUrl")
558
+ def base_url(self) -> pulumi.Output[Optional[_builtins.str]]:
559
+ """
560
+ `(string)` - If set, will be used as the base domain for API requests. Examples are `okta.com`,
561
+ `oktapreview.com`, and `okta-emea.com`.
562
+ """
563
+ return pulumi.get(self, "base_url")
564
+
565
+ @_builtins.property
566
+ @pulumi.getter(name="mountAccessor")
567
+ def mount_accessor(self) -> pulumi.Output[_builtins.str]:
568
+ """
569
+ `(string: <required>)` - The mount to tie this method to for use in automatic mappings.
570
+ The mapping will use the Name field of Aliases associated with this mount as the username in the mapping.
571
+ """
572
+ return pulumi.get(self, "mount_accessor")
573
+
574
+ @_builtins.property
575
+ @pulumi.getter
576
+ def name(self) -> pulumi.Output[_builtins.str]:
577
+ """
578
+ `(string: <required>)` – Name of the MFA method.
579
+ """
580
+ return pulumi.get(self, "name")
581
+
582
+ @_builtins.property
583
+ @pulumi.getter
584
+ def namespace(self) -> pulumi.Output[Optional[_builtins.str]]:
585
+ """
586
+ The namespace to provision the resource in.
587
+ The value should not contain leading or trailing forward slashes.
588
+ The `namespace` is always relative to the provider's configured [namespace](https://www.terraform.io/docs/providers/vault/index.html#namespace).
589
+ *Available only for Vault Enterprise*.
590
+ """
591
+ return pulumi.get(self, "namespace")
592
+
593
+ @_builtins.property
594
+ @pulumi.getter(name="orgName")
595
+ def org_name(self) -> pulumi.Output[_builtins.str]:
596
+ """
597
+ `(string: <required>)` - Name of the organization to be used in the Okta API.
598
+ """
599
+ return pulumi.get(self, "org_name")
600
+
601
+ @_builtins.property
602
+ @pulumi.getter(name="primaryEmail")
603
+ def primary_email(self) -> pulumi.Output[Optional[_builtins.bool]]:
604
+ """
605
+ `(string: <required>)` - If set to true, the username will only match the
606
+ primary email for the account.
607
+ """
608
+ return pulumi.get(self, "primary_email")
609
+
610
+ @_builtins.property
611
+ @pulumi.getter(name="usernameFormat")
612
+ def username_format(self) -> pulumi.Output[Optional[_builtins.str]]:
613
+ """
614
+ `(string)` - A format string for mapping Identity names to MFA method names.
615
+ Values to substitute should be placed in `{{}}`. For example, `"{{alias.name}}@example.com"`.
616
+ If blank, the Alias's Name field will be used as-is. Currently-supported mappings:
617
+ - alias.name: The name returned by the mount configured via the `mount_accessor` parameter
618
+ - entity.name: The name configured for the Entity
619
+ - alias.metadata.`<key>`: The value of the Alias's metadata parameter
620
+ - entity.metadata.`<key>`: The value of the Entity's metadata parameter
621
+ """
622
+ return pulumi.get(self, "username_format")
623
+