pulumi-snowflake 0.50.2a1709892015__py3-none-any.whl → 1.2.0a1736835738__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.
Potentially problematic release.
This version of pulumi-snowflake might be problematic. Click here for more details.
- pulumi_snowflake/__init__.py +224 -172
- pulumi_snowflake/_inputs.py +52854 -1662
- pulumi_snowflake/_utilities.py +41 -5
- pulumi_snowflake/account.py +188 -214
- pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
- pulumi_snowflake/account_parameter.py +21 -44
- pulumi_snowflake/account_password_policy_attachment.py +7 -28
- pulumi_snowflake/account_role.py +250 -0
- pulumi_snowflake/alert.py +38 -43
- pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
- pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
- pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
- pulumi_snowflake/api_integration.py +35 -50
- pulumi_snowflake/authentication_policy.py +622 -0
- pulumi_snowflake/config/__init__.pyi +76 -99
- pulumi_snowflake/config/outputs.py +5 -0
- pulumi_snowflake/config/vars.py +93 -124
- pulumi_snowflake/cortex_search_service.py +596 -0
- pulumi_snowflake/database.py +819 -209
- pulumi_snowflake/database_role.py +81 -40
- pulumi_snowflake/dynamic_table.py +44 -47
- pulumi_snowflake/email_notification_integration.py +35 -26
- pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -139
- pulumi_snowflake/external_function.py +54 -71
- pulumi_snowflake/external_oauth_integration.py +593 -538
- pulumi_snowflake/external_table.py +67 -86
- pulumi_snowflake/external_volume.py +382 -0
- pulumi_snowflake/failover_group.py +59 -96
- pulumi_snowflake/file_format.py +33 -24
- pulumi_snowflake/function_java.py +1211 -0
- pulumi_snowflake/function_javascript.py +882 -0
- pulumi_snowflake/function_python.py +1212 -0
- pulumi_snowflake/function_scala.py +1212 -0
- pulumi_snowflake/function_sql.py +835 -0
- pulumi_snowflake/get_account_roles.py +129 -0
- pulumi_snowflake/get_accounts.py +53 -22
- pulumi_snowflake/get_alerts.py +22 -5
- pulumi_snowflake/get_connections.py +109 -0
- pulumi_snowflake/get_cortex_search_services.py +216 -0
- pulumi_snowflake/get_current_account.py +24 -9
- pulumi_snowflake/get_current_role.py +14 -7
- pulumi_snowflake/get_database.py +25 -5
- pulumi_snowflake/get_database_role.py +162 -0
- pulumi_snowflake/get_database_roles.py +79 -43
- pulumi_snowflake/get_databases.py +91 -69
- pulumi_snowflake/get_dynamic_tables.py +36 -19
- pulumi_snowflake/get_external_functions.py +28 -5
- pulumi_snowflake/get_external_tables.py +28 -5
- pulumi_snowflake/get_failover_groups.py +18 -7
- pulumi_snowflake/get_file_formats.py +28 -5
- pulumi_snowflake/get_functions.py +28 -5
- pulumi_snowflake/get_grants.py +207 -80
- pulumi_snowflake/get_masking_policies.py +91 -47
- pulumi_snowflake/get_materialized_views.py +28 -5
- pulumi_snowflake/get_network_policies.py +129 -0
- pulumi_snowflake/get_parameters.py +38 -11
- pulumi_snowflake/get_pipes.py +28 -5
- pulumi_snowflake/get_procedures.py +28 -5
- pulumi_snowflake/get_resource_monitors.py +37 -20
- pulumi_snowflake/get_row_access_policies.py +91 -47
- pulumi_snowflake/get_schemas.py +145 -37
- pulumi_snowflake/get_secrets.py +200 -0
- pulumi_snowflake/get_security_integrations.py +129 -0
- pulumi_snowflake/get_sequences.py +28 -5
- pulumi_snowflake/get_shares.py +18 -5
- pulumi_snowflake/get_stages.py +28 -5
- pulumi_snowflake/get_storage_integrations.py +16 -5
- pulumi_snowflake/get_streamlits.py +170 -0
- pulumi_snowflake/get_streams.py +114 -50
- pulumi_snowflake/get_system_generate_scim_access_token.py +18 -5
- pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
- pulumi_snowflake/get_system_get_private_link_config.py +121 -6
- pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
- pulumi_snowflake/get_tables.py +28 -5
- pulumi_snowflake/get_tags.py +130 -0
- pulumi_snowflake/get_tasks.py +134 -50
- pulumi_snowflake/get_users.py +116 -40
- pulumi_snowflake/get_views.py +114 -50
- pulumi_snowflake/get_warehouses.py +79 -22
- pulumi_snowflake/grant_account_role.py +28 -61
- pulumi_snowflake/grant_application_role.py +257 -0
- pulumi_snowflake/grant_database_role.py +35 -108
- pulumi_snowflake/grant_ownership.py +382 -0
- pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
- pulumi_snowflake/grant_privileges_to_database_role.py +37 -223
- pulumi_snowflake/grant_privileges_to_share.py +96 -44
- pulumi_snowflake/legacy_service_user.py +3670 -0
- pulumi_snowflake/managed_account.py +42 -9
- pulumi_snowflake/masking_policy.py +213 -306
- pulumi_snowflake/materialized_view.py +62 -67
- pulumi_snowflake/network_policy.py +217 -57
- pulumi_snowflake/network_policy_attachment.py +7 -32
- pulumi_snowflake/network_rule.py +473 -0
- pulumi_snowflake/notification_integration.py +51 -82
- pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
- pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -188
- pulumi_snowflake/object_parameter.py +12 -99
- pulumi_snowflake/outputs.py +49200 -2928
- pulumi_snowflake/password_policy.py +41 -28
- pulumi_snowflake/pipe.py +33 -0
- pulumi_snowflake/primary_connection.py +330 -0
- pulumi_snowflake/procedure_java.py +1273 -0
- pulumi_snowflake/procedure_javascript.py +895 -0
- pulumi_snowflake/procedure_python.py +1226 -0
- pulumi_snowflake/procedure_scala.py +1273 -0
- pulumi_snowflake/procedure_sql.py +895 -0
- pulumi_snowflake/provider.py +378 -613
- pulumi_snowflake/pulumi-plugin.json +2 -1
- pulumi_snowflake/resource_monitor.py +118 -323
- pulumi_snowflake/row_access_policy.py +200 -145
- pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -295
- pulumi_snowflake/schema.py +949 -174
- pulumi_snowflake/scim_integration.py +286 -105
- pulumi_snowflake/secondary_connection.py +339 -0
- pulumi_snowflake/secondary_database.py +1080 -0
- pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
- pulumi_snowflake/secret_with_basic_authentication.py +500 -0
- pulumi_snowflake/secret_with_client_credentials.py +511 -0
- pulumi_snowflake/secret_with_generic_string.py +452 -0
- pulumi_snowflake/sequence.py +9 -30
- pulumi_snowflake/service_user.py +3585 -0
- pulumi_snowflake/share.py +35 -26
- pulumi_snowflake/shared_database.py +939 -0
- pulumi_snowflake/stage.py +95 -80
- pulumi_snowflake/storage_integration.py +48 -2
- pulumi_snowflake/stream_on_directory_table.py +517 -0
- pulumi_snowflake/stream_on_external_table.py +632 -0
- pulumi_snowflake/stream_on_table.py +666 -0
- pulumi_snowflake/stream_on_view.py +666 -0
- pulumi_snowflake/streamlit.py +671 -0
- pulumi_snowflake/table.py +86 -93
- pulumi_snowflake/table_column_masking_policy_application.py +7 -14
- pulumi_snowflake/table_constraint.py +29 -168
- pulumi_snowflake/tag.py +142 -70
- pulumi_snowflake/tag_association.py +40 -211
- pulumi_snowflake/task.py +3048 -414
- pulumi_snowflake/user.py +3351 -380
- pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
- pulumi_snowflake/user_password_policy_attachment.py +7 -6
- pulumi_snowflake/user_public_keys.py +5 -0
- pulumi_snowflake/view.py +466 -211
- pulumi_snowflake/warehouse.py +184 -164
- {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
- pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
- {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
- pulumi_snowflake/account_grant.py +0 -339
- pulumi_snowflake/database_grant.py +0 -491
- pulumi_snowflake/external_table_grant.py +0 -686
- pulumi_snowflake/failover_group_grant.py +0 -388
- pulumi_snowflake/file_format_grant.py +0 -631
- pulumi_snowflake/function.py +0 -868
- pulumi_snowflake/function_grant.py +0 -741
- pulumi_snowflake/get_role.py +0 -117
- pulumi_snowflake/get_roles.py +0 -116
- pulumi_snowflake/grant_privileges_to_role.py +0 -667
- pulumi_snowflake/integration_grant.py +0 -436
- pulumi_snowflake/masking_policy_grant.py +0 -538
- pulumi_snowflake/materialized_view_grant.py +0 -685
- pulumi_snowflake/pipe_grant.py +0 -583
- pulumi_snowflake/procedure.py +0 -883
- pulumi_snowflake/procedure_grant.py +0 -741
- pulumi_snowflake/resource_monitor_grant.py +0 -383
- pulumi_snowflake/role.py +0 -269
- pulumi_snowflake/role_grants.py +0 -348
- pulumi_snowflake/role_ownership_grant.py +0 -334
- pulumi_snowflake/row_access_policy_grant.py +0 -536
- pulumi_snowflake/schema_grant.py +0 -643
- pulumi_snowflake/sequence_grant.py +0 -631
- pulumi_snowflake/session_parameter.py +0 -328
- pulumi_snowflake/stage_grant.py +0 -631
- pulumi_snowflake/stream.py +0 -610
- pulumi_snowflake/stream_grant.py +0 -631
- pulumi_snowflake/table_grant.py +0 -673
- pulumi_snowflake/tag_grant.py +0 -528
- pulumi_snowflake/tag_masking_policy_association.py +0 -210
- pulumi_snowflake/task_grant.py +0 -631
- pulumi_snowflake/user_grant.py +0 -390
- pulumi_snowflake/user_ownership_grant.py +0 -286
- pulumi_snowflake/view_grant.py +0 -701
- pulumi_snowflake/warehouse_grant.py +0 -436
- pulumi_snowflake-0.50.2a1709892015.dist-info/RECORD +0 -136
- {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
|
@@ -4,53 +4,70 @@
|
|
|
4
4
|
|
|
5
5
|
import copy
|
|
6
6
|
import warnings
|
|
7
|
+
import sys
|
|
7
8
|
import pulumi
|
|
8
9
|
import pulumi.runtime
|
|
9
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
|
|
10
15
|
from . import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
from ._inputs import *
|
|
11
18
|
|
|
12
|
-
__all__ = ['
|
|
19
|
+
__all__ = ['Saml2IntegrationArgs', 'Saml2Integration']
|
|
13
20
|
|
|
14
21
|
@pulumi.input_type
|
|
15
|
-
class
|
|
22
|
+
class Saml2IntegrationArgs:
|
|
16
23
|
def __init__(__self__, *,
|
|
17
24
|
saml2_issuer: pulumi.Input[str],
|
|
18
25
|
saml2_provider: pulumi.Input[str],
|
|
19
26
|
saml2_sso_url: pulumi.Input[str],
|
|
20
27
|
saml2_x509_cert: pulumi.Input[str],
|
|
21
|
-
|
|
28
|
+
allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
29
|
+
allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
30
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
31
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
22
32
|
name: Optional[pulumi.Input[str]] = None,
|
|
23
|
-
saml2_enable_sp_initiated: Optional[pulumi.Input[
|
|
24
|
-
saml2_force_authn: Optional[pulumi.Input[
|
|
33
|
+
saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
|
|
34
|
+
saml2_force_authn: Optional[pulumi.Input[str]] = None,
|
|
25
35
|
saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
|
|
26
36
|
saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
|
|
27
|
-
saml2_sign_request: Optional[pulumi.Input[
|
|
37
|
+
saml2_sign_request: Optional[pulumi.Input[str]] = None,
|
|
28
38
|
saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
|
|
29
39
|
saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
|
|
30
|
-
saml2_snowflake_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
31
40
|
saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None):
|
|
32
41
|
"""
|
|
33
|
-
The set of arguments for constructing a
|
|
42
|
+
The set of arguments for constructing a Saml2Integration resource.
|
|
34
43
|
:param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
|
|
35
|
-
:param pulumi.Input[str] saml2_provider: The string describing the IdP.
|
|
44
|
+
:param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
36
45
|
: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.
|
|
37
46
|
: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.
|
|
38
|
-
:param pulumi.Input[
|
|
39
|
-
:param pulumi.Input[str]
|
|
40
|
-
:param pulumi.Input[
|
|
41
|
-
:param pulumi.Input[
|
|
47
|
+
: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.
|
|
48
|
+
: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.
|
|
49
|
+
:param pulumi.Input[str] comment: Specifies a comment for the integration.
|
|
50
|
+
: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.
|
|
51
|
+
: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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
52
|
+
: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.
|
|
53
|
+
: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.
|
|
42
54
|
: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.
|
|
43
|
-
: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.
|
|
44
|
-
:param pulumi.Input[
|
|
45
|
-
: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.
|
|
46
|
-
: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.
|
|
47
|
-
:param pulumi.Input[str]
|
|
48
|
-
: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.
|
|
55
|
+
: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`.
|
|
56
|
+
: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.
|
|
57
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
58
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
59
|
+
: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.
|
|
49
60
|
"""
|
|
50
61
|
pulumi.set(__self__, "saml2_issuer", saml2_issuer)
|
|
51
62
|
pulumi.set(__self__, "saml2_provider", saml2_provider)
|
|
52
63
|
pulumi.set(__self__, "saml2_sso_url", saml2_sso_url)
|
|
53
64
|
pulumi.set(__self__, "saml2_x509_cert", saml2_x509_cert)
|
|
65
|
+
if allowed_email_patterns is not None:
|
|
66
|
+
pulumi.set(__self__, "allowed_email_patterns", allowed_email_patterns)
|
|
67
|
+
if allowed_user_domains is not None:
|
|
68
|
+
pulumi.set(__self__, "allowed_user_domains", allowed_user_domains)
|
|
69
|
+
if comment is not None:
|
|
70
|
+
pulumi.set(__self__, "comment", comment)
|
|
54
71
|
if enabled is not None:
|
|
55
72
|
pulumi.set(__self__, "enabled", enabled)
|
|
56
73
|
if name is not None:
|
|
@@ -69,8 +86,6 @@ class SamlIntegrationArgs:
|
|
|
69
86
|
pulumi.set(__self__, "saml2_snowflake_acs_url", saml2_snowflake_acs_url)
|
|
70
87
|
if saml2_snowflake_issuer_url is not None:
|
|
71
88
|
pulumi.set(__self__, "saml2_snowflake_issuer_url", saml2_snowflake_issuer_url)
|
|
72
|
-
if saml2_snowflake_x509_cert is not None:
|
|
73
|
-
pulumi.set(__self__, "saml2_snowflake_x509_cert", saml2_snowflake_x509_cert)
|
|
74
89
|
if saml2_sp_initiated_login_page_label is not None:
|
|
75
90
|
pulumi.set(__self__, "saml2_sp_initiated_login_page_label", saml2_sp_initiated_login_page_label)
|
|
76
91
|
|
|
@@ -90,7 +105,7 @@ class SamlIntegrationArgs:
|
|
|
90
105
|
@pulumi.getter(name="saml2Provider")
|
|
91
106
|
def saml2_provider(self) -> pulumi.Input[str]:
|
|
92
107
|
"""
|
|
93
|
-
The string describing the IdP.
|
|
108
|
+
The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
94
109
|
"""
|
|
95
110
|
return pulumi.get(self, "saml2_provider")
|
|
96
111
|
|
|
@@ -122,23 +137,59 @@ class SamlIntegrationArgs:
|
|
|
122
137
|
def saml2_x509_cert(self, value: pulumi.Input[str]):
|
|
123
138
|
pulumi.set(self, "saml2_x509_cert", value)
|
|
124
139
|
|
|
140
|
+
@property
|
|
141
|
+
@pulumi.getter(name="allowedEmailPatterns")
|
|
142
|
+
def allowed_email_patterns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
143
|
+
"""
|
|
144
|
+
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.
|
|
145
|
+
"""
|
|
146
|
+
return pulumi.get(self, "allowed_email_patterns")
|
|
147
|
+
|
|
148
|
+
@allowed_email_patterns.setter
|
|
149
|
+
def allowed_email_patterns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
150
|
+
pulumi.set(self, "allowed_email_patterns", value)
|
|
151
|
+
|
|
152
|
+
@property
|
|
153
|
+
@pulumi.getter(name="allowedUserDomains")
|
|
154
|
+
def allowed_user_domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
155
|
+
"""
|
|
156
|
+
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.
|
|
157
|
+
"""
|
|
158
|
+
return pulumi.get(self, "allowed_user_domains")
|
|
159
|
+
|
|
160
|
+
@allowed_user_domains.setter
|
|
161
|
+
def allowed_user_domains(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
162
|
+
pulumi.set(self, "allowed_user_domains", value)
|
|
163
|
+
|
|
125
164
|
@property
|
|
126
165
|
@pulumi.getter
|
|
127
|
-
def
|
|
166
|
+
def comment(self) -> Optional[pulumi.Input[str]]:
|
|
128
167
|
"""
|
|
129
|
-
Specifies
|
|
168
|
+
Specifies a comment for the integration.
|
|
169
|
+
"""
|
|
170
|
+
return pulumi.get(self, "comment")
|
|
171
|
+
|
|
172
|
+
@comment.setter
|
|
173
|
+
def comment(self, value: Optional[pulumi.Input[str]]):
|
|
174
|
+
pulumi.set(self, "comment", value)
|
|
175
|
+
|
|
176
|
+
@property
|
|
177
|
+
@pulumi.getter
|
|
178
|
+
def enabled(self) -> Optional[pulumi.Input[str]]:
|
|
179
|
+
"""
|
|
180
|
+
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.
|
|
130
181
|
"""
|
|
131
182
|
return pulumi.get(self, "enabled")
|
|
132
183
|
|
|
133
184
|
@enabled.setter
|
|
134
|
-
def enabled(self, value: Optional[pulumi.Input[
|
|
185
|
+
def enabled(self, value: Optional[pulumi.Input[str]]):
|
|
135
186
|
pulumi.set(self, "enabled", value)
|
|
136
187
|
|
|
137
188
|
@property
|
|
138
189
|
@pulumi.getter
|
|
139
190
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
140
191
|
"""
|
|
141
|
-
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.
|
|
192
|
+
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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
142
193
|
"""
|
|
143
194
|
return pulumi.get(self, "name")
|
|
144
195
|
|
|
@@ -148,26 +199,26 @@ class SamlIntegrationArgs:
|
|
|
148
199
|
|
|
149
200
|
@property
|
|
150
201
|
@pulumi.getter(name="saml2EnableSpInitiated")
|
|
151
|
-
def saml2_enable_sp_initiated(self) -> Optional[pulumi.Input[
|
|
202
|
+
def saml2_enable_sp_initiated(self) -> Optional[pulumi.Input[str]]:
|
|
152
203
|
"""
|
|
153
|
-
The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in
|
|
204
|
+
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.
|
|
154
205
|
"""
|
|
155
206
|
return pulumi.get(self, "saml2_enable_sp_initiated")
|
|
156
207
|
|
|
157
208
|
@saml2_enable_sp_initiated.setter
|
|
158
|
-
def saml2_enable_sp_initiated(self, value: Optional[pulumi.Input[
|
|
209
|
+
def saml2_enable_sp_initiated(self, value: Optional[pulumi.Input[str]]):
|
|
159
210
|
pulumi.set(self, "saml2_enable_sp_initiated", value)
|
|
160
211
|
|
|
161
212
|
@property
|
|
162
213
|
@pulumi.getter(name="saml2ForceAuthn")
|
|
163
|
-
def saml2_force_authn(self) -> Optional[pulumi.Input[
|
|
214
|
+
def saml2_force_authn(self) -> Optional[pulumi.Input[str]]:
|
|
164
215
|
"""
|
|
165
|
-
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.
|
|
216
|
+
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.
|
|
166
217
|
"""
|
|
167
218
|
return pulumi.get(self, "saml2_force_authn")
|
|
168
219
|
|
|
169
220
|
@saml2_force_authn.setter
|
|
170
|
-
def saml2_force_authn(self, value: Optional[pulumi.Input[
|
|
221
|
+
def saml2_force_authn(self, value: Optional[pulumi.Input[str]]):
|
|
171
222
|
pulumi.set(self, "saml2_force_authn", value)
|
|
172
223
|
|
|
173
224
|
@property
|
|
@@ -186,7 +237,7 @@ class SamlIntegrationArgs:
|
|
|
186
237
|
@pulumi.getter(name="saml2RequestedNameidFormat")
|
|
187
238
|
def saml2_requested_nameid_format(self) -> Optional[pulumi.Input[str]]:
|
|
188
239
|
"""
|
|
189
|
-
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.
|
|
240
|
+
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`.
|
|
190
241
|
"""
|
|
191
242
|
return pulumi.get(self, "saml2_requested_nameid_format")
|
|
192
243
|
|
|
@@ -196,21 +247,21 @@ class SamlIntegrationArgs:
|
|
|
196
247
|
|
|
197
248
|
@property
|
|
198
249
|
@pulumi.getter(name="saml2SignRequest")
|
|
199
|
-
def saml2_sign_request(self) -> Optional[pulumi.Input[
|
|
250
|
+
def saml2_sign_request(self) -> Optional[pulumi.Input[str]]:
|
|
200
251
|
"""
|
|
201
|
-
The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed.
|
|
252
|
+
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.
|
|
202
253
|
"""
|
|
203
254
|
return pulumi.get(self, "saml2_sign_request")
|
|
204
255
|
|
|
205
256
|
@saml2_sign_request.setter
|
|
206
|
-
def saml2_sign_request(self, value: Optional[pulumi.Input[
|
|
257
|
+
def saml2_sign_request(self, value: Optional[pulumi.Input[str]]):
|
|
207
258
|
pulumi.set(self, "saml2_sign_request", value)
|
|
208
259
|
|
|
209
260
|
@property
|
|
210
261
|
@pulumi.getter(name="saml2SnowflakeAcsUrl")
|
|
211
262
|
def saml2_snowflake_acs_url(self) -> Optional[pulumi.Input[str]]:
|
|
212
263
|
"""
|
|
213
|
-
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.
|
|
264
|
+
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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
214
265
|
"""
|
|
215
266
|
return pulumi.get(self, "saml2_snowflake_acs_url")
|
|
216
267
|
|
|
@@ -222,7 +273,7 @@ class SamlIntegrationArgs:
|
|
|
222
273
|
@pulumi.getter(name="saml2SnowflakeIssuerUrl")
|
|
223
274
|
def saml2_snowflake_issuer_url(self) -> Optional[pulumi.Input[str]]:
|
|
224
275
|
"""
|
|
225
|
-
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.
|
|
276
|
+
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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
226
277
|
"""
|
|
227
278
|
return pulumi.get(self, "saml2_snowflake_issuer_url")
|
|
228
279
|
|
|
@@ -230,23 +281,11 @@ class SamlIntegrationArgs:
|
|
|
230
281
|
def saml2_snowflake_issuer_url(self, value: Optional[pulumi.Input[str]]):
|
|
231
282
|
pulumi.set(self, "saml2_snowflake_issuer_url", value)
|
|
232
283
|
|
|
233
|
-
@property
|
|
234
|
-
@pulumi.getter(name="saml2SnowflakeX509Cert")
|
|
235
|
-
def saml2_snowflake_x509_cert(self) -> Optional[pulumi.Input[str]]:
|
|
236
|
-
"""
|
|
237
|
-
The Base64 encoded self-signed certificate generated by Snowflake for use with Encrypting SAML Assertions and Signed SAML Requests. You must have at least one of these features (encrypted SAML assertions or signed SAML responses) enabled in your Snowflake account to access the certificate value.
|
|
238
|
-
"""
|
|
239
|
-
return pulumi.get(self, "saml2_snowflake_x509_cert")
|
|
240
|
-
|
|
241
|
-
@saml2_snowflake_x509_cert.setter
|
|
242
|
-
def saml2_snowflake_x509_cert(self, value: Optional[pulumi.Input[str]]):
|
|
243
|
-
pulumi.set(self, "saml2_snowflake_x509_cert", value)
|
|
244
|
-
|
|
245
284
|
@property
|
|
246
285
|
@pulumi.getter(name="saml2SpInitiatedLoginPageLabel")
|
|
247
286
|
def saml2_sp_initiated_login_page_label(self) -> Optional[pulumi.Input[str]]:
|
|
248
287
|
"""
|
|
249
|
-
The string containing the label to display after the Log In With button on the login page.
|
|
288
|
+
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.
|
|
250
289
|
"""
|
|
251
290
|
return pulumi.get(self, "saml2_sp_initiated_login_page_label")
|
|
252
291
|
|
|
@@ -256,55 +295,65 @@ class SamlIntegrationArgs:
|
|
|
256
295
|
|
|
257
296
|
|
|
258
297
|
@pulumi.input_type
|
|
259
|
-
class
|
|
298
|
+
class _Saml2IntegrationState:
|
|
260
299
|
def __init__(__self__, *,
|
|
261
|
-
|
|
262
|
-
|
|
300
|
+
allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
301
|
+
allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
302
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
303
|
+
describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]]] = None,
|
|
304
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
305
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
263
306
|
name: Optional[pulumi.Input[str]] = None,
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
saml2_force_authn: Optional[pulumi.Input[bool]] = None,
|
|
307
|
+
saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
|
|
308
|
+
saml2_force_authn: Optional[pulumi.Input[str]] = None,
|
|
267
309
|
saml2_issuer: Optional[pulumi.Input[str]] = None,
|
|
268
310
|
saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
|
|
269
311
|
saml2_provider: Optional[pulumi.Input[str]] = None,
|
|
270
312
|
saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
|
|
271
|
-
saml2_sign_request: Optional[pulumi.Input[
|
|
272
|
-
saml2_signature_methods_used: Optional[pulumi.Input[str]] = None,
|
|
313
|
+
saml2_sign_request: Optional[pulumi.Input[str]] = None,
|
|
273
314
|
saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
|
|
274
315
|
saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
|
|
275
|
-
saml2_snowflake_metadata: Optional[pulumi.Input[str]] = None,
|
|
276
|
-
saml2_snowflake_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
277
316
|
saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
|
|
278
317
|
saml2_sso_url: Optional[pulumi.Input[str]] = None,
|
|
279
|
-
saml2_x509_cert: Optional[pulumi.Input[str]] = None
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
:param pulumi.Input[
|
|
284
|
-
:param pulumi.Input[str]
|
|
285
|
-
:param pulumi.Input[
|
|
286
|
-
:param pulumi.Input[
|
|
318
|
+
saml2_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
319
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]]] = None):
|
|
320
|
+
"""
|
|
321
|
+
Input properties used for looking up and filtering Saml2Integration resources.
|
|
322
|
+
: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.
|
|
323
|
+
: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.
|
|
324
|
+
:param pulumi.Input[str] comment: Specifies a comment for the integration.
|
|
325
|
+
:param pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
326
|
+
: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.
|
|
327
|
+
:param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
328
|
+
: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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
329
|
+
: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.
|
|
330
|
+
: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.
|
|
287
331
|
:param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
|
|
288
332
|
: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.
|
|
289
|
-
:param pulumi.Input[str] saml2_provider: The string describing the IdP.
|
|
290
|
-
: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.
|
|
291
|
-
:param pulumi.Input[
|
|
292
|
-
: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.
|
|
293
|
-
: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.
|
|
294
|
-
:param pulumi.Input[str]
|
|
295
|
-
:param pulumi.Input[str] saml2_snowflake_x509_cert: The Base64 encoded self-signed certificate generated by Snowflake for use with Encrypting SAML Assertions and Signed SAML Requests. You must have at least one of these features (encrypted SAML assertions or signed SAML responses) enabled in your Snowflake account to access the certificate value.
|
|
296
|
-
: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.
|
|
333
|
+
:param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
334
|
+
: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`.
|
|
335
|
+
: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.
|
|
336
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
337
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
338
|
+
: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.
|
|
297
339
|
: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.
|
|
298
340
|
: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.
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
341
|
+
:param pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
342
|
+
"""
|
|
343
|
+
if allowed_email_patterns is not None:
|
|
344
|
+
pulumi.set(__self__, "allowed_email_patterns", allowed_email_patterns)
|
|
345
|
+
if allowed_user_domains is not None:
|
|
346
|
+
pulumi.set(__self__, "allowed_user_domains", allowed_user_domains)
|
|
347
|
+
if comment is not None:
|
|
348
|
+
pulumi.set(__self__, "comment", comment)
|
|
349
|
+
if describe_outputs is not None:
|
|
350
|
+
pulumi.set(__self__, "describe_outputs", describe_outputs)
|
|
302
351
|
if enabled is not None:
|
|
303
352
|
pulumi.set(__self__, "enabled", enabled)
|
|
353
|
+
if fully_qualified_name is not None:
|
|
354
|
+
pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
|
|
304
355
|
if name is not None:
|
|
305
356
|
pulumi.set(__self__, "name", name)
|
|
306
|
-
if saml2_digest_methods_used is not None:
|
|
307
|
-
pulumi.set(__self__, "saml2_digest_methods_used", saml2_digest_methods_used)
|
|
308
357
|
if saml2_enable_sp_initiated is not None:
|
|
309
358
|
pulumi.set(__self__, "saml2_enable_sp_initiated", saml2_enable_sp_initiated)
|
|
310
359
|
if saml2_force_authn is not None:
|
|
@@ -319,52 +368,96 @@ class _SamlIntegrationState:
|
|
|
319
368
|
pulumi.set(__self__, "saml2_requested_nameid_format", saml2_requested_nameid_format)
|
|
320
369
|
if saml2_sign_request is not None:
|
|
321
370
|
pulumi.set(__self__, "saml2_sign_request", saml2_sign_request)
|
|
322
|
-
if saml2_signature_methods_used is not None:
|
|
323
|
-
pulumi.set(__self__, "saml2_signature_methods_used", saml2_signature_methods_used)
|
|
324
371
|
if saml2_snowflake_acs_url is not None:
|
|
325
372
|
pulumi.set(__self__, "saml2_snowflake_acs_url", saml2_snowflake_acs_url)
|
|
326
373
|
if saml2_snowflake_issuer_url is not None:
|
|
327
374
|
pulumi.set(__self__, "saml2_snowflake_issuer_url", saml2_snowflake_issuer_url)
|
|
328
|
-
if saml2_snowflake_metadata is not None:
|
|
329
|
-
pulumi.set(__self__, "saml2_snowflake_metadata", saml2_snowflake_metadata)
|
|
330
|
-
if saml2_snowflake_x509_cert is not None:
|
|
331
|
-
pulumi.set(__self__, "saml2_snowflake_x509_cert", saml2_snowflake_x509_cert)
|
|
332
375
|
if saml2_sp_initiated_login_page_label is not None:
|
|
333
376
|
pulumi.set(__self__, "saml2_sp_initiated_login_page_label", saml2_sp_initiated_login_page_label)
|
|
334
377
|
if saml2_sso_url is not None:
|
|
335
378
|
pulumi.set(__self__, "saml2_sso_url", saml2_sso_url)
|
|
336
379
|
if saml2_x509_cert is not None:
|
|
337
380
|
pulumi.set(__self__, "saml2_x509_cert", saml2_x509_cert)
|
|
381
|
+
if show_outputs is not None:
|
|
382
|
+
pulumi.set(__self__, "show_outputs", show_outputs)
|
|
338
383
|
|
|
339
384
|
@property
|
|
340
|
-
@pulumi.getter(name="
|
|
341
|
-
def
|
|
385
|
+
@pulumi.getter(name="allowedEmailPatterns")
|
|
386
|
+
def allowed_email_patterns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
342
387
|
"""
|
|
343
|
-
|
|
388
|
+
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.
|
|
344
389
|
"""
|
|
345
|
-
return pulumi.get(self, "
|
|
390
|
+
return pulumi.get(self, "allowed_email_patterns")
|
|
346
391
|
|
|
347
|
-
@
|
|
348
|
-
def
|
|
349
|
-
pulumi.set(self, "
|
|
392
|
+
@allowed_email_patterns.setter
|
|
393
|
+
def allowed_email_patterns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
394
|
+
pulumi.set(self, "allowed_email_patterns", value)
|
|
395
|
+
|
|
396
|
+
@property
|
|
397
|
+
@pulumi.getter(name="allowedUserDomains")
|
|
398
|
+
def allowed_user_domains(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
399
|
+
"""
|
|
400
|
+
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.
|
|
401
|
+
"""
|
|
402
|
+
return pulumi.get(self, "allowed_user_domains")
|
|
403
|
+
|
|
404
|
+
@allowed_user_domains.setter
|
|
405
|
+
def allowed_user_domains(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
406
|
+
pulumi.set(self, "allowed_user_domains", value)
|
|
350
407
|
|
|
351
408
|
@property
|
|
352
409
|
@pulumi.getter
|
|
353
|
-
def
|
|
410
|
+
def comment(self) -> Optional[pulumi.Input[str]]:
|
|
354
411
|
"""
|
|
355
|
-
Specifies
|
|
412
|
+
Specifies a comment for the integration.
|
|
413
|
+
"""
|
|
414
|
+
return pulumi.get(self, "comment")
|
|
415
|
+
|
|
416
|
+
@comment.setter
|
|
417
|
+
def comment(self, value: Optional[pulumi.Input[str]]):
|
|
418
|
+
pulumi.set(self, "comment", value)
|
|
419
|
+
|
|
420
|
+
@property
|
|
421
|
+
@pulumi.getter(name="describeOutputs")
|
|
422
|
+
def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]]]:
|
|
423
|
+
"""
|
|
424
|
+
Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
425
|
+
"""
|
|
426
|
+
return pulumi.get(self, "describe_outputs")
|
|
427
|
+
|
|
428
|
+
@describe_outputs.setter
|
|
429
|
+
def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationDescribeOutputArgs']]]]):
|
|
430
|
+
pulumi.set(self, "describe_outputs", value)
|
|
431
|
+
|
|
432
|
+
@property
|
|
433
|
+
@pulumi.getter
|
|
434
|
+
def enabled(self) -> Optional[pulumi.Input[str]]:
|
|
435
|
+
"""
|
|
436
|
+
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.
|
|
356
437
|
"""
|
|
357
438
|
return pulumi.get(self, "enabled")
|
|
358
439
|
|
|
359
440
|
@enabled.setter
|
|
360
|
-
def enabled(self, value: Optional[pulumi.Input[
|
|
441
|
+
def enabled(self, value: Optional[pulumi.Input[str]]):
|
|
361
442
|
pulumi.set(self, "enabled", value)
|
|
362
443
|
|
|
444
|
+
@property
|
|
445
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
446
|
+
def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
|
|
447
|
+
"""
|
|
448
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
449
|
+
"""
|
|
450
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
451
|
+
|
|
452
|
+
@fully_qualified_name.setter
|
|
453
|
+
def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
|
|
454
|
+
pulumi.set(self, "fully_qualified_name", value)
|
|
455
|
+
|
|
363
456
|
@property
|
|
364
457
|
@pulumi.getter
|
|
365
458
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
366
459
|
"""
|
|
367
|
-
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.
|
|
460
|
+
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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
368
461
|
"""
|
|
369
462
|
return pulumi.get(self, "name")
|
|
370
463
|
|
|
@@ -372,37 +465,28 @@ class _SamlIntegrationState:
|
|
|
372
465
|
def name(self, value: Optional[pulumi.Input[str]]):
|
|
373
466
|
pulumi.set(self, "name", value)
|
|
374
467
|
|
|
375
|
-
@property
|
|
376
|
-
@pulumi.getter(name="saml2DigestMethodsUsed")
|
|
377
|
-
def saml2_digest_methods_used(self) -> Optional[pulumi.Input[str]]:
|
|
378
|
-
return pulumi.get(self, "saml2_digest_methods_used")
|
|
379
|
-
|
|
380
|
-
@saml2_digest_methods_used.setter
|
|
381
|
-
def saml2_digest_methods_used(self, value: Optional[pulumi.Input[str]]):
|
|
382
|
-
pulumi.set(self, "saml2_digest_methods_used", value)
|
|
383
|
-
|
|
384
468
|
@property
|
|
385
469
|
@pulumi.getter(name="saml2EnableSpInitiated")
|
|
386
|
-
def saml2_enable_sp_initiated(self) -> Optional[pulumi.Input[
|
|
470
|
+
def saml2_enable_sp_initiated(self) -> Optional[pulumi.Input[str]]:
|
|
387
471
|
"""
|
|
388
|
-
The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in
|
|
472
|
+
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.
|
|
389
473
|
"""
|
|
390
474
|
return pulumi.get(self, "saml2_enable_sp_initiated")
|
|
391
475
|
|
|
392
476
|
@saml2_enable_sp_initiated.setter
|
|
393
|
-
def saml2_enable_sp_initiated(self, value: Optional[pulumi.Input[
|
|
477
|
+
def saml2_enable_sp_initiated(self, value: Optional[pulumi.Input[str]]):
|
|
394
478
|
pulumi.set(self, "saml2_enable_sp_initiated", value)
|
|
395
479
|
|
|
396
480
|
@property
|
|
397
481
|
@pulumi.getter(name="saml2ForceAuthn")
|
|
398
|
-
def saml2_force_authn(self) -> Optional[pulumi.Input[
|
|
482
|
+
def saml2_force_authn(self) -> Optional[pulumi.Input[str]]:
|
|
399
483
|
"""
|
|
400
|
-
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.
|
|
484
|
+
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.
|
|
401
485
|
"""
|
|
402
486
|
return pulumi.get(self, "saml2_force_authn")
|
|
403
487
|
|
|
404
488
|
@saml2_force_authn.setter
|
|
405
|
-
def saml2_force_authn(self, value: Optional[pulumi.Input[
|
|
489
|
+
def saml2_force_authn(self, value: Optional[pulumi.Input[str]]):
|
|
406
490
|
pulumi.set(self, "saml2_force_authn", value)
|
|
407
491
|
|
|
408
492
|
@property
|
|
@@ -433,7 +517,7 @@ class _SamlIntegrationState:
|
|
|
433
517
|
@pulumi.getter(name="saml2Provider")
|
|
434
518
|
def saml2_provider(self) -> Optional[pulumi.Input[str]]:
|
|
435
519
|
"""
|
|
436
|
-
The string describing the IdP.
|
|
520
|
+
The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
437
521
|
"""
|
|
438
522
|
return pulumi.get(self, "saml2_provider")
|
|
439
523
|
|
|
@@ -445,7 +529,7 @@ class _SamlIntegrationState:
|
|
|
445
529
|
@pulumi.getter(name="saml2RequestedNameidFormat")
|
|
446
530
|
def saml2_requested_nameid_format(self) -> Optional[pulumi.Input[str]]:
|
|
447
531
|
"""
|
|
448
|
-
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.
|
|
532
|
+
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`.
|
|
449
533
|
"""
|
|
450
534
|
return pulumi.get(self, "saml2_requested_nameid_format")
|
|
451
535
|
|
|
@@ -455,30 +539,21 @@ class _SamlIntegrationState:
|
|
|
455
539
|
|
|
456
540
|
@property
|
|
457
541
|
@pulumi.getter(name="saml2SignRequest")
|
|
458
|
-
def saml2_sign_request(self) -> Optional[pulumi.Input[
|
|
542
|
+
def saml2_sign_request(self) -> Optional[pulumi.Input[str]]:
|
|
459
543
|
"""
|
|
460
|
-
The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed.
|
|
544
|
+
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.
|
|
461
545
|
"""
|
|
462
546
|
return pulumi.get(self, "saml2_sign_request")
|
|
463
547
|
|
|
464
548
|
@saml2_sign_request.setter
|
|
465
|
-
def saml2_sign_request(self, value: Optional[pulumi.Input[
|
|
549
|
+
def saml2_sign_request(self, value: Optional[pulumi.Input[str]]):
|
|
466
550
|
pulumi.set(self, "saml2_sign_request", value)
|
|
467
551
|
|
|
468
|
-
@property
|
|
469
|
-
@pulumi.getter(name="saml2SignatureMethodsUsed")
|
|
470
|
-
def saml2_signature_methods_used(self) -> Optional[pulumi.Input[str]]:
|
|
471
|
-
return pulumi.get(self, "saml2_signature_methods_used")
|
|
472
|
-
|
|
473
|
-
@saml2_signature_methods_used.setter
|
|
474
|
-
def saml2_signature_methods_used(self, value: Optional[pulumi.Input[str]]):
|
|
475
|
-
pulumi.set(self, "saml2_signature_methods_used", value)
|
|
476
|
-
|
|
477
552
|
@property
|
|
478
553
|
@pulumi.getter(name="saml2SnowflakeAcsUrl")
|
|
479
554
|
def saml2_snowflake_acs_url(self) -> Optional[pulumi.Input[str]]:
|
|
480
555
|
"""
|
|
481
|
-
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.
|
|
556
|
+
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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
482
557
|
"""
|
|
483
558
|
return pulumi.get(self, "saml2_snowflake_acs_url")
|
|
484
559
|
|
|
@@ -490,7 +565,7 @@ class _SamlIntegrationState:
|
|
|
490
565
|
@pulumi.getter(name="saml2SnowflakeIssuerUrl")
|
|
491
566
|
def saml2_snowflake_issuer_url(self) -> Optional[pulumi.Input[str]]:
|
|
492
567
|
"""
|
|
493
|
-
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.
|
|
568
|
+
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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
494
569
|
"""
|
|
495
570
|
return pulumi.get(self, "saml2_snowflake_issuer_url")
|
|
496
571
|
|
|
@@ -498,35 +573,11 @@ class _SamlIntegrationState:
|
|
|
498
573
|
def saml2_snowflake_issuer_url(self, value: Optional[pulumi.Input[str]]):
|
|
499
574
|
pulumi.set(self, "saml2_snowflake_issuer_url", value)
|
|
500
575
|
|
|
501
|
-
@property
|
|
502
|
-
@pulumi.getter(name="saml2SnowflakeMetadata")
|
|
503
|
-
def saml2_snowflake_metadata(self) -> Optional[pulumi.Input[str]]:
|
|
504
|
-
"""
|
|
505
|
-
Metadata created by Snowflake to provide to SAML2 provider.
|
|
506
|
-
"""
|
|
507
|
-
return pulumi.get(self, "saml2_snowflake_metadata")
|
|
508
|
-
|
|
509
|
-
@saml2_snowflake_metadata.setter
|
|
510
|
-
def saml2_snowflake_metadata(self, value: Optional[pulumi.Input[str]]):
|
|
511
|
-
pulumi.set(self, "saml2_snowflake_metadata", value)
|
|
512
|
-
|
|
513
|
-
@property
|
|
514
|
-
@pulumi.getter(name="saml2SnowflakeX509Cert")
|
|
515
|
-
def saml2_snowflake_x509_cert(self) -> Optional[pulumi.Input[str]]:
|
|
516
|
-
"""
|
|
517
|
-
The Base64 encoded self-signed certificate generated by Snowflake for use with Encrypting SAML Assertions and Signed SAML Requests. You must have at least one of these features (encrypted SAML assertions or signed SAML responses) enabled in your Snowflake account to access the certificate value.
|
|
518
|
-
"""
|
|
519
|
-
return pulumi.get(self, "saml2_snowflake_x509_cert")
|
|
520
|
-
|
|
521
|
-
@saml2_snowflake_x509_cert.setter
|
|
522
|
-
def saml2_snowflake_x509_cert(self, value: Optional[pulumi.Input[str]]):
|
|
523
|
-
pulumi.set(self, "saml2_snowflake_x509_cert", value)
|
|
524
|
-
|
|
525
576
|
@property
|
|
526
577
|
@pulumi.getter(name="saml2SpInitiatedLoginPageLabel")
|
|
527
578
|
def saml2_sp_initiated_login_page_label(self) -> Optional[pulumi.Input[str]]:
|
|
528
579
|
"""
|
|
529
|
-
The string containing the label to display after the Log In With button on the login page.
|
|
580
|
+
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.
|
|
530
581
|
"""
|
|
531
582
|
return pulumi.get(self, "saml2_sp_initiated_login_page_label")
|
|
532
583
|
|
|
@@ -558,64 +609,66 @@ class _SamlIntegrationState:
|
|
|
558
609
|
def saml2_x509_cert(self, value: Optional[pulumi.Input[str]]):
|
|
559
610
|
pulumi.set(self, "saml2_x509_cert", value)
|
|
560
611
|
|
|
612
|
+
@property
|
|
613
|
+
@pulumi.getter(name="showOutputs")
|
|
614
|
+
def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]]]:
|
|
615
|
+
"""
|
|
616
|
+
Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
617
|
+
"""
|
|
618
|
+
return pulumi.get(self, "show_outputs")
|
|
619
|
+
|
|
620
|
+
@show_outputs.setter
|
|
621
|
+
def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Saml2IntegrationShowOutputArgs']]]]):
|
|
622
|
+
pulumi.set(self, "show_outputs", value)
|
|
561
623
|
|
|
562
|
-
|
|
624
|
+
|
|
625
|
+
class Saml2Integration(pulumi.CustomResource):
|
|
563
626
|
@overload
|
|
564
627
|
def __init__(__self__,
|
|
565
628
|
resource_name: str,
|
|
566
629
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
567
|
-
|
|
630
|
+
allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
631
|
+
allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
632
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
633
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
568
634
|
name: Optional[pulumi.Input[str]] = None,
|
|
569
|
-
saml2_enable_sp_initiated: Optional[pulumi.Input[
|
|
570
|
-
saml2_force_authn: Optional[pulumi.Input[
|
|
635
|
+
saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
|
|
636
|
+
saml2_force_authn: Optional[pulumi.Input[str]] = None,
|
|
571
637
|
saml2_issuer: Optional[pulumi.Input[str]] = None,
|
|
572
638
|
saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
|
|
573
639
|
saml2_provider: Optional[pulumi.Input[str]] = None,
|
|
574
640
|
saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
|
|
575
|
-
saml2_sign_request: Optional[pulumi.Input[
|
|
641
|
+
saml2_sign_request: Optional[pulumi.Input[str]] = None,
|
|
576
642
|
saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
|
|
577
643
|
saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
|
|
578
|
-
saml2_snowflake_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
579
644
|
saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
|
|
580
645
|
saml2_sso_url: Optional[pulumi.Input[str]] = None,
|
|
581
646
|
saml2_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
582
647
|
__props__=None):
|
|
583
648
|
"""
|
|
584
|
-
## Example Usage
|
|
585
|
-
|
|
586
|
-
```python
|
|
587
|
-
import pulumi
|
|
588
|
-
import pulumi_snowflake as snowflake
|
|
589
|
-
|
|
590
|
-
saml_integration = snowflake.SamlIntegration("samlIntegration",
|
|
591
|
-
enabled=True,
|
|
592
|
-
saml2_issuer="test_issuer",
|
|
593
|
-
saml2_provider="CUSTOM",
|
|
594
|
-
saml2_sso_url="https://testsamlissuer.com",
|
|
595
|
-
saml2_x509_cert="MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiMD6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO")
|
|
596
|
-
```
|
|
597
|
-
|
|
598
649
|
## Import
|
|
599
650
|
|
|
600
651
|
```sh
|
|
601
|
-
|
|
652
|
+
$ pulumi import snowflake:index/saml2Integration:Saml2Integration example '"<integration_name>"'
|
|
602
653
|
```
|
|
603
654
|
|
|
604
655
|
:param str resource_name: The name of the resource.
|
|
605
656
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
606
|
-
:param pulumi.Input[
|
|
607
|
-
:param pulumi.Input[str]
|
|
608
|
-
:param pulumi.Input[
|
|
609
|
-
:param pulumi.Input[
|
|
657
|
+
: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.
|
|
658
|
+
: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.
|
|
659
|
+
:param pulumi.Input[str] comment: Specifies a comment for the integration.
|
|
660
|
+
: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.
|
|
661
|
+
: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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
662
|
+
: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.
|
|
663
|
+
: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.
|
|
610
664
|
:param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
|
|
611
665
|
: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.
|
|
612
|
-
:param pulumi.Input[str] saml2_provider: The string describing the IdP.
|
|
613
|
-
: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.
|
|
614
|
-
:param pulumi.Input[
|
|
615
|
-
: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.
|
|
616
|
-
: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.
|
|
617
|
-
:param pulumi.Input[str]
|
|
618
|
-
: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.
|
|
666
|
+
:param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
667
|
+
: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`.
|
|
668
|
+
: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.
|
|
669
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
670
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
671
|
+
: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.
|
|
619
672
|
: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.
|
|
620
673
|
: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.
|
|
621
674
|
"""
|
|
@@ -623,36 +676,22 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
623
676
|
@overload
|
|
624
677
|
def __init__(__self__,
|
|
625
678
|
resource_name: str,
|
|
626
|
-
args:
|
|
679
|
+
args: Saml2IntegrationArgs,
|
|
627
680
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
628
681
|
"""
|
|
629
|
-
## Example Usage
|
|
630
|
-
|
|
631
|
-
```python
|
|
632
|
-
import pulumi
|
|
633
|
-
import pulumi_snowflake as snowflake
|
|
634
|
-
|
|
635
|
-
saml_integration = snowflake.SamlIntegration("samlIntegration",
|
|
636
|
-
enabled=True,
|
|
637
|
-
saml2_issuer="test_issuer",
|
|
638
|
-
saml2_provider="CUSTOM",
|
|
639
|
-
saml2_sso_url="https://testsamlissuer.com",
|
|
640
|
-
saml2_x509_cert="MIICYzCCAcygAwIBAgIBADANBgkqhkiG9w0BAQUFADAuMQswCQYDVQQGEwJVUzEMMAoGA1UEChMDSUJNMREwDwYDVQQLEwhMb2NhbCBDQTAeFw05OTEyMjIwNTAwMDBaFw0wMDEyMjMwNDU5NTlaMC4xCzAJBgNVBAYTAlVTMQwwCgYDVQQKEwNJQk0xETAPBgNVBAsTCExvY2FsIENBMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQD2bZEo7xGaX2/0GHkrNFZvlxBou9v1Jmt/PDiTMPve8r9FeJAQ0QdvFST/0JPQYD20rH0bimdDLgNdNynmyRoS2S/IInfpmf69iyc2G0TPyRvmHIiOZbdCd+YBHQi1adkj17NDcWj6S14tVurFX73zx0sNoMS79q3tuXKrDsxeuwIDAQABo4GQMIGNMEsGCVUdDwGG+EIBDQQ+EzxHZW5lcmF0ZWQgYnkgdGhlIFNlY3VyZVdheSBTZWN1cml0eSBTZXJ2ZXIgZm9yIE9TLzM5MCAoUkFDRikwDgYDVR0PAQH/BAQDAgAGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ3+ocRyCTJw067dLSwr/nalx6YMMA0GCSqGSIb3DQEBBQUAA4GBAMaQzt+zaj1GU77yzlr8iiMBXgdQrwsZZWJo5exnAucJAEYQZmOfyLiMD6oYq+ZnfvM0n8G/Y79q8nhwvuxpYOnRSAXFp6xSkrIOeZtJMY1h00LKp/JX3Ng1svZ2agE126JHsQ0bhzN5TKsYfbwfTwfjdWAGy6Vf1nYi/rO+ryMO")
|
|
641
|
-
```
|
|
642
|
-
|
|
643
682
|
## Import
|
|
644
683
|
|
|
645
684
|
```sh
|
|
646
|
-
|
|
685
|
+
$ pulumi import snowflake:index/saml2Integration:Saml2Integration example '"<integration_name>"'
|
|
647
686
|
```
|
|
648
687
|
|
|
649
688
|
:param str resource_name: The name of the resource.
|
|
650
|
-
:param
|
|
689
|
+
:param Saml2IntegrationArgs args: The arguments to use to populate this resource's properties.
|
|
651
690
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
652
691
|
"""
|
|
653
692
|
...
|
|
654
693
|
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
655
|
-
resource_args, opts = _utilities.get_resource_args_opts(
|
|
694
|
+
resource_args, opts = _utilities.get_resource_args_opts(Saml2IntegrationArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
656
695
|
if resource_args is not None:
|
|
657
696
|
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
658
697
|
else:
|
|
@@ -661,18 +700,20 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
661
700
|
def _internal_init(__self__,
|
|
662
701
|
resource_name: str,
|
|
663
702
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
664
|
-
|
|
703
|
+
allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
704
|
+
allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
705
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
706
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
665
707
|
name: Optional[pulumi.Input[str]] = None,
|
|
666
|
-
saml2_enable_sp_initiated: Optional[pulumi.Input[
|
|
667
|
-
saml2_force_authn: Optional[pulumi.Input[
|
|
708
|
+
saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
|
|
709
|
+
saml2_force_authn: Optional[pulumi.Input[str]] = None,
|
|
668
710
|
saml2_issuer: Optional[pulumi.Input[str]] = None,
|
|
669
711
|
saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
|
|
670
712
|
saml2_provider: Optional[pulumi.Input[str]] = None,
|
|
671
713
|
saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
|
|
672
|
-
saml2_sign_request: Optional[pulumi.Input[
|
|
714
|
+
saml2_sign_request: Optional[pulumi.Input[str]] = None,
|
|
673
715
|
saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
|
|
674
716
|
saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
|
|
675
|
-
saml2_snowflake_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
676
717
|
saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
|
|
677
718
|
saml2_sso_url: Optional[pulumi.Input[str]] = None,
|
|
678
719
|
saml2_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
@@ -683,8 +724,11 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
683
724
|
if opts.id is None:
|
|
684
725
|
if __props__ is not None:
|
|
685
726
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
686
|
-
__props__ =
|
|
727
|
+
__props__ = Saml2IntegrationArgs.__new__(Saml2IntegrationArgs)
|
|
687
728
|
|
|
729
|
+
__props__.__dict__["allowed_email_patterns"] = allowed_email_patterns
|
|
730
|
+
__props__.__dict__["allowed_user_domains"] = allowed_user_domains
|
|
731
|
+
__props__.__dict__["comment"] = comment
|
|
688
732
|
__props__.__dict__["enabled"] = enabled
|
|
689
733
|
__props__.__dict__["name"] = name
|
|
690
734
|
__props__.__dict__["saml2_enable_sp_initiated"] = saml2_enable_sp_initiated
|
|
@@ -700,7 +744,6 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
700
744
|
__props__.__dict__["saml2_sign_request"] = saml2_sign_request
|
|
701
745
|
__props__.__dict__["saml2_snowflake_acs_url"] = saml2_snowflake_acs_url
|
|
702
746
|
__props__.__dict__["saml2_snowflake_issuer_url"] = saml2_snowflake_issuer_url
|
|
703
|
-
__props__.__dict__["saml2_snowflake_x509_cert"] = saml2_snowflake_x509_cert
|
|
704
747
|
__props__.__dict__["saml2_sp_initiated_login_page_label"] = saml2_sp_initiated_login_page_label
|
|
705
748
|
if saml2_sso_url is None and not opts.urn:
|
|
706
749
|
raise TypeError("Missing required property 'saml2_sso_url'")
|
|
@@ -708,12 +751,11 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
708
751
|
if saml2_x509_cert is None and not opts.urn:
|
|
709
752
|
raise TypeError("Missing required property 'saml2_x509_cert'")
|
|
710
753
|
__props__.__dict__["saml2_x509_cert"] = saml2_x509_cert
|
|
711
|
-
__props__.__dict__["
|
|
712
|
-
__props__.__dict__["
|
|
713
|
-
__props__.__dict__["
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
'snowflake:index/samlIntegration:SamlIntegration',
|
|
754
|
+
__props__.__dict__["describe_outputs"] = None
|
|
755
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
756
|
+
__props__.__dict__["show_outputs"] = None
|
|
757
|
+
super(Saml2Integration, __self__).__init__(
|
|
758
|
+
'snowflake:index/saml2Integration:Saml2Integration',
|
|
717
759
|
resource_name,
|
|
718
760
|
__props__,
|
|
719
761
|
opts)
|
|
@@ -722,58 +764,65 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
722
764
|
def get(resource_name: str,
|
|
723
765
|
id: pulumi.Input[str],
|
|
724
766
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
725
|
-
|
|
726
|
-
|
|
767
|
+
allowed_email_patterns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
768
|
+
allowed_user_domains: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
769
|
+
comment: Optional[pulumi.Input[str]] = None,
|
|
770
|
+
describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['Saml2IntegrationDescribeOutputArgs', 'Saml2IntegrationDescribeOutputArgsDict']]]]] = None,
|
|
771
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
772
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
727
773
|
name: Optional[pulumi.Input[str]] = None,
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
saml2_force_authn: Optional[pulumi.Input[bool]] = None,
|
|
774
|
+
saml2_enable_sp_initiated: Optional[pulumi.Input[str]] = None,
|
|
775
|
+
saml2_force_authn: Optional[pulumi.Input[str]] = None,
|
|
731
776
|
saml2_issuer: Optional[pulumi.Input[str]] = None,
|
|
732
777
|
saml2_post_logout_redirect_url: Optional[pulumi.Input[str]] = None,
|
|
733
778
|
saml2_provider: Optional[pulumi.Input[str]] = None,
|
|
734
779
|
saml2_requested_nameid_format: Optional[pulumi.Input[str]] = None,
|
|
735
|
-
saml2_sign_request: Optional[pulumi.Input[
|
|
736
|
-
saml2_signature_methods_used: Optional[pulumi.Input[str]] = None,
|
|
780
|
+
saml2_sign_request: Optional[pulumi.Input[str]] = None,
|
|
737
781
|
saml2_snowflake_acs_url: Optional[pulumi.Input[str]] = None,
|
|
738
782
|
saml2_snowflake_issuer_url: Optional[pulumi.Input[str]] = None,
|
|
739
|
-
saml2_snowflake_metadata: Optional[pulumi.Input[str]] = None,
|
|
740
|
-
saml2_snowflake_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
741
783
|
saml2_sp_initiated_login_page_label: Optional[pulumi.Input[str]] = None,
|
|
742
784
|
saml2_sso_url: Optional[pulumi.Input[str]] = None,
|
|
743
|
-
saml2_x509_cert: Optional[pulumi.Input[str]] = None
|
|
785
|
+
saml2_x509_cert: Optional[pulumi.Input[str]] = None,
|
|
786
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['Saml2IntegrationShowOutputArgs', 'Saml2IntegrationShowOutputArgsDict']]]]] = None) -> 'Saml2Integration':
|
|
744
787
|
"""
|
|
745
|
-
Get an existing
|
|
788
|
+
Get an existing Saml2Integration resource's state with the given name, id, and optional extra
|
|
746
789
|
properties used to qualify the lookup.
|
|
747
790
|
|
|
748
791
|
:param str resource_name: The unique name of the resulting resource.
|
|
749
792
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
750
793
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
751
|
-
:param pulumi.Input[str]
|
|
752
|
-
:param pulumi.Input[
|
|
753
|
-
:param pulumi.Input[str]
|
|
754
|
-
:param pulumi.Input[
|
|
755
|
-
:param pulumi.Input[
|
|
794
|
+
: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.
|
|
795
|
+
: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.
|
|
796
|
+
:param pulumi.Input[str] comment: Specifies a comment for the integration.
|
|
797
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['Saml2IntegrationDescribeOutputArgs', 'Saml2IntegrationDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
798
|
+
: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.
|
|
799
|
+
:param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
800
|
+
: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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
801
|
+
: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.
|
|
802
|
+
: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.
|
|
756
803
|
:param pulumi.Input[str] saml2_issuer: The string containing the IdP EntityID / Issuer.
|
|
757
804
|
: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.
|
|
758
|
-
:param pulumi.Input[str] saml2_provider: The string describing the IdP.
|
|
759
|
-
: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.
|
|
760
|
-
:param pulumi.Input[
|
|
761
|
-
: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.
|
|
762
|
-
: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.
|
|
763
|
-
:param pulumi.Input[str]
|
|
764
|
-
:param pulumi.Input[str] saml2_snowflake_x509_cert: The Base64 encoded self-signed certificate generated by Snowflake for use with Encrypting SAML Assertions and Signed SAML Requests. You must have at least one of these features (encrypted SAML assertions or signed SAML responses) enabled in your Snowflake account to access the certificate value.
|
|
765
|
-
: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.
|
|
805
|
+
:param pulumi.Input[str] saml2_provider: The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
806
|
+
: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`.
|
|
807
|
+
: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.
|
|
808
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
809
|
+
: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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
810
|
+
: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.
|
|
766
811
|
: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.
|
|
767
812
|
: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.
|
|
813
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['Saml2IntegrationShowOutputArgs', 'Saml2IntegrationShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
768
814
|
"""
|
|
769
815
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
770
816
|
|
|
771
|
-
__props__ =
|
|
817
|
+
__props__ = _Saml2IntegrationState.__new__(_Saml2IntegrationState)
|
|
772
818
|
|
|
773
|
-
__props__.__dict__["
|
|
819
|
+
__props__.__dict__["allowed_email_patterns"] = allowed_email_patterns
|
|
820
|
+
__props__.__dict__["allowed_user_domains"] = allowed_user_domains
|
|
821
|
+
__props__.__dict__["comment"] = comment
|
|
822
|
+
__props__.__dict__["describe_outputs"] = describe_outputs
|
|
774
823
|
__props__.__dict__["enabled"] = enabled
|
|
824
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
775
825
|
__props__.__dict__["name"] = name
|
|
776
|
-
__props__.__dict__["saml2_digest_methods_used"] = saml2_digest_methods_used
|
|
777
826
|
__props__.__dict__["saml2_enable_sp_initiated"] = saml2_enable_sp_initiated
|
|
778
827
|
__props__.__dict__["saml2_force_authn"] = saml2_force_authn
|
|
779
828
|
__props__.__dict__["saml2_issuer"] = saml2_issuer
|
|
@@ -781,58 +830,83 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
781
830
|
__props__.__dict__["saml2_provider"] = saml2_provider
|
|
782
831
|
__props__.__dict__["saml2_requested_nameid_format"] = saml2_requested_nameid_format
|
|
783
832
|
__props__.__dict__["saml2_sign_request"] = saml2_sign_request
|
|
784
|
-
__props__.__dict__["saml2_signature_methods_used"] = saml2_signature_methods_used
|
|
785
833
|
__props__.__dict__["saml2_snowflake_acs_url"] = saml2_snowflake_acs_url
|
|
786
834
|
__props__.__dict__["saml2_snowflake_issuer_url"] = saml2_snowflake_issuer_url
|
|
787
|
-
__props__.__dict__["saml2_snowflake_metadata"] = saml2_snowflake_metadata
|
|
788
|
-
__props__.__dict__["saml2_snowflake_x509_cert"] = saml2_snowflake_x509_cert
|
|
789
835
|
__props__.__dict__["saml2_sp_initiated_login_page_label"] = saml2_sp_initiated_login_page_label
|
|
790
836
|
__props__.__dict__["saml2_sso_url"] = saml2_sso_url
|
|
791
837
|
__props__.__dict__["saml2_x509_cert"] = saml2_x509_cert
|
|
792
|
-
|
|
838
|
+
__props__.__dict__["show_outputs"] = show_outputs
|
|
839
|
+
return Saml2Integration(resource_name, opts=opts, __props__=__props__)
|
|
793
840
|
|
|
794
841
|
@property
|
|
795
|
-
@pulumi.getter(name="
|
|
796
|
-
def
|
|
842
|
+
@pulumi.getter(name="allowedEmailPatterns")
|
|
843
|
+
def allowed_email_patterns(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
797
844
|
"""
|
|
798
|
-
|
|
845
|
+
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.
|
|
799
846
|
"""
|
|
800
|
-
return pulumi.get(self, "
|
|
847
|
+
return pulumi.get(self, "allowed_email_patterns")
|
|
848
|
+
|
|
849
|
+
@property
|
|
850
|
+
@pulumi.getter(name="allowedUserDomains")
|
|
851
|
+
def allowed_user_domains(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
852
|
+
"""
|
|
853
|
+
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.
|
|
854
|
+
"""
|
|
855
|
+
return pulumi.get(self, "allowed_user_domains")
|
|
801
856
|
|
|
802
857
|
@property
|
|
803
858
|
@pulumi.getter
|
|
804
|
-
def
|
|
859
|
+
def comment(self) -> pulumi.Output[Optional[str]]:
|
|
805
860
|
"""
|
|
806
|
-
Specifies
|
|
861
|
+
Specifies a comment for the integration.
|
|
862
|
+
"""
|
|
863
|
+
return pulumi.get(self, "comment")
|
|
864
|
+
|
|
865
|
+
@property
|
|
866
|
+
@pulumi.getter(name="describeOutputs")
|
|
867
|
+
def describe_outputs(self) -> pulumi.Output[Sequence['outputs.Saml2IntegrationDescribeOutput']]:
|
|
868
|
+
"""
|
|
869
|
+
Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
870
|
+
"""
|
|
871
|
+
return pulumi.get(self, "describe_outputs")
|
|
872
|
+
|
|
873
|
+
@property
|
|
874
|
+
@pulumi.getter
|
|
875
|
+
def enabled(self) -> pulumi.Output[Optional[str]]:
|
|
876
|
+
"""
|
|
877
|
+
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.
|
|
807
878
|
"""
|
|
808
879
|
return pulumi.get(self, "enabled")
|
|
809
880
|
|
|
881
|
+
@property
|
|
882
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
883
|
+
def fully_qualified_name(self) -> pulumi.Output[str]:
|
|
884
|
+
"""
|
|
885
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
886
|
+
"""
|
|
887
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
888
|
+
|
|
810
889
|
@property
|
|
811
890
|
@pulumi.getter
|
|
812
891
|
def name(self) -> pulumi.Output[str]:
|
|
813
892
|
"""
|
|
814
|
-
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.
|
|
893
|
+
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. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
815
894
|
"""
|
|
816
895
|
return pulumi.get(self, "name")
|
|
817
896
|
|
|
818
|
-
@property
|
|
819
|
-
@pulumi.getter(name="saml2DigestMethodsUsed")
|
|
820
|
-
def saml2_digest_methods_used(self) -> pulumi.Output[str]:
|
|
821
|
-
return pulumi.get(self, "saml2_digest_methods_used")
|
|
822
|
-
|
|
823
897
|
@property
|
|
824
898
|
@pulumi.getter(name="saml2EnableSpInitiated")
|
|
825
|
-
def saml2_enable_sp_initiated(self) -> pulumi.Output[Optional[
|
|
899
|
+
def saml2_enable_sp_initiated(self) -> pulumi.Output[Optional[str]]:
|
|
826
900
|
"""
|
|
827
|
-
The Boolean indicating if the Log In With button will be shown on the login page. TRUE: displays the Log in
|
|
901
|
+
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.
|
|
828
902
|
"""
|
|
829
903
|
return pulumi.get(self, "saml2_enable_sp_initiated")
|
|
830
904
|
|
|
831
905
|
@property
|
|
832
906
|
@pulumi.getter(name="saml2ForceAuthn")
|
|
833
|
-
def saml2_force_authn(self) -> pulumi.Output[Optional[
|
|
907
|
+
def saml2_force_authn(self) -> pulumi.Output[Optional[str]]:
|
|
834
908
|
"""
|
|
835
|
-
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.
|
|
909
|
+
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.
|
|
836
910
|
"""
|
|
837
911
|
return pulumi.get(self, "saml2_force_authn")
|
|
838
912
|
|
|
@@ -856,7 +930,7 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
856
930
|
@pulumi.getter(name="saml2Provider")
|
|
857
931
|
def saml2_provider(self) -> pulumi.Output[str]:
|
|
858
932
|
"""
|
|
859
|
-
The string describing the IdP.
|
|
933
|
+
The string describing the IdP. Valid options are: `OKTA` | `ADFS` | `CUSTOM`.
|
|
860
934
|
"""
|
|
861
935
|
return pulumi.get(self, "saml2_provider")
|
|
862
936
|
|
|
@@ -864,60 +938,39 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
864
938
|
@pulumi.getter(name="saml2RequestedNameidFormat")
|
|
865
939
|
def saml2_requested_nameid_format(self) -> pulumi.Output[Optional[str]]:
|
|
866
940
|
"""
|
|
867
|
-
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.
|
|
941
|
+
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`.
|
|
868
942
|
"""
|
|
869
943
|
return pulumi.get(self, "saml2_requested_nameid_format")
|
|
870
944
|
|
|
871
945
|
@property
|
|
872
946
|
@pulumi.getter(name="saml2SignRequest")
|
|
873
|
-
def saml2_sign_request(self) -> pulumi.Output[Optional[
|
|
947
|
+
def saml2_sign_request(self) -> pulumi.Output[Optional[str]]:
|
|
874
948
|
"""
|
|
875
|
-
The Boolean indicating whether SAML requests are signed. TRUE: allows SAML requests to be signed. FALSE: does not allow SAML requests to be signed.
|
|
949
|
+
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.
|
|
876
950
|
"""
|
|
877
951
|
return pulumi.get(self, "saml2_sign_request")
|
|
878
952
|
|
|
879
|
-
@property
|
|
880
|
-
@pulumi.getter(name="saml2SignatureMethodsUsed")
|
|
881
|
-
def saml2_signature_methods_used(self) -> pulumi.Output[str]:
|
|
882
|
-
return pulumi.get(self, "saml2_signature_methods_used")
|
|
883
|
-
|
|
884
953
|
@property
|
|
885
954
|
@pulumi.getter(name="saml2SnowflakeAcsUrl")
|
|
886
|
-
def saml2_snowflake_acs_url(self) -> pulumi.Output[str]:
|
|
955
|
+
def saml2_snowflake_acs_url(self) -> pulumi.Output[Optional[str]]:
|
|
887
956
|
"""
|
|
888
|
-
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.
|
|
957
|
+
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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
889
958
|
"""
|
|
890
959
|
return pulumi.get(self, "saml2_snowflake_acs_url")
|
|
891
960
|
|
|
892
961
|
@property
|
|
893
962
|
@pulumi.getter(name="saml2SnowflakeIssuerUrl")
|
|
894
|
-
def saml2_snowflake_issuer_url(self) -> pulumi.Output[str]:
|
|
963
|
+
def saml2_snowflake_issuer_url(self) -> pulumi.Output[Optional[str]]:
|
|
895
964
|
"""
|
|
896
|
-
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.
|
|
965
|
+
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. Because Okta does not support underscores in URLs, the underscore in the account name must be converted to a hyphen. See [docs](https://docs.snowflake.com/en/user-guide/organizations-connect#okta-urls).
|
|
897
966
|
"""
|
|
898
967
|
return pulumi.get(self, "saml2_snowflake_issuer_url")
|
|
899
968
|
|
|
900
|
-
@property
|
|
901
|
-
@pulumi.getter(name="saml2SnowflakeMetadata")
|
|
902
|
-
def saml2_snowflake_metadata(self) -> pulumi.Output[str]:
|
|
903
|
-
"""
|
|
904
|
-
Metadata created by Snowflake to provide to SAML2 provider.
|
|
905
|
-
"""
|
|
906
|
-
return pulumi.get(self, "saml2_snowflake_metadata")
|
|
907
|
-
|
|
908
|
-
@property
|
|
909
|
-
@pulumi.getter(name="saml2SnowflakeX509Cert")
|
|
910
|
-
def saml2_snowflake_x509_cert(self) -> pulumi.Output[str]:
|
|
911
|
-
"""
|
|
912
|
-
The Base64 encoded self-signed certificate generated by Snowflake for use with Encrypting SAML Assertions and Signed SAML Requests. You must have at least one of these features (encrypted SAML assertions or signed SAML responses) enabled in your Snowflake account to access the certificate value.
|
|
913
|
-
"""
|
|
914
|
-
return pulumi.get(self, "saml2_snowflake_x509_cert")
|
|
915
|
-
|
|
916
969
|
@property
|
|
917
970
|
@pulumi.getter(name="saml2SpInitiatedLoginPageLabel")
|
|
918
971
|
def saml2_sp_initiated_login_page_label(self) -> pulumi.Output[Optional[str]]:
|
|
919
972
|
"""
|
|
920
|
-
The string containing the label to display after the Log In With button on the login page.
|
|
973
|
+
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.
|
|
921
974
|
"""
|
|
922
975
|
return pulumi.get(self, "saml2_sp_initiated_login_page_label")
|
|
923
976
|
|
|
@@ -937,3 +990,11 @@ class SamlIntegration(pulumi.CustomResource):
|
|
|
937
990
|
"""
|
|
938
991
|
return pulumi.get(self, "saml2_x509_cert")
|
|
939
992
|
|
|
993
|
+
@property
|
|
994
|
+
@pulumi.getter(name="showOutputs")
|
|
995
|
+
def show_outputs(self) -> pulumi.Output[Sequence['outputs.Saml2IntegrationShowOutput']]:
|
|
996
|
+
"""
|
|
997
|
+
Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
998
|
+
"""
|
|
999
|
+
return pulumi.get(self, "show_outputs")
|
|
1000
|
+
|