pulumi-snowflake 0.56.0a1721200104__py3-none-any.whl → 0.56.0a1721667766__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 (62) hide show
  1. pulumi_snowflake/__init__.py +66 -217
  2. pulumi_snowflake/_inputs.py +10145 -1557
  3. pulumi_snowflake/_utilities.py +3 -4
  4. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +688 -0
  5. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +641 -0
  6. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +676 -0
  7. pulumi_snowflake/cortex_search_service.py +563 -0
  8. pulumi_snowflake/database.py +854 -232
  9. pulumi_snowflake/database_old.py +556 -0
  10. pulumi_snowflake/external_oauth_integration.py +562 -534
  11. pulumi_snowflake/failover_group.py +2 -2
  12. pulumi_snowflake/get_cortex_search_services.py +197 -0
  13. pulumi_snowflake/get_databases.py +71 -62
  14. pulumi_snowflake/get_security_integrations.py +122 -0
  15. pulumi_snowflake/get_warehouses.py +66 -18
  16. pulumi_snowflake/grant_privileges_to_database_role.py +0 -4
  17. pulumi_snowflake/managed_account.py +7 -7
  18. pulumi_snowflake/oauth_integration.py +4 -0
  19. pulumi_snowflake/oauth_integration_for_custom_clients.py +936 -0
  20. pulumi_snowflake/oauth_integration_for_partner_applications.py +580 -0
  21. pulumi_snowflake/outputs.py +12987 -2857
  22. pulumi_snowflake/pulumi-plugin.json +1 -1
  23. pulumi_snowflake/saml2_integration.py +971 -0
  24. pulumi_snowflake/saml_integration.py +4 -0
  25. pulumi_snowflake/scim_integration.py +255 -105
  26. pulumi_snowflake/secondary_database.py +1059 -0
  27. pulumi_snowflake/sequence.py +6 -6
  28. pulumi_snowflake/shared_database.py +914 -0
  29. pulumi_snowflake/tag_association.py +38 -38
  30. pulumi_snowflake/user_password_policy_attachment.py +32 -0
  31. pulumi_snowflake/warehouse.py +143 -120
  32. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/METADATA +1 -1
  33. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/RECORD +35 -50
  34. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/WHEEL +1 -1
  35. pulumi_snowflake/account_grant.py +0 -319
  36. pulumi_snowflake/database_grant.py +0 -471
  37. pulumi_snowflake/external_table_grant.py +0 -666
  38. pulumi_snowflake/failover_group_grant.py +0 -368
  39. pulumi_snowflake/file_format_grant.py +0 -611
  40. pulumi_snowflake/function_grant.py +0 -721
  41. pulumi_snowflake/grant_privileges_to_role.py +0 -821
  42. pulumi_snowflake/integration_grant.py +0 -416
  43. pulumi_snowflake/masking_policy_grant.py +0 -518
  44. pulumi_snowflake/materialized_view_grant.py +0 -665
  45. pulumi_snowflake/pipe_grant.py +0 -563
  46. pulumi_snowflake/procedure_grant.py +0 -721
  47. pulumi_snowflake/resource_monitor_grant.py +0 -363
  48. pulumi_snowflake/role_grants.py +0 -340
  49. pulumi_snowflake/role_ownership_grant.py +0 -329
  50. pulumi_snowflake/row_access_policy_grant.py +0 -516
  51. pulumi_snowflake/schema_grant.py +0 -603
  52. pulumi_snowflake/sequence_grant.py +0 -611
  53. pulumi_snowflake/stage_grant.py +0 -611
  54. pulumi_snowflake/stream_grant.py +0 -611
  55. pulumi_snowflake/table_grant.py +0 -653
  56. pulumi_snowflake/tag_grant.py +0 -508
  57. pulumi_snowflake/task_grant.py +0 -611
  58. pulumi_snowflake/user_grant.py +0 -370
  59. pulumi_snowflake/user_ownership_grant.py +0 -275
  60. pulumi_snowflake/view_grant.py +0 -685
  61. pulumi_snowflake/warehouse_grant.py +0 -416
  62. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,971 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['Saml2IntegrationArgs', 'Saml2Integration']
15
+
16
+ @pulumi.input_type
17
+ class Saml2IntegrationArgs:
18
+ def __init__(__self__, *,
19
+ saml2_issuer: pulumi.Input[str],
20
+ saml2_provider: pulumi.Input[str],
21
+ saml2_sso_url: pulumi.Input[str],
22
+ saml2_x509_cert: pulumi.Input[str],
23
+ allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
24
+ allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
25
+ comment: Optional[pulumi.Input[str]] = None,
26
+ enabled: Optional[pulumi.Input[str]] = None,
27
+ name: Optional[pulumi.Input[str]] = None,
28
+ saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
29
+ saml2_force_authn: Optional[pulumi.Input[str]] = None,
30
+ saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
31
+ saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
32
+ saml2_sign_request: Optional[pulumi.Input[str]] = None,
33
+ saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
34
+ saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
35
+ saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None):
36
+ """
37
+ The set of arguments for constructing a Saml2Integration resource.
38
+ :param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
39
+ :param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
40
+ :param pulumi.Input[str] saml2_sso_url: The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
41
+ :param pulumi.Input[str] saml2_x509_cert: The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
42
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_email_patterns: A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
43
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_user_domains: A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
44
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
45
+ :param pulumi.Input[str] enabled: Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
46
+ :param pulumi.Input[str] name: Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
47
+ :param pulumi.Input[str] saml2_enable_sp_initiated: The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
48
+ :param pulumi.Input[str] saml2_force_authn: The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
49
+ :param pulumi.Input[str] saml2_post_logout_redirect_url: The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
50
+ :param pulumi.Input[str] saml2_requested_nameid_format: The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
51
+ :param pulumi.Input[str] saml2_sign_request: The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
52
+ :param pulumi.Input[str] saml2_snowflake_acs_url: The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
53
+ :param pulumi.Input[str] saml2_snowflake_issuer_url: The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
54
+ :param pulumi.Input[str] saml2_sp_initiated_login_page_label: The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
55
+ """
56
+ pulumi.set(__self__, "saml2_issuer", saml2_issuer)
57
+ pulumi.set(__self__, "saml2_provider", saml2_provider)
58
+ pulumi.set(__self__, "saml2_sso_url", saml2_sso_url)
59
+ pulumi.set(__self__, "saml2_x509_cert", saml2_x509_cert)
60
+ if allowed_email_patterns is not None:
61
+ pulumi.set(__self__, "allowed_email_patterns", allowed_email_patterns)
62
+ if allowed_user_domains is not None:
63
+ pulumi.set(__self__, "allowed_user_domains", allowed_user_domains)
64
+ if comment is not None:
65
+ pulumi.set(__self__, "comment", comment)
66
+ if enabled is not None:
67
+ pulumi.set(__self__, "enabled", enabled)
68
+ if name is not None:
69
+ pulumi.set(__self__, "name", name)
70
+ if saml2_enable_sp_initiated is not None:
71
+ pulumi.set(__self__, "saml2_enable_sp_initiated", saml2_enable_sp_initiated)
72
+ if saml2_force_authn is not None:
73
+ pulumi.set(__self__, "saml2_force_authn", saml2_force_authn)
74
+ if saml2_post_logout_redirect_url is not None:
75
+ pulumi.set(__self__, "saml2_post_logout_redirect_url", saml2_post_logout_redirect_url)
76
+ if saml2_requested_nameid_format is not None:
77
+ pulumi.set(__self__, "saml2_requested_nameid_format", saml2_requested_nameid_format)
78
+ if saml2_sign_request is not None:
79
+ pulumi.set(__self__, "saml2_sign_request", saml2_sign_request)
80
+ if saml2_snowflake_acs_url is not None:
81
+ pulumi.set(__self__, "saml2_snowflake_acs_url", saml2_snowflake_acs_url)
82
+ if saml2_snowflake_issuer_url is not None:
83
+ pulumi.set(__self__, "saml2_snowflake_issuer_url", saml2_snowflake_issuer_url)
84
+ if saml2_sp_initiated_login_page_label is not None:
85
+ pulumi.set(__self__, "saml2_sp_initiated_login_page_label", saml2_sp_initiated_login_page_label)
86
+
87
+ @property
88
+ @pulumi.getter(name="saml2Issuer")
89
+ def saml2_issuer(self) -> pulumi.Input[str]:
90
+ """
91
+ The string containing the IdP EntityID / Issuer.
92
+ """
93
+ return pulumi.get(self, "saml2_issuer")
94
+
95
+ @saml2_issuer.setter
96
+ def saml2_issuer(self, value: pulumi.Input[str]):
97
+ pulumi.set(self, "saml2_issuer", value)
98
+
99
+ @property
100
+ @pulumi.getter(name="saml2Provider")
101
+ def saml2_provider(self) -> pulumi.Input[str]:
102
+ """
103
+ The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
104
+ """
105
+ return pulumi.get(self, "saml2_provider")
106
+
107
+ @saml2_provider.setter
108
+ def saml2_provider(self, value: pulumi.Input[str]):
109
+ pulumi.set(self, "saml2_provider", value)
110
+
111
+ @property
112
+ @pulumi.getter(name="saml2SsoUrl")
113
+ def saml2_sso_url(self) -> pulumi.Input[str]:
114
+ """
115
+ The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
116
+ """
117
+ return pulumi.get(self, "saml2_sso_url")
118
+
119
+ @saml2_sso_url.setter
120
+ def saml2_sso_url(self, value: pulumi.Input[str]):
121
+ pulumi.set(self, "saml2_sso_url", value)
122
+
123
+ @property
124
+ @pulumi.getter(name="saml2X509Cert")
125
+ def saml2_x509_cert(self) -> pulumi.Input[str]:
126
+ """
127
+ The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
128
+ """
129
+ return pulumi.get(self, "saml2_x509_cert")
130
+
131
+ @saml2_x509_cert.setter
132
+ def saml2_x509_cert(self, value: pulumi.Input[str]):
133
+ pulumi.set(self, "saml2_x509_cert", value)
134
+
135
+ @property
136
+ @pulumi.getter(name="allowedEmailPatterns")
137
+ def allowed_email_patterns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
138
+ """
139
+ A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
140
+ """
141
+ return pulumi.get(self, "allowed_email_patterns")
142
+
143
+ @allowed_email_patterns.setter
144
+ def allowed_email_patterns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
145
+ pulumi.set(self, "allowed_email_patterns", value)
146
+
147
+ @property
148
+ @pulumi.getter(name="allowedUserDomains")
149
+ def allowed_user_domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
150
+ """
151
+ A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
152
+ """
153
+ return pulumi.get(self, "allowed_user_domains")
154
+
155
+ @allowed_user_domains.setter
156
+ def allowed_user_domains(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
157
+ pulumi.set(self, "allowed_user_domains", value)
158
+
159
+ @property
160
+ @pulumi.getter
161
+ def comment(self) -> Optional[pulumi.Input[str]]:
162
+ """
163
+ Specifies a comment for the integration.
164
+ """
165
+ return pulumi.get(self, "comment")
166
+
167
+ @comment.setter
168
+ def comment(self, value: Optional[pulumi.Input[str]]):
169
+ pulumi.set(self, "comment", value)
170
+
171
+ @property
172
+ @pulumi.getter
173
+ def enabled(self) -> Optional[pulumi.Input[str]]:
174
+ """
175
+ Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
176
+ """
177
+ return pulumi.get(self, "enabled")
178
+
179
+ @enabled.setter
180
+ def enabled(self, value: Optional[pulumi.Input[str]]):
181
+ pulumi.set(self, "enabled", value)
182
+
183
+ @property
184
+ @pulumi.getter
185
+ def name(self) -> Optional[pulumi.Input[str]]:
186
+ """
187
+ Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
188
+ """
189
+ return pulumi.get(self, "name")
190
+
191
+ @name.setter
192
+ def name(self, value: Optional[pulumi.Input[str]]):
193
+ pulumi.set(self, "name", value)
194
+
195
+ @property
196
+ @pulumi.getter(name="saml2EnableSpInitiated")
197
+ def saml2_enable_sp_initiated(self) -> Optional[pulumi.Input[str]]:
198
+ """
199
+ The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
200
+ """
201
+ return pulumi.get(self, "saml2_enable_sp_initiated")
202
+
203
+ @saml2_enable_sp_initiated.setter
204
+ def saml2_enable_sp_initiated(self, value: Optional[pulumi.Input[str]]):
205
+ pulumi.set(self, "saml2_enable_sp_initiated", value)
206
+
207
+ @property
208
+ @pulumi.getter(name="saml2ForceAuthn")
209
+ def saml2_force_authn(self) -> Optional[pulumi.Input[str]]:
210
+ """
211
+ The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
212
+ """
213
+ return pulumi.get(self, "saml2_force_authn")
214
+
215
+ @saml2_force_authn.setter
216
+ def saml2_force_authn(self, value: Optional[pulumi.Input[str]]):
217
+ pulumi.set(self, "saml2_force_authn", value)
218
+
219
+ @property
220
+ @pulumi.getter(name="saml2PostLogoutRedirectUrl")
221
+ def saml2_post_logout_redirect_url(self) -> Optional[pulumi.Input[str]]:
222
+ """
223
+ The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
224
+ """
225
+ return pulumi.get(self, "saml2_post_logout_redirect_url")
226
+
227
+ @saml2_post_logout_redirect_url.setter
228
+ def saml2_post_logout_redirect_url(self, value: Optional[pulumi.Input[str]]):
229
+ pulumi.set(self, "saml2_post_logout_redirect_url", value)
230
+
231
+ @property
232
+ @pulumi.getter(name="saml2RequestedNameidFormat")
233
+ def saml2_requested_nameid_format(self) -> Optional[pulumi.Input[str]]:
234
+ """
235
+ The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
236
+ """
237
+ return pulumi.get(self, "saml2_requested_nameid_format")
238
+
239
+ @saml2_requested_nameid_format.setter
240
+ def saml2_requested_nameid_format(self, value: Optional[pulumi.Input[str]]):
241
+ pulumi.set(self, "saml2_requested_nameid_format", value)
242
+
243
+ @property
244
+ @pulumi.getter(name="saml2SignRequest")
245
+ def saml2_sign_request(self) -> Optional[pulumi.Input[str]]:
246
+ """
247
+ The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
248
+ """
249
+ return pulumi.get(self, "saml2_sign_request")
250
+
251
+ @saml2_sign_request.setter
252
+ def saml2_sign_request(self, value: Optional[pulumi.Input[str]]):
253
+ pulumi.set(self, "saml2_sign_request", value)
254
+
255
+ @property
256
+ @pulumi.getter(name="saml2SnowflakeAcsUrl")
257
+ def saml2_snowflake_acs_url(self) -> Optional[pulumi.Input[str]]:
258
+ """
259
+ The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
260
+ """
261
+ return pulumi.get(self, "saml2_snowflake_acs_url")
262
+
263
+ @saml2_snowflake_acs_url.setter
264
+ def saml2_snowflake_acs_url(self, value: Optional[pulumi.Input[str]]):
265
+ pulumi.set(self, "saml2_snowflake_acs_url", value)
266
+
267
+ @property
268
+ @pulumi.getter(name="saml2SnowflakeIssuerUrl")
269
+ def saml2_snowflake_issuer_url(self) -> Optional[pulumi.Input[str]]:
270
+ """
271
+ The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
272
+ """
273
+ return pulumi.get(self, "saml2_snowflake_issuer_url")
274
+
275
+ @saml2_snowflake_issuer_url.setter
276
+ def saml2_snowflake_issuer_url(self, value: Optional[pulumi.Input[str]]):
277
+ pulumi.set(self, "saml2_snowflake_issuer_url", value)
278
+
279
+ @property
280
+ @pulumi.getter(name="saml2SpInitiatedLoginPageLabel")
281
+ def saml2_sp_initiated_login_page_label(self) -> Optional[pulumi.Input[str]]:
282
+ """
283
+ The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
284
+ """
285
+ return pulumi.get(self, "saml2_sp_initiated_login_page_label")
286
+
287
+ @saml2_sp_initiated_login_page_label.setter
288
+ def saml2_sp_initiated_login_page_label(self, value: Optional[pulumi.Input[str]]):
289
+ pulumi.set(self, "saml2_sp_initiated_login_page_label", value)
290
+
291
+
292
+ @pulumi.input_type
293
+ class _Saml2IntegrationState:
294
+ def __init__(__self__, *,
295
+ allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
296
+ allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
297
+ comment: Optional[pulumi.Input[str]] = None,
298
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]]] = None,
299
+ enabled: Optional[pulumi.Input[str]] = None,
300
+ name: Optional[pulumi.Input[str]] = None,
301
+ saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
302
+ saml2_force_authn: Optional[pulumi.Input[str]] = None,
303
+ saml2_issuer: Optional[pulumi.Input[str]] = None,
304
+ saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
305
+ saml2_provider: Optional[pulumi.Input[str]] = None,
306
+ saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
307
+ saml2_sign_request: Optional[pulumi.Input[str]] = None,
308
+ saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
309
+ saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
310
+ saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
311
+ saml2_sso_url: Optional[pulumi.Input[str]] = None,
312
+ saml2_x509_cert: Optional[pulumi.Input[str]] = None,
313
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]]] = None):
314
+ """
315
+ Input properties used for looking up and filtering Saml2Integration resources.
316
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_email_patterns: A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
317
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_user_domains: A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
318
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
319
+ :param pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
320
+ :param pulumi.Input[str] enabled: Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
321
+ :param pulumi.Input[str] name: Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
322
+ :param pulumi.Input[str] saml2_enable_sp_initiated: The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
323
+ :param pulumi.Input[str] saml2_force_authn: The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
324
+ :param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
325
+ :param pulumi.Input[str] saml2_post_logout_redirect_url: The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
326
+ :param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
327
+ :param pulumi.Input[str] saml2_requested_nameid_format: The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
328
+ :param pulumi.Input[str] saml2_sign_request: The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
329
+ :param pulumi.Input[str] saml2_snowflake_acs_url: The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
330
+ :param pulumi.Input[str] saml2_snowflake_issuer_url: The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
331
+ :param pulumi.Input[str] saml2_sp_initiated_login_page_label: The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
332
+ :param pulumi.Input[str] saml2_sso_url: The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
333
+ :param pulumi.Input[str] saml2_x509_cert: The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
334
+ :param pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
335
+ """
336
+ if allowed_email_patterns is not None:
337
+ pulumi.set(__self__, "allowed_email_patterns", allowed_email_patterns)
338
+ if allowed_user_domains is not None:
339
+ pulumi.set(__self__, "allowed_user_domains", allowed_user_domains)
340
+ if comment is not None:
341
+ pulumi.set(__self__, "comment", comment)
342
+ if describe_outputs is not None:
343
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
344
+ if enabled is not None:
345
+ pulumi.set(__self__, "enabled", enabled)
346
+ if name is not None:
347
+ pulumi.set(__self__, "name", name)
348
+ if saml2_enable_sp_initiated is not None:
349
+ pulumi.set(__self__, "saml2_enable_sp_initiated", saml2_enable_sp_initiated)
350
+ if saml2_force_authn is not None:
351
+ pulumi.set(__self__, "saml2_force_authn", saml2_force_authn)
352
+ if saml2_issuer is not None:
353
+ pulumi.set(__self__, "saml2_issuer", saml2_issuer)
354
+ if saml2_post_logout_redirect_url is not None:
355
+ pulumi.set(__self__, "saml2_post_logout_redirect_url", saml2_post_logout_redirect_url)
356
+ if saml2_provider is not None:
357
+ pulumi.set(__self__, "saml2_provider", saml2_provider)
358
+ if saml2_requested_nameid_format is not None:
359
+ pulumi.set(__self__, "saml2_requested_nameid_format", saml2_requested_nameid_format)
360
+ if saml2_sign_request is not None:
361
+ pulumi.set(__self__, "saml2_sign_request", saml2_sign_request)
362
+ if saml2_snowflake_acs_url is not None:
363
+ pulumi.set(__self__, "saml2_snowflake_acs_url", saml2_snowflake_acs_url)
364
+ if saml2_snowflake_issuer_url is not None:
365
+ pulumi.set(__self__, "saml2_snowflake_issuer_url", saml2_snowflake_issuer_url)
366
+ if saml2_sp_initiated_login_page_label is not None:
367
+ pulumi.set(__self__, "saml2_sp_initiated_login_page_label", saml2_sp_initiated_login_page_label)
368
+ if saml2_sso_url is not None:
369
+ pulumi.set(__self__, "saml2_sso_url", saml2_sso_url)
370
+ if saml2_x509_cert is not None:
371
+ pulumi.set(__self__, "saml2_x509_cert", saml2_x509_cert)
372
+ if show_outputs is not None:
373
+ pulumi.set(__self__, "show_outputs", show_outputs)
374
+
375
+ @property
376
+ @pulumi.getter(name="allowedEmailPatterns")
377
+ def allowed_email_patterns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
378
+ """
379
+ A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
380
+ """
381
+ return pulumi.get(self, "allowed_email_patterns")
382
+
383
+ @allowed_email_patterns.setter
384
+ def allowed_email_patterns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
385
+ pulumi.set(self, "allowed_email_patterns", value)
386
+
387
+ @property
388
+ @pulumi.getter(name="allowedUserDomains")
389
+ def allowed_user_domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
390
+ """
391
+ A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
392
+ """
393
+ return pulumi.get(self, "allowed_user_domains")
394
+
395
+ @allowed_user_domains.setter
396
+ def allowed_user_domains(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
397
+ pulumi.set(self, "allowed_user_domains", value)
398
+
399
+ @property
400
+ @pulumi.getter
401
+ def comment(self) -> Optional[pulumi.Input[str]]:
402
+ """
403
+ Specifies a comment for the integration.
404
+ """
405
+ return pulumi.get(self, "comment")
406
+
407
+ @comment.setter
408
+ def comment(self, value: Optional[pulumi.Input[str]]):
409
+ pulumi.set(self, "comment", value)
410
+
411
+ @property
412
+ @pulumi.getter(name="describeOutputs")
413
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]]]:
414
+ """
415
+ Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
416
+ """
417
+ return pulumi.get(self, "describe_outputs")
418
+
419
+ @describe_outputs.setter
420
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]]]):
421
+ pulumi.set(self, "describe_outputs", value)
422
+
423
+ @property
424
+ @pulumi.getter
425
+ def enabled(self) -> Optional[pulumi.Input[str]]:
426
+ """
427
+ Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
428
+ """
429
+ return pulumi.get(self, "enabled")
430
+
431
+ @enabled.setter
432
+ def enabled(self, value: Optional[pulumi.Input[str]]):
433
+ pulumi.set(self, "enabled", value)
434
+
435
+ @property
436
+ @pulumi.getter
437
+ def name(self) -> Optional[pulumi.Input[str]]:
438
+ """
439
+ Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
440
+ """
441
+ return pulumi.get(self, "name")
442
+
443
+ @name.setter
444
+ def name(self, value: Optional[pulumi.Input[str]]):
445
+ pulumi.set(self, "name", value)
446
+
447
+ @property
448
+ @pulumi.getter(name="saml2EnableSpInitiated")
449
+ def saml2_enable_sp_initiated(self) -> Optional[pulumi.Input[str]]:
450
+ """
451
+ The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
452
+ """
453
+ return pulumi.get(self, "saml2_enable_sp_initiated")
454
+
455
+ @saml2_enable_sp_initiated.setter
456
+ def saml2_enable_sp_initiated(self, value: Optional[pulumi.Input[str]]):
457
+ pulumi.set(self, "saml2_enable_sp_initiated", value)
458
+
459
+ @property
460
+ @pulumi.getter(name="saml2ForceAuthn")
461
+ def saml2_force_authn(self) -> Optional[pulumi.Input[str]]:
462
+ """
463
+ The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
464
+ """
465
+ return pulumi.get(self, "saml2_force_authn")
466
+
467
+ @saml2_force_authn.setter
468
+ def saml2_force_authn(self, value: Optional[pulumi.Input[str]]):
469
+ pulumi.set(self, "saml2_force_authn", value)
470
+
471
+ @property
472
+ @pulumi.getter(name="saml2Issuer")
473
+ def saml2_issuer(self) -> Optional[pulumi.Input[str]]:
474
+ """
475
+ The string containing the IdP EntityID / Issuer.
476
+ """
477
+ return pulumi.get(self, "saml2_issuer")
478
+
479
+ @saml2_issuer.setter
480
+ def saml2_issuer(self, value: Optional[pulumi.Input[str]]):
481
+ pulumi.set(self, "saml2_issuer", value)
482
+
483
+ @property
484
+ @pulumi.getter(name="saml2PostLogoutRedirectUrl")
485
+ def saml2_post_logout_redirect_url(self) -> Optional[pulumi.Input[str]]:
486
+ """
487
+ The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
488
+ """
489
+ return pulumi.get(self, "saml2_post_logout_redirect_url")
490
+
491
+ @saml2_post_logout_redirect_url.setter
492
+ def saml2_post_logout_redirect_url(self, value: Optional[pulumi.Input[str]]):
493
+ pulumi.set(self, "saml2_post_logout_redirect_url", value)
494
+
495
+ @property
496
+ @pulumi.getter(name="saml2Provider")
497
+ def saml2_provider(self) -> Optional[pulumi.Input[str]]:
498
+ """
499
+ The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
500
+ """
501
+ return pulumi.get(self, "saml2_provider")
502
+
503
+ @saml2_provider.setter
504
+ def saml2_provider(self, value: Optional[pulumi.Input[str]]):
505
+ pulumi.set(self, "saml2_provider", value)
506
+
507
+ @property
508
+ @pulumi.getter(name="saml2RequestedNameidFormat")
509
+ def saml2_requested_nameid_format(self) -> Optional[pulumi.Input[str]]:
510
+ """
511
+ The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
512
+ """
513
+ return pulumi.get(self, "saml2_requested_nameid_format")
514
+
515
+ @saml2_requested_nameid_format.setter
516
+ def saml2_requested_nameid_format(self, value: Optional[pulumi.Input[str]]):
517
+ pulumi.set(self, "saml2_requested_nameid_format", value)
518
+
519
+ @property
520
+ @pulumi.getter(name="saml2SignRequest")
521
+ def saml2_sign_request(self) -> Optional[pulumi.Input[str]]:
522
+ """
523
+ The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
524
+ """
525
+ return pulumi.get(self, "saml2_sign_request")
526
+
527
+ @saml2_sign_request.setter
528
+ def saml2_sign_request(self, value: Optional[pulumi.Input[str]]):
529
+ pulumi.set(self, "saml2_sign_request", value)
530
+
531
+ @property
532
+ @pulumi.getter(name="saml2SnowflakeAcsUrl")
533
+ def saml2_snowflake_acs_url(self) -> Optional[pulumi.Input[str]]:
534
+ """
535
+ The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
536
+ """
537
+ return pulumi.get(self, "saml2_snowflake_acs_url")
538
+
539
+ @saml2_snowflake_acs_url.setter
540
+ def saml2_snowflake_acs_url(self, value: Optional[pulumi.Input[str]]):
541
+ pulumi.set(self, "saml2_snowflake_acs_url", value)
542
+
543
+ @property
544
+ @pulumi.getter(name="saml2SnowflakeIssuerUrl")
545
+ def saml2_snowflake_issuer_url(self) -> Optional[pulumi.Input[str]]:
546
+ """
547
+ The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
548
+ """
549
+ return pulumi.get(self, "saml2_snowflake_issuer_url")
550
+
551
+ @saml2_snowflake_issuer_url.setter
552
+ def saml2_snowflake_issuer_url(self, value: Optional[pulumi.Input[str]]):
553
+ pulumi.set(self, "saml2_snowflake_issuer_url", value)
554
+
555
+ @property
556
+ @pulumi.getter(name="saml2SpInitiatedLoginPageLabel")
557
+ def saml2_sp_initiated_login_page_label(self) -> Optional[pulumi.Input[str]]:
558
+ """
559
+ The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
560
+ """
561
+ return pulumi.get(self, "saml2_sp_initiated_login_page_label")
562
+
563
+ @saml2_sp_initiated_login_page_label.setter
564
+ def saml2_sp_initiated_login_page_label(self, value: Optional[pulumi.Input[str]]):
565
+ pulumi.set(self, "saml2_sp_initiated_login_page_label", value)
566
+
567
+ @property
568
+ @pulumi.getter(name="saml2SsoUrl")
569
+ def saml2_sso_url(self) -> Optional[pulumi.Input[str]]:
570
+ """
571
+ The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
572
+ """
573
+ return pulumi.get(self, "saml2_sso_url")
574
+
575
+ @saml2_sso_url.setter
576
+ def saml2_sso_url(self, value: Optional[pulumi.Input[str]]):
577
+ pulumi.set(self, "saml2_sso_url", value)
578
+
579
+ @property
580
+ @pulumi.getter(name="saml2X509Cert")
581
+ def saml2_x509_cert(self) -> Optional[pulumi.Input[str]]:
582
+ """
583
+ The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
584
+ """
585
+ return pulumi.get(self, "saml2_x509_cert")
586
+
587
+ @saml2_x509_cert.setter
588
+ def saml2_x509_cert(self, value: Optional[pulumi.Input[str]]):
589
+ pulumi.set(self, "saml2_x509_cert", value)
590
+
591
+ @property
592
+ @pulumi.getter(name="showOutputs")
593
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]]]:
594
+ """
595
+ Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
596
+ """
597
+ return pulumi.get(self, "show_outputs")
598
+
599
+ @show_outputs.setter
600
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]]]):
601
+ pulumi.set(self, "show_outputs", value)
602
+
603
+
604
+ class Saml2Integration(pulumi.CustomResource):
605
+ @overload
606
+ def __init__(__self__,
607
+ resource_name: str,
608
+ opts: Optional[pulumi.ResourceOptions] = None,
609
+ allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
610
+ allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
611
+ comment: Optional[pulumi.Input[str]] = None,
612
+ enabled: Optional[pulumi.Input[str]] = None,
613
+ name: Optional[pulumi.Input[str]] = None,
614
+ saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
615
+ saml2_force_authn: Optional[pulumi.Input[str]] = None,
616
+ saml2_issuer: Optional[pulumi.Input[str]] = None,
617
+ saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
618
+ saml2_provider: Optional[pulumi.Input[str]] = None,
619
+ saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
620
+ saml2_sign_request: Optional[pulumi.Input[str]] = None,
621
+ saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
622
+ saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
623
+ saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
624
+ saml2_sso_url: Optional[pulumi.Input[str]] = None,
625
+ saml2_x509_cert: Optional[pulumi.Input[str]] = None,
626
+ __props__=None):
627
+ """
628
+ !> **V1 release candidate** This resource was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
629
+
630
+ ## Import
631
+
632
+ ```sh
633
+ $ pulumi import snowflake:index/saml2Integration:Saml2Integration example "name"
634
+ ```
635
+
636
+ :param str resource_name: The name of the resource.
637
+ :param pulumi.ResourceOptions opts: Options for the resource.
638
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_email_patterns: A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
639
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_user_domains: A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
640
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
641
+ :param pulumi.Input[str] enabled: Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
642
+ :param pulumi.Input[str] name: Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
643
+ :param pulumi.Input[str] saml2_enable_sp_initiated: The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
644
+ :param pulumi.Input[str] saml2_force_authn: The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
645
+ :param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
646
+ :param pulumi.Input[str] saml2_post_logout_redirect_url: The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
647
+ :param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
648
+ :param pulumi.Input[str] saml2_requested_nameid_format: The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
649
+ :param pulumi.Input[str] saml2_sign_request: The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
650
+ :param pulumi.Input[str] saml2_snowflake_acs_url: The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
651
+ :param pulumi.Input[str] saml2_snowflake_issuer_url: The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
652
+ :param pulumi.Input[str] saml2_sp_initiated_login_page_label: The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
653
+ :param pulumi.Input[str] saml2_sso_url: The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
654
+ :param pulumi.Input[str] saml2_x509_cert: The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
655
+ """
656
+ ...
657
+ @overload
658
+ def __init__(__self__,
659
+ resource_name: str,
660
+ args: Saml2IntegrationArgs,
661
+ opts: Optional[pulumi.ResourceOptions] = None):
662
+ """
663
+ !> **V1 release candidate** This resource was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
664
+
665
+ ## Import
666
+
667
+ ```sh
668
+ $ pulumi import snowflake:index/saml2Integration:Saml2Integration example "name"
669
+ ```
670
+
671
+ :param str resource_name: The name of the resource.
672
+ :param Saml2IntegrationArgs args: The arguments to use to populate this resource's properties.
673
+ :param pulumi.ResourceOptions opts: Options for the resource.
674
+ """
675
+ ...
676
+ def __init__(__self__, resource_name: str, *args, **kwargs):
677
+ resource_args, opts = _utilities.get_resource_args_opts(Saml2IntegrationArgs, pulumi.ResourceOptions, *args, **kwargs)
678
+ if resource_args is not None:
679
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
680
+ else:
681
+ __self__._internal_init(resource_name, *args, **kwargs)
682
+
683
+ def _internal_init(__self__,
684
+ resource_name: str,
685
+ opts: Optional[pulumi.ResourceOptions] = None,
686
+ allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
687
+ allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
688
+ comment: Optional[pulumi.Input[str]] = None,
689
+ enabled: Optional[pulumi.Input[str]] = None,
690
+ name: Optional[pulumi.Input[str]] = None,
691
+ saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
692
+ saml2_force_authn: Optional[pulumi.Input[str]] = None,
693
+ saml2_issuer: Optional[pulumi.Input[str]] = None,
694
+ saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
695
+ saml2_provider: Optional[pulumi.Input[str]] = None,
696
+ saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
697
+ saml2_sign_request: Optional[pulumi.Input[str]] = None,
698
+ saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
699
+ saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
700
+ saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
701
+ saml2_sso_url: Optional[pulumi.Input[str]] = None,
702
+ saml2_x509_cert: Optional[pulumi.Input[str]] = None,
703
+ __props__=None):
704
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
705
+ if not isinstance(opts, pulumi.ResourceOptions):
706
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
707
+ if opts.id is None:
708
+ if __props__ is not None:
709
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
710
+ __props__ = Saml2IntegrationArgs.__new__(Saml2IntegrationArgs)
711
+
712
+ __props__.__dict__["allowed_email_patterns"] = allowed_email_patterns
713
+ __props__.__dict__["allowed_user_domains"] = allowed_user_domains
714
+ __props__.__dict__["comment"] = comment
715
+ __props__.__dict__["enabled"] = enabled
716
+ __props__.__dict__["name"] = name
717
+ __props__.__dict__["saml2_enable_sp_initiated"] = saml2_enable_sp_initiated
718
+ __props__.__dict__["saml2_force_authn"] = saml2_force_authn
719
+ if saml2_issuer is None and not opts.urn:
720
+ raise TypeError("Missing required property 'saml2_issuer'")
721
+ __props__.__dict__["saml2_issuer"] = saml2_issuer
722
+ __props__.__dict__["saml2_post_logout_redirect_url"] = saml2_post_logout_redirect_url
723
+ if saml2_provider is None and not opts.urn:
724
+ raise TypeError("Missing required property 'saml2_provider'")
725
+ __props__.__dict__["saml2_provider"] = saml2_provider
726
+ __props__.__dict__["saml2_requested_nameid_format"] = saml2_requested_nameid_format
727
+ __props__.__dict__["saml2_sign_request"] = saml2_sign_request
728
+ __props__.__dict__["saml2_snowflake_acs_url"] = saml2_snowflake_acs_url
729
+ __props__.__dict__["saml2_snowflake_issuer_url"] = saml2_snowflake_issuer_url
730
+ __props__.__dict__["saml2_sp_initiated_login_page_label"] = saml2_sp_initiated_login_page_label
731
+ if saml2_sso_url is None and not opts.urn:
732
+ raise TypeError("Missing required property 'saml2_sso_url'")
733
+ __props__.__dict__["saml2_sso_url"] = saml2_sso_url
734
+ if saml2_x509_cert is None and not opts.urn:
735
+ raise TypeError("Missing required property 'saml2_x509_cert'")
736
+ __props__.__dict__["saml2_x509_cert"] = saml2_x509_cert
737
+ __props__.__dict__["describe_outputs"] = None
738
+ __props__.__dict__["show_outputs"] = None
739
+ super(Saml2Integration, __self__).__init__(
740
+ 'snowflake:index/saml2Integration:Saml2Integration',
741
+ resource_name,
742
+ __props__,
743
+ opts)
744
+
745
+ @staticmethod
746
+ def get(resource_name: str,
747
+ id: pulumi.Input[str],
748
+ opts: Optional[pulumi.ResourceOptions] = None,
749
+ allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
750
+ allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
751
+ comment: Optional[pulumi.Input[str]] = None,
752
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['Saml2IntegrationDescribeOutputArgs']]]]] = None,
753
+ enabled: Optional[pulumi.Input[str]] = None,
754
+ name: Optional[pulumi.Input[str]] = None,
755
+ saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
756
+ saml2_force_authn: Optional[pulumi.Input[str]] = None,
757
+ saml2_issuer: Optional[pulumi.Input[str]] = None,
758
+ saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
759
+ saml2_provider: Optional[pulumi.Input[str]] = None,
760
+ saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
761
+ saml2_sign_request: Optional[pulumi.Input[str]] = None,
762
+ saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
763
+ saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
764
+ saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
765
+ saml2_sso_url: Optional[pulumi.Input[str]] = None,
766
+ saml2_x509_cert: Optional[pulumi.Input[str]] = None,
767
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['Saml2IntegrationShowOutputArgs']]]]] = None) -> 'Saml2Integration':
768
+ """
769
+ Get an existing Saml2Integration resource's state with the given name, id, and optional extra
770
+ properties used to qualify the lookup.
771
+
772
+ :param str resource_name: The unique name of the resulting resource.
773
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
774
+ :param pulumi.ResourceOptions opts: Options for the resource.
775
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_email_patterns: A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
776
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_user_domains: A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
777
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
778
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['Saml2IntegrationDescribeOutputArgs']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
779
+ :param pulumi.Input[str] enabled: Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
780
+ :param pulumi.Input[str] name: Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
781
+ :param pulumi.Input[str] saml2_enable_sp_initiated: The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
782
+ :param pulumi.Input[str] saml2_force_authn: The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
783
+ :param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
784
+ :param pulumi.Input[str] saml2_post_logout_redirect_url: The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
785
+ :param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
786
+ :param pulumi.Input[str] saml2_requested_nameid_format: The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
787
+ :param pulumi.Input[str] saml2_sign_request: The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
788
+ :param pulumi.Input[str] saml2_snowflake_acs_url: The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
789
+ :param pulumi.Input[str] saml2_snowflake_issuer_url: The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
790
+ :param pulumi.Input[str] saml2_sp_initiated_login_page_label: The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
791
+ :param pulumi.Input[str] saml2_sso_url: The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
792
+ :param pulumi.Input[str] saml2_x509_cert: The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
793
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['Saml2IntegrationShowOutputArgs']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
794
+ """
795
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
796
+
797
+ __props__ = _Saml2IntegrationState.__new__(_Saml2IntegrationState)
798
+
799
+ __props__.__dict__["allowed_email_patterns"] = allowed_email_patterns
800
+ __props__.__dict__["allowed_user_domains"] = allowed_user_domains
801
+ __props__.__dict__["comment"] = comment
802
+ __props__.__dict__["describe_outputs"] = describe_outputs
803
+ __props__.__dict__["enabled"] = enabled
804
+ __props__.__dict__["name"] = name
805
+ __props__.__dict__["saml2_enable_sp_initiated"] = saml2_enable_sp_initiated
806
+ __props__.__dict__["saml2_force_authn"] = saml2_force_authn
807
+ __props__.__dict__["saml2_issuer"] = saml2_issuer
808
+ __props__.__dict__["saml2_post_logout_redirect_url"] = saml2_post_logout_redirect_url
809
+ __props__.__dict__["saml2_provider"] = saml2_provider
810
+ __props__.__dict__["saml2_requested_nameid_format"] = saml2_requested_nameid_format
811
+ __props__.__dict__["saml2_sign_request"] = saml2_sign_request
812
+ __props__.__dict__["saml2_snowflake_acs_url"] = saml2_snowflake_acs_url
813
+ __props__.__dict__["saml2_snowflake_issuer_url"] = saml2_snowflake_issuer_url
814
+ __props__.__dict__["saml2_sp_initiated_login_page_label"] = saml2_sp_initiated_login_page_label
815
+ __props__.__dict__["saml2_sso_url"] = saml2_sso_url
816
+ __props__.__dict__["saml2_x509_cert"] = saml2_x509_cert
817
+ __props__.__dict__["show_outputs"] = show_outputs
818
+ return Saml2Integration(resource_name, opts=opts, __props__=__props__)
819
+
820
+ @property
821
+ @pulumi.getter(name="allowedEmailPatterns")
822
+ def allowed_email_patterns(self) -> pulumi.Output[Optional[Sequence[str]]]:
823
+ """
824
+ A list of regular expressions that email addresses are matched against to authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
825
+ """
826
+ return pulumi.get(self, "allowed_email_patterns")
827
+
828
+ @property
829
+ @pulumi.getter(name="allowedUserDomains")
830
+ def allowed_user_domains(self) -> pulumi.Output[Optional[Sequence[str]]]:
831
+ """
832
+ A list of email domains that can authenticate with a SAML2 security integration. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
833
+ """
834
+ return pulumi.get(self, "allowed_user_domains")
835
+
836
+ @property
837
+ @pulumi.getter
838
+ def comment(self) -> pulumi.Output[Optional[str]]:
839
+ """
840
+ Specifies a comment for the integration.
841
+ """
842
+ return pulumi.get(self, "comment")
843
+
844
+ @property
845
+ @pulumi.getter(name="describeOutputs")
846
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.Saml2IntegrationDescribeOutput']]:
847
+ """
848
+ Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
849
+ """
850
+ return pulumi.get(self, "describe_outputs")
851
+
852
+ @property
853
+ @pulumi.getter
854
+ def enabled(self) -> pulumi.Output[Optional[str]]:
855
+ """
856
+ Specifies whether this security integration is enabled or disabled. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
857
+ """
858
+ return pulumi.get(self, "enabled")
859
+
860
+ @property
861
+ @pulumi.getter
862
+ def name(self) -> pulumi.Output[str]:
863
+ """
864
+ Specifies the name of the SAML2 integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
865
+ """
866
+ return pulumi.get(self, "name")
867
+
868
+ @property
869
+ @pulumi.getter(name="saml2EnableSpInitiated")
870
+ def saml2_enable_sp_initiated(self) -> pulumi.Output[Optional[str]]:
871
+ """
872
+ The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in With button on the login page. FALSE: does not display the Log in With button on the login page. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
873
+ """
874
+ return pulumi.get(self, "saml2_enable_sp_initiated")
875
+
876
+ @property
877
+ @pulumi.getter(name="saml2ForceAuthn")
878
+ def saml2_force_authn(self) -> pulumi.Output[Optional[str]]:
879
+ """
880
+ The Boolean indicating whether users, during the initial authentication flow, are forced to authenticate again to access Snowflake. When set to TRUE, Snowflake sets the ForceAuthn SAML parameter to TRUE in the outgoing request from Snowflake to the identity provider. TRUE: forces users to authenticate again to access Snowflake, even if a valid session with the identity provider exists. FALSE: does not force users to authenticate again to access Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
881
+ """
882
+ return pulumi.get(self, "saml2_force_authn")
883
+
884
+ @property
885
+ @pulumi.getter(name="saml2Issuer")
886
+ def saml2_issuer(self) -> pulumi.Output[str]:
887
+ """
888
+ The string containing the IdP EntityID / Issuer.
889
+ """
890
+ return pulumi.get(self, "saml2_issuer")
891
+
892
+ @property
893
+ @pulumi.getter(name="saml2PostLogoutRedirectUrl")
894
+ def saml2_post_logout_redirect_url(self) -> pulumi.Output[Optional[str]]:
895
+ """
896
+ The endpoint to which Snowflake redirects users after clicking the Log Out button in the classic Snowflake web interface. Snowflake terminates the Snowflake session upon redirecting to the specified endpoint.
897
+ """
898
+ return pulumi.get(self, "saml2_post_logout_redirect_url")
899
+
900
+ @property
901
+ @pulumi.getter(name="saml2Provider")
902
+ def saml2_provider(self) -> pulumi.Output[str]:
903
+ """
904
+ The string describing the IdP. Valid options are: [OKTA ADFS CUSTOM].
905
+ """
906
+ return pulumi.get(self, "saml2_provider")
907
+
908
+ @property
909
+ @pulumi.getter(name="saml2RequestedNameidFormat")
910
+ def saml2_requested_nameid_format(self) -> pulumi.Output[Optional[str]]:
911
+ """
912
+ The SAML NameID format allows Snowflake to set an expectation of the identifying attribute of the user (i.e. SAML Subject) in the SAML assertion from the IdP to ensure a valid authentication to Snowflake. Valid options are: [urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress urn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectName urn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedName urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos urn:oasis:names:tc:SAML:2.0:nameid-format:persistent urn:oasis:names:tc:SAML:2.0:nameid-format:transient]
913
+ """
914
+ return pulumi.get(self, "saml2_requested_nameid_format")
915
+
916
+ @property
917
+ @pulumi.getter(name="saml2SignRequest")
918
+ def saml2_sign_request(self) -> pulumi.Output[Optional[str]]:
919
+ """
920
+ The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
921
+ """
922
+ return pulumi.get(self, "saml2_sign_request")
923
+
924
+ @property
925
+ @pulumi.getter(name="saml2SnowflakeAcsUrl")
926
+ def saml2_snowflake_acs_url(self) -> pulumi.Output[Optional[str]]:
927
+ """
928
+ The string containing the Snowflake Assertion Consumer Service URL to which the IdP will send its SAML authentication response back to Snowflake. This property will be set in the SAML authentication request generated by Snowflake when initiating a SAML SSO operation with the IdP. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
929
+ """
930
+ return pulumi.get(self, "saml2_snowflake_acs_url")
931
+
932
+ @property
933
+ @pulumi.getter(name="saml2SnowflakeIssuerUrl")
934
+ def saml2_snowflake_issuer_url(self) -> pulumi.Output[Optional[str]]:
935
+ """
936
+ The string containing the EntityID / Issuer for the Snowflake service provider. If an incorrect value is specified, Snowflake returns an error message indicating the acceptable values to use.
937
+ """
938
+ return pulumi.get(self, "saml2_snowflake_issuer_url")
939
+
940
+ @property
941
+ @pulumi.getter(name="saml2SpInitiatedLoginPageLabel")
942
+ def saml2_sp_initiated_login_page_label(self) -> pulumi.Output[Optional[str]]:
943
+ """
944
+ The string containing the label to display after the Log In With button on the login page. If this field changes value from non-empty to empty, the whole resource is recreated because of Snowflake limitations.
945
+ """
946
+ return pulumi.get(self, "saml2_sp_initiated_login_page_label")
947
+
948
+ @property
949
+ @pulumi.getter(name="saml2SsoUrl")
950
+ def saml2_sso_url(self) -> pulumi.Output[str]:
951
+ """
952
+ The string containing the IdP SSO URL, where the user should be redirected by Snowflake (the Service Provider) with a SAML AuthnRequest message.
953
+ """
954
+ return pulumi.get(self, "saml2_sso_url")
955
+
956
+ @property
957
+ @pulumi.getter(name="saml2X509Cert")
958
+ def saml2_x509_cert(self) -> pulumi.Output[str]:
959
+ """
960
+ The Base64 encoded IdP signing certificate on a single line without the leading -----BEGIN CERTIFICATE----- and ending -----END CERTIFICATE----- markers.
961
+ """
962
+ return pulumi.get(self, "saml2_x509_cert")
963
+
964
+ @property
965
+ @pulumi.getter(name="showOutputs")
966
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.Saml2IntegrationShowOutput']]:
967
+ """
968
+ Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
969
+ """
970
+ return pulumi.get(self, "show_outputs")
971
+