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,38 +4,42 @@
|
|
|
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__ = ['OauthIntegrationForPartnerApplicationsArgs', 'OauthIntegrationForPartnerApplications']
|
|
13
20
|
|
|
14
21
|
@pulumi.input_type
|
|
15
|
-
class
|
|
22
|
+
class OauthIntegrationForPartnerApplicationsArgs:
|
|
16
23
|
def __init__(__self__, *,
|
|
17
24
|
oauth_client: pulumi.Input[str],
|
|
18
25
|
blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
19
26
|
comment: Optional[pulumi.Input[str]] = None,
|
|
20
|
-
enabled: Optional[pulumi.Input[
|
|
27
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
21
28
|
name: Optional[pulumi.Input[str]] = None,
|
|
22
|
-
|
|
23
|
-
oauth_issue_refresh_tokens: Optional[pulumi.Input[bool]] = None,
|
|
29
|
+
oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
|
|
24
30
|
oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
|
|
25
31
|
oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
|
|
26
32
|
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None):
|
|
27
33
|
"""
|
|
28
|
-
The set of arguments for constructing a
|
|
29
|
-
:param pulumi.Input[str] oauth_client:
|
|
30
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists:
|
|
34
|
+
The set of arguments for constructing a OauthIntegrationForPartnerApplications resource.
|
|
35
|
+
:param pulumi.Input[str] oauth_client: Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
36
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists: A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
31
37
|
:param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
|
|
32
|
-
:param pulumi.Input[
|
|
33
|
-
:param pulumi.Input[str] name: Specifies the name of the OAuth integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
|
|
34
|
-
:param pulumi.Input[str]
|
|
35
|
-
:param pulumi.Input[bool] oauth_issue_refresh_tokens: Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired.
|
|
36
|
-
:param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
38
|
+
:param pulumi.Input[str] enabled: Specifies whether this OAuth 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.
|
|
39
|
+
:param pulumi.Input[str] name: Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
40
|
+
:param pulumi.Input[str] oauth_issue_refresh_tokens: Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. 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.
|
|
37
41
|
:param pulumi.Input[int] oauth_refresh_token_validity: Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
|
|
38
|
-
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
42
|
+
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
39
43
|
"""
|
|
40
44
|
pulumi.set(__self__, "oauth_client", oauth_client)
|
|
41
45
|
if blocked_roles_lists is not None:
|
|
@@ -46,8 +50,6 @@ class OauthIntegrationArgs:
|
|
|
46
50
|
pulumi.set(__self__, "enabled", enabled)
|
|
47
51
|
if name is not None:
|
|
48
52
|
pulumi.set(__self__, "name", name)
|
|
49
|
-
if oauth_client_type is not None:
|
|
50
|
-
pulumi.set(__self__, "oauth_client_type", oauth_client_type)
|
|
51
53
|
if oauth_issue_refresh_tokens is not None:
|
|
52
54
|
pulumi.set(__self__, "oauth_issue_refresh_tokens", oauth_issue_refresh_tokens)
|
|
53
55
|
if oauth_redirect_uri is not None:
|
|
@@ -61,7 +63,7 @@ class OauthIntegrationArgs:
|
|
|
61
63
|
@pulumi.getter(name="oauthClient")
|
|
62
64
|
def oauth_client(self) -> pulumi.Input[str]:
|
|
63
65
|
"""
|
|
64
|
-
|
|
66
|
+
Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
65
67
|
"""
|
|
66
68
|
return pulumi.get(self, "oauth_client")
|
|
67
69
|
|
|
@@ -73,7 +75,7 @@ class OauthIntegrationArgs:
|
|
|
73
75
|
@pulumi.getter(name="blockedRolesLists")
|
|
74
76
|
def blocked_roles_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
75
77
|
"""
|
|
76
|
-
|
|
78
|
+
A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
77
79
|
"""
|
|
78
80
|
return pulumi.get(self, "blocked_roles_lists")
|
|
79
81
|
|
|
@@ -95,21 +97,21 @@ class OauthIntegrationArgs:
|
|
|
95
97
|
|
|
96
98
|
@property
|
|
97
99
|
@pulumi.getter
|
|
98
|
-
def enabled(self) -> Optional[pulumi.Input[
|
|
100
|
+
def enabled(self) -> Optional[pulumi.Input[str]]:
|
|
99
101
|
"""
|
|
100
|
-
Specifies whether this OAuth integration is enabled or disabled.
|
|
102
|
+
Specifies whether this OAuth 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.
|
|
101
103
|
"""
|
|
102
104
|
return pulumi.get(self, "enabled")
|
|
103
105
|
|
|
104
106
|
@enabled.setter
|
|
105
|
-
def enabled(self, value: Optional[pulumi.Input[
|
|
107
|
+
def enabled(self, value: Optional[pulumi.Input[str]]):
|
|
106
108
|
pulumi.set(self, "enabled", value)
|
|
107
109
|
|
|
108
110
|
@property
|
|
109
111
|
@pulumi.getter
|
|
110
112
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
111
113
|
"""
|
|
112
|
-
Specifies the name of the OAuth integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
|
|
114
|
+
Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
113
115
|
"""
|
|
114
116
|
return pulumi.get(self, "name")
|
|
115
117
|
|
|
@@ -117,36 +119,21 @@ class OauthIntegrationArgs:
|
|
|
117
119
|
def name(self, value: Optional[pulumi.Input[str]]):
|
|
118
120
|
pulumi.set(self, "name", value)
|
|
119
121
|
|
|
120
|
-
@property
|
|
121
|
-
@pulumi.getter(name="oauthClientType")
|
|
122
|
-
def oauth_client_type(self) -> Optional[pulumi.Input[str]]:
|
|
123
|
-
"""
|
|
124
|
-
Specifies the type of client being registered. Snowflake supports both confidential and public clients.
|
|
125
|
-
"""
|
|
126
|
-
return pulumi.get(self, "oauth_client_type")
|
|
127
|
-
|
|
128
|
-
@oauth_client_type.setter
|
|
129
|
-
def oauth_client_type(self, value: Optional[pulumi.Input[str]]):
|
|
130
|
-
pulumi.set(self, "oauth_client_type", value)
|
|
131
|
-
|
|
132
122
|
@property
|
|
133
123
|
@pulumi.getter(name="oauthIssueRefreshTokens")
|
|
134
|
-
def oauth_issue_refresh_tokens(self) -> Optional[pulumi.Input[
|
|
124
|
+
def oauth_issue_refresh_tokens(self) -> Optional[pulumi.Input[str]]:
|
|
135
125
|
"""
|
|
136
|
-
Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired.
|
|
126
|
+
Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. 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.
|
|
137
127
|
"""
|
|
138
128
|
return pulumi.get(self, "oauth_issue_refresh_tokens")
|
|
139
129
|
|
|
140
130
|
@oauth_issue_refresh_tokens.setter
|
|
141
|
-
def oauth_issue_refresh_tokens(self, value: Optional[pulumi.Input[
|
|
131
|
+
def oauth_issue_refresh_tokens(self, value: Optional[pulumi.Input[str]]):
|
|
142
132
|
pulumi.set(self, "oauth_issue_refresh_tokens", value)
|
|
143
133
|
|
|
144
134
|
@property
|
|
145
135
|
@pulumi.getter(name="oauthRedirectUri")
|
|
146
136
|
def oauth_redirect_uri(self) -> Optional[pulumi.Input[str]]:
|
|
147
|
-
"""
|
|
148
|
-
Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
149
|
-
"""
|
|
150
137
|
return pulumi.get(self, "oauth_redirect_uri")
|
|
151
138
|
|
|
152
139
|
@oauth_redirect_uri.setter
|
|
@@ -169,7 +156,7 @@ class OauthIntegrationArgs:
|
|
|
169
156
|
@pulumi.getter(name="oauthUseSecondaryRoles")
|
|
170
157
|
def oauth_use_secondary_roles(self) -> Optional[pulumi.Input[str]]:
|
|
171
158
|
"""
|
|
172
|
-
Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
159
|
+
Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
173
160
|
"""
|
|
174
161
|
return pulumi.get(self, "oauth_use_secondary_roles")
|
|
175
162
|
|
|
@@ -179,47 +166,50 @@ class OauthIntegrationArgs:
|
|
|
179
166
|
|
|
180
167
|
|
|
181
168
|
@pulumi.input_type
|
|
182
|
-
class
|
|
169
|
+
class _OauthIntegrationForPartnerApplicationsState:
|
|
183
170
|
def __init__(__self__, *,
|
|
184
171
|
blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
185
172
|
comment: Optional[pulumi.Input[str]] = None,
|
|
186
|
-
|
|
187
|
-
enabled: Optional[pulumi.Input[
|
|
173
|
+
describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsDescribeOutputArgs']]]] = None,
|
|
174
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
175
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
188
176
|
name: Optional[pulumi.Input[str]] = None,
|
|
189
177
|
oauth_client: Optional[pulumi.Input[str]] = None,
|
|
190
|
-
|
|
191
|
-
oauth_issue_refresh_tokens: Optional[pulumi.Input[bool]] = None,
|
|
178
|
+
oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
|
|
192
179
|
oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
|
|
193
180
|
oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
|
|
194
|
-
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None
|
|
181
|
+
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
|
|
182
|
+
related_parameters: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsRelatedParameterArgs']]]] = None,
|
|
183
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsShowOutputArgs']]]] = None):
|
|
195
184
|
"""
|
|
196
|
-
Input properties used for looking up and filtering
|
|
197
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists:
|
|
185
|
+
Input properties used for looking up and filtering OauthIntegrationForPartnerApplications resources.
|
|
186
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists: A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
198
187
|
:param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
|
|
199
|
-
:param pulumi.Input[
|
|
200
|
-
:param pulumi.Input[
|
|
201
|
-
:param pulumi.Input[str]
|
|
202
|
-
:param pulumi.Input[str]
|
|
203
|
-
:param pulumi.Input[str]
|
|
204
|
-
:param pulumi.Input[
|
|
205
|
-
:param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
188
|
+
:param pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
189
|
+
:param pulumi.Input[str] enabled: Specifies whether this OAuth 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.
|
|
190
|
+
: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).
|
|
191
|
+
:param pulumi.Input[str] name: Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
192
|
+
:param pulumi.Input[str] oauth_client: Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
193
|
+
:param pulumi.Input[str] oauth_issue_refresh_tokens: Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. 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.
|
|
206
194
|
:param pulumi.Input[int] oauth_refresh_token_validity: Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
|
|
207
|
-
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
195
|
+
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
196
|
+
:param pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsRelatedParameterArgs']]] related_parameters: Parameters related to this security integration.
|
|
197
|
+
:param pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
208
198
|
"""
|
|
209
199
|
if blocked_roles_lists is not None:
|
|
210
200
|
pulumi.set(__self__, "blocked_roles_lists", blocked_roles_lists)
|
|
211
201
|
if comment is not None:
|
|
212
202
|
pulumi.set(__self__, "comment", comment)
|
|
213
|
-
if
|
|
214
|
-
pulumi.set(__self__, "
|
|
203
|
+
if describe_outputs is not None:
|
|
204
|
+
pulumi.set(__self__, "describe_outputs", describe_outputs)
|
|
215
205
|
if enabled is not None:
|
|
216
206
|
pulumi.set(__self__, "enabled", enabled)
|
|
207
|
+
if fully_qualified_name is not None:
|
|
208
|
+
pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
|
|
217
209
|
if name is not None:
|
|
218
210
|
pulumi.set(__self__, "name", name)
|
|
219
211
|
if oauth_client is not None:
|
|
220
212
|
pulumi.set(__self__, "oauth_client", oauth_client)
|
|
221
|
-
if oauth_client_type is not None:
|
|
222
|
-
pulumi.set(__self__, "oauth_client_type", oauth_client_type)
|
|
223
213
|
if oauth_issue_refresh_tokens is not None:
|
|
224
214
|
pulumi.set(__self__, "oauth_issue_refresh_tokens", oauth_issue_refresh_tokens)
|
|
225
215
|
if oauth_redirect_uri is not None:
|
|
@@ -228,12 +218,16 @@ class _OauthIntegrationState:
|
|
|
228
218
|
pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
|
|
229
219
|
if oauth_use_secondary_roles is not None:
|
|
230
220
|
pulumi.set(__self__, "oauth_use_secondary_roles", oauth_use_secondary_roles)
|
|
221
|
+
if related_parameters is not None:
|
|
222
|
+
pulumi.set(__self__, "related_parameters", related_parameters)
|
|
223
|
+
if show_outputs is not None:
|
|
224
|
+
pulumi.set(__self__, "show_outputs", show_outputs)
|
|
231
225
|
|
|
232
226
|
@property
|
|
233
227
|
@pulumi.getter(name="blockedRolesLists")
|
|
234
228
|
def blocked_roles_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
235
229
|
"""
|
|
236
|
-
|
|
230
|
+
A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
237
231
|
"""
|
|
238
232
|
return pulumi.get(self, "blocked_roles_lists")
|
|
239
233
|
|
|
@@ -254,34 +248,46 @@ class _OauthIntegrationState:
|
|
|
254
248
|
pulumi.set(self, "comment", value)
|
|
255
249
|
|
|
256
250
|
@property
|
|
257
|
-
@pulumi.getter(name="
|
|
258
|
-
def
|
|
251
|
+
@pulumi.getter(name="describeOutputs")
|
|
252
|
+
def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsDescribeOutputArgs']]]]:
|
|
259
253
|
"""
|
|
260
|
-
|
|
254
|
+
Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
261
255
|
"""
|
|
262
|
-
return pulumi.get(self, "
|
|
256
|
+
return pulumi.get(self, "describe_outputs")
|
|
263
257
|
|
|
264
|
-
@
|
|
265
|
-
def
|
|
266
|
-
pulumi.set(self, "
|
|
258
|
+
@describe_outputs.setter
|
|
259
|
+
def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsDescribeOutputArgs']]]]):
|
|
260
|
+
pulumi.set(self, "describe_outputs", value)
|
|
267
261
|
|
|
268
262
|
@property
|
|
269
263
|
@pulumi.getter
|
|
270
|
-
def enabled(self) -> Optional[pulumi.Input[
|
|
264
|
+
def enabled(self) -> Optional[pulumi.Input[str]]:
|
|
271
265
|
"""
|
|
272
|
-
Specifies whether this OAuth integration is enabled or disabled.
|
|
266
|
+
Specifies whether this OAuth 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.
|
|
273
267
|
"""
|
|
274
268
|
return pulumi.get(self, "enabled")
|
|
275
269
|
|
|
276
270
|
@enabled.setter
|
|
277
|
-
def enabled(self, value: Optional[pulumi.Input[
|
|
271
|
+
def enabled(self, value: Optional[pulumi.Input[str]]):
|
|
278
272
|
pulumi.set(self, "enabled", value)
|
|
279
273
|
|
|
274
|
+
@property
|
|
275
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
276
|
+
def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
|
|
277
|
+
"""
|
|
278
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
279
|
+
"""
|
|
280
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
281
|
+
|
|
282
|
+
@fully_qualified_name.setter
|
|
283
|
+
def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
|
|
284
|
+
pulumi.set(self, "fully_qualified_name", value)
|
|
285
|
+
|
|
280
286
|
@property
|
|
281
287
|
@pulumi.getter
|
|
282
288
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
283
289
|
"""
|
|
284
|
-
Specifies the name of the OAuth integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
|
|
290
|
+
Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
285
291
|
"""
|
|
286
292
|
return pulumi.get(self, "name")
|
|
287
293
|
|
|
@@ -293,7 +299,7 @@ class _OauthIntegrationState:
|
|
|
293
299
|
@pulumi.getter(name="oauthClient")
|
|
294
300
|
def oauth_client(self) -> Optional[pulumi.Input[str]]:
|
|
295
301
|
"""
|
|
296
|
-
|
|
302
|
+
Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
297
303
|
"""
|
|
298
304
|
return pulumi.get(self, "oauth_client")
|
|
299
305
|
|
|
@@ -301,36 +307,21 @@ class _OauthIntegrationState:
|
|
|
301
307
|
def oauth_client(self, value: Optional[pulumi.Input[str]]):
|
|
302
308
|
pulumi.set(self, "oauth_client", value)
|
|
303
309
|
|
|
304
|
-
@property
|
|
305
|
-
@pulumi.getter(name="oauthClientType")
|
|
306
|
-
def oauth_client_type(self) -> Optional[pulumi.Input[str]]:
|
|
307
|
-
"""
|
|
308
|
-
Specifies the type of client being registered. Snowflake supports both confidential and public clients.
|
|
309
|
-
"""
|
|
310
|
-
return pulumi.get(self, "oauth_client_type")
|
|
311
|
-
|
|
312
|
-
@oauth_client_type.setter
|
|
313
|
-
def oauth_client_type(self, value: Optional[pulumi.Input[str]]):
|
|
314
|
-
pulumi.set(self, "oauth_client_type", value)
|
|
315
|
-
|
|
316
310
|
@property
|
|
317
311
|
@pulumi.getter(name="oauthIssueRefreshTokens")
|
|
318
|
-
def oauth_issue_refresh_tokens(self) -> Optional[pulumi.Input[
|
|
312
|
+
def oauth_issue_refresh_tokens(self) -> Optional[pulumi.Input[str]]:
|
|
319
313
|
"""
|
|
320
|
-
Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired.
|
|
314
|
+
Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
|
|
321
315
|
"""
|
|
322
316
|
return pulumi.get(self, "oauth_issue_refresh_tokens")
|
|
323
317
|
|
|
324
318
|
@oauth_issue_refresh_tokens.setter
|
|
325
|
-
def oauth_issue_refresh_tokens(self, value: Optional[pulumi.Input[
|
|
319
|
+
def oauth_issue_refresh_tokens(self, value: Optional[pulumi.Input[str]]):
|
|
326
320
|
pulumi.set(self, "oauth_issue_refresh_tokens", value)
|
|
327
321
|
|
|
328
322
|
@property
|
|
329
323
|
@pulumi.getter(name="oauthRedirectUri")
|
|
330
324
|
def oauth_redirect_uri(self) -> Optional[pulumi.Input[str]]:
|
|
331
|
-
"""
|
|
332
|
-
Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
333
|
-
"""
|
|
334
325
|
return pulumi.get(self, "oauth_redirect_uri")
|
|
335
326
|
|
|
336
327
|
@oauth_redirect_uri.setter
|
|
@@ -353,7 +344,7 @@ class _OauthIntegrationState:
|
|
|
353
344
|
@pulumi.getter(name="oauthUseSecondaryRoles")
|
|
354
345
|
def oauth_use_secondary_roles(self) -> Optional[pulumi.Input[str]]:
|
|
355
346
|
"""
|
|
356
|
-
Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
347
|
+
Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
357
348
|
"""
|
|
358
349
|
return pulumi.get(self, "oauth_use_secondary_roles")
|
|
359
350
|
|
|
@@ -361,91 +352,84 @@ class _OauthIntegrationState:
|
|
|
361
352
|
def oauth_use_secondary_roles(self, value: Optional[pulumi.Input[str]]):
|
|
362
353
|
pulumi.set(self, "oauth_use_secondary_roles", value)
|
|
363
354
|
|
|
355
|
+
@property
|
|
356
|
+
@pulumi.getter(name="relatedParameters")
|
|
357
|
+
def related_parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsRelatedParameterArgs']]]]:
|
|
358
|
+
"""
|
|
359
|
+
Parameters related to this security integration.
|
|
360
|
+
"""
|
|
361
|
+
return pulumi.get(self, "related_parameters")
|
|
362
|
+
|
|
363
|
+
@related_parameters.setter
|
|
364
|
+
def related_parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsRelatedParameterArgs']]]]):
|
|
365
|
+
pulumi.set(self, "related_parameters", value)
|
|
366
|
+
|
|
367
|
+
@property
|
|
368
|
+
@pulumi.getter(name="showOutputs")
|
|
369
|
+
def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsShowOutputArgs']]]]:
|
|
370
|
+
"""
|
|
371
|
+
Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
372
|
+
"""
|
|
373
|
+
return pulumi.get(self, "show_outputs")
|
|
364
374
|
|
|
365
|
-
|
|
375
|
+
@show_outputs.setter
|
|
376
|
+
def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForPartnerApplicationsShowOutputArgs']]]]):
|
|
377
|
+
pulumi.set(self, "show_outputs", value)
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
class OauthIntegrationForPartnerApplications(pulumi.CustomResource):
|
|
366
381
|
@overload
|
|
367
382
|
def __init__(__self__,
|
|
368
383
|
resource_name: str,
|
|
369
384
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
370
385
|
blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
371
386
|
comment: Optional[pulumi.Input[str]] = None,
|
|
372
|
-
enabled: Optional[pulumi.Input[
|
|
387
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
373
388
|
name: Optional[pulumi.Input[str]] = None,
|
|
374
389
|
oauth_client: Optional[pulumi.Input[str]] = None,
|
|
375
|
-
|
|
376
|
-
oauth_issue_refresh_tokens: Optional[pulumi.Input[bool]] = None,
|
|
390
|
+
oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
|
|
377
391
|
oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
|
|
378
392
|
oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
|
|
379
393
|
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
|
|
380
394
|
__props__=None):
|
|
381
395
|
"""
|
|
382
|
-
## Example Usage
|
|
383
|
-
|
|
384
|
-
```python
|
|
385
|
-
import pulumi
|
|
386
|
-
import pulumi_snowflake as snowflake
|
|
387
|
-
|
|
388
|
-
tableau_desktop = snowflake.OauthIntegration("tableauDesktop",
|
|
389
|
-
blocked_roles_lists=["SYSADMIN"],
|
|
390
|
-
enabled=True,
|
|
391
|
-
oauth_client="TABLEAU_DESKTOP",
|
|
392
|
-
oauth_issue_refresh_tokens=True,
|
|
393
|
-
oauth_refresh_token_validity=3600)
|
|
394
|
-
```
|
|
395
|
-
|
|
396
396
|
## Import
|
|
397
397
|
|
|
398
398
|
```sh
|
|
399
|
-
|
|
399
|
+
$ pulumi import snowflake:index/oauthIntegrationForPartnerApplications:OauthIntegrationForPartnerApplications example "name"
|
|
400
400
|
```
|
|
401
401
|
|
|
402
402
|
:param str resource_name: The name of the resource.
|
|
403
403
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
404
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists:
|
|
404
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists: A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
405
405
|
:param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
|
|
406
|
-
:param pulumi.Input[
|
|
407
|
-
:param pulumi.Input[str] name: Specifies the name of the OAuth integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
|
|
408
|
-
:param pulumi.Input[str] oauth_client:
|
|
409
|
-
:param pulumi.Input[str]
|
|
410
|
-
:param pulumi.Input[bool] oauth_issue_refresh_tokens: Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired.
|
|
411
|
-
:param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
406
|
+
:param pulumi.Input[str] enabled: Specifies whether this OAuth 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.
|
|
407
|
+
:param pulumi.Input[str] name: Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
408
|
+
:param pulumi.Input[str] oauth_client: Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
409
|
+
:param pulumi.Input[str] oauth_issue_refresh_tokens: Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. 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.
|
|
412
410
|
:param pulumi.Input[int] oauth_refresh_token_validity: Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
|
|
413
|
-
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
411
|
+
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
414
412
|
"""
|
|
415
413
|
...
|
|
416
414
|
@overload
|
|
417
415
|
def __init__(__self__,
|
|
418
416
|
resource_name: str,
|
|
419
|
-
args:
|
|
417
|
+
args: OauthIntegrationForPartnerApplicationsArgs,
|
|
420
418
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
421
419
|
"""
|
|
422
|
-
## Example Usage
|
|
423
|
-
|
|
424
|
-
```python
|
|
425
|
-
import pulumi
|
|
426
|
-
import pulumi_snowflake as snowflake
|
|
427
|
-
|
|
428
|
-
tableau_desktop = snowflake.OauthIntegration("tableauDesktop",
|
|
429
|
-
blocked_roles_lists=["SYSADMIN"],
|
|
430
|
-
enabled=True,
|
|
431
|
-
oauth_client="TABLEAU_DESKTOP",
|
|
432
|
-
oauth_issue_refresh_tokens=True,
|
|
433
|
-
oauth_refresh_token_validity=3600)
|
|
434
|
-
```
|
|
435
|
-
|
|
436
420
|
## Import
|
|
437
421
|
|
|
438
422
|
```sh
|
|
439
|
-
|
|
423
|
+
$ pulumi import snowflake:index/oauthIntegrationForPartnerApplications:OauthIntegrationForPartnerApplications example "name"
|
|
440
424
|
```
|
|
441
425
|
|
|
442
426
|
:param str resource_name: The name of the resource.
|
|
443
|
-
:param
|
|
427
|
+
:param OauthIntegrationForPartnerApplicationsArgs args: The arguments to use to populate this resource's properties.
|
|
444
428
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
445
429
|
"""
|
|
446
430
|
...
|
|
447
431
|
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
448
|
-
resource_args, opts = _utilities.get_resource_args_opts(
|
|
432
|
+
resource_args, opts = _utilities.get_resource_args_opts(OauthIntegrationForPartnerApplicationsArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
449
433
|
if resource_args is not None:
|
|
450
434
|
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
451
435
|
else:
|
|
@@ -456,11 +440,10 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
456
440
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
457
441
|
blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
458
442
|
comment: Optional[pulumi.Input[str]] = None,
|
|
459
|
-
enabled: Optional[pulumi.Input[
|
|
443
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
460
444
|
name: Optional[pulumi.Input[str]] = None,
|
|
461
445
|
oauth_client: Optional[pulumi.Input[str]] = None,
|
|
462
|
-
|
|
463
|
-
oauth_issue_refresh_tokens: Optional[pulumi.Input[bool]] = None,
|
|
446
|
+
oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
|
|
464
447
|
oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
|
|
465
448
|
oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
|
|
466
449
|
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
|
|
@@ -471,7 +454,7 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
471
454
|
if opts.id is None:
|
|
472
455
|
if __props__ is not None:
|
|
473
456
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
474
|
-
__props__ =
|
|
457
|
+
__props__ = OauthIntegrationForPartnerApplicationsArgs.__new__(OauthIntegrationForPartnerApplicationsArgs)
|
|
475
458
|
|
|
476
459
|
__props__.__dict__["blocked_roles_lists"] = blocked_roles_lists
|
|
477
460
|
__props__.__dict__["comment"] = comment
|
|
@@ -480,14 +463,16 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
480
463
|
if oauth_client is None and not opts.urn:
|
|
481
464
|
raise TypeError("Missing required property 'oauth_client'")
|
|
482
465
|
__props__.__dict__["oauth_client"] = oauth_client
|
|
483
|
-
__props__.__dict__["oauth_client_type"] = oauth_client_type
|
|
484
466
|
__props__.__dict__["oauth_issue_refresh_tokens"] = oauth_issue_refresh_tokens
|
|
485
467
|
__props__.__dict__["oauth_redirect_uri"] = oauth_redirect_uri
|
|
486
468
|
__props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
|
|
487
469
|
__props__.__dict__["oauth_use_secondary_roles"] = oauth_use_secondary_roles
|
|
488
|
-
__props__.__dict__["
|
|
489
|
-
|
|
490
|
-
|
|
470
|
+
__props__.__dict__["describe_outputs"] = None
|
|
471
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
472
|
+
__props__.__dict__["related_parameters"] = None
|
|
473
|
+
__props__.__dict__["show_outputs"] = None
|
|
474
|
+
super(OauthIntegrationForPartnerApplications, __self__).__init__(
|
|
475
|
+
'snowflake:index/oauthIntegrationForPartnerApplications:OauthIntegrationForPartnerApplications',
|
|
491
476
|
resource_name,
|
|
492
477
|
__props__,
|
|
493
478
|
opts)
|
|
@@ -498,56 +483,61 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
498
483
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
499
484
|
blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
500
485
|
comment: Optional[pulumi.Input[str]] = None,
|
|
501
|
-
|
|
502
|
-
enabled: Optional[pulumi.Input[
|
|
486
|
+
describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForPartnerApplicationsDescribeOutputArgs', 'OauthIntegrationForPartnerApplicationsDescribeOutputArgsDict']]]]] = None,
|
|
487
|
+
enabled: Optional[pulumi.Input[str]] = None,
|
|
488
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
503
489
|
name: Optional[pulumi.Input[str]] = None,
|
|
504
490
|
oauth_client: Optional[pulumi.Input[str]] = None,
|
|
505
|
-
|
|
506
|
-
oauth_issue_refresh_tokens: Optional[pulumi.Input[bool]] = None,
|
|
491
|
+
oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
|
|
507
492
|
oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
|
|
508
493
|
oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
|
|
509
|
-
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None
|
|
494
|
+
oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
|
|
495
|
+
related_parameters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForPartnerApplicationsRelatedParameterArgs', 'OauthIntegrationForPartnerApplicationsRelatedParameterArgsDict']]]]] = None,
|
|
496
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForPartnerApplicationsShowOutputArgs', 'OauthIntegrationForPartnerApplicationsShowOutputArgsDict']]]]] = None) -> 'OauthIntegrationForPartnerApplications':
|
|
510
497
|
"""
|
|
511
|
-
Get an existing
|
|
498
|
+
Get an existing OauthIntegrationForPartnerApplications resource's state with the given name, id, and optional extra
|
|
512
499
|
properties used to qualify the lookup.
|
|
513
500
|
|
|
514
501
|
:param str resource_name: The unique name of the resulting resource.
|
|
515
502
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
516
503
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
517
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists:
|
|
504
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_roles_lists: A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
518
505
|
:param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
|
|
519
|
-
:param pulumi.Input[
|
|
520
|
-
:param pulumi.Input[
|
|
521
|
-
:param pulumi.Input[str]
|
|
522
|
-
:param pulumi.Input[str]
|
|
523
|
-
:param pulumi.Input[str]
|
|
524
|
-
:param pulumi.Input[
|
|
525
|
-
:param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
506
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForPartnerApplicationsDescribeOutputArgs', 'OauthIntegrationForPartnerApplicationsDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
507
|
+
:param pulumi.Input[str] enabled: Specifies whether this OAuth 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.
|
|
508
|
+
: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).
|
|
509
|
+
:param pulumi.Input[str] name: Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
510
|
+
:param pulumi.Input[str] oauth_client: Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
511
|
+
:param pulumi.Input[str] oauth_issue_refresh_tokens: Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. 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.
|
|
526
512
|
:param pulumi.Input[int] oauth_refresh_token_validity: Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
|
|
527
|
-
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
513
|
+
:param pulumi.Input[str] oauth_use_secondary_roles: Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
514
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForPartnerApplicationsRelatedParameterArgs', 'OauthIntegrationForPartnerApplicationsRelatedParameterArgsDict']]]] related_parameters: Parameters related to this security integration.
|
|
515
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForPartnerApplicationsShowOutputArgs', 'OauthIntegrationForPartnerApplicationsShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
528
516
|
"""
|
|
529
517
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
530
518
|
|
|
531
|
-
__props__ =
|
|
519
|
+
__props__ = _OauthIntegrationForPartnerApplicationsState.__new__(_OauthIntegrationForPartnerApplicationsState)
|
|
532
520
|
|
|
533
521
|
__props__.__dict__["blocked_roles_lists"] = blocked_roles_lists
|
|
534
522
|
__props__.__dict__["comment"] = comment
|
|
535
|
-
__props__.__dict__["
|
|
523
|
+
__props__.__dict__["describe_outputs"] = describe_outputs
|
|
536
524
|
__props__.__dict__["enabled"] = enabled
|
|
525
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
537
526
|
__props__.__dict__["name"] = name
|
|
538
527
|
__props__.__dict__["oauth_client"] = oauth_client
|
|
539
|
-
__props__.__dict__["oauth_client_type"] = oauth_client_type
|
|
540
528
|
__props__.__dict__["oauth_issue_refresh_tokens"] = oauth_issue_refresh_tokens
|
|
541
529
|
__props__.__dict__["oauth_redirect_uri"] = oauth_redirect_uri
|
|
542
530
|
__props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
|
|
543
531
|
__props__.__dict__["oauth_use_secondary_roles"] = oauth_use_secondary_roles
|
|
544
|
-
|
|
532
|
+
__props__.__dict__["related_parameters"] = related_parameters
|
|
533
|
+
__props__.__dict__["show_outputs"] = show_outputs
|
|
534
|
+
return OauthIntegrationForPartnerApplications(resource_name, opts=opts, __props__=__props__)
|
|
545
535
|
|
|
546
536
|
@property
|
|
547
537
|
@pulumi.getter(name="blockedRolesLists")
|
|
548
538
|
def blocked_roles_lists(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
549
539
|
"""
|
|
550
|
-
|
|
540
|
+
A set of Snowflake roles that a user cannot explicitly consent to using after authenticating. By default, this list includes the ACCOUNTADMIN, ORGADMIN and SECURITYADMIN roles. To remove these privileged roles from the list, use the ALTER ACCOUNT command to set the OAUTH*ADD*PRIVILEGED*ROLES*TO*BLOCKED*LIST account parameter to FALSE. For more information about this resource, see docs.
|
|
551
541
|
"""
|
|
552
542
|
return pulumi.get(self, "blocked_roles_lists")
|
|
553
543
|
|
|
@@ -560,26 +550,34 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
560
550
|
return pulumi.get(self, "comment")
|
|
561
551
|
|
|
562
552
|
@property
|
|
563
|
-
@pulumi.getter(name="
|
|
564
|
-
def
|
|
553
|
+
@pulumi.getter(name="describeOutputs")
|
|
554
|
+
def describe_outputs(self) -> pulumi.Output[Sequence['outputs.OauthIntegrationForPartnerApplicationsDescribeOutput']]:
|
|
565
555
|
"""
|
|
566
|
-
|
|
556
|
+
Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
|
|
567
557
|
"""
|
|
568
|
-
return pulumi.get(self, "
|
|
558
|
+
return pulumi.get(self, "describe_outputs")
|
|
569
559
|
|
|
570
560
|
@property
|
|
571
561
|
@pulumi.getter
|
|
572
|
-
def enabled(self) -> pulumi.Output[Optional[
|
|
562
|
+
def enabled(self) -> pulumi.Output[Optional[str]]:
|
|
573
563
|
"""
|
|
574
|
-
Specifies whether this OAuth integration is enabled or disabled.
|
|
564
|
+
Specifies whether this OAuth 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.
|
|
575
565
|
"""
|
|
576
566
|
return pulumi.get(self, "enabled")
|
|
577
567
|
|
|
568
|
+
@property
|
|
569
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
570
|
+
def fully_qualified_name(self) -> pulumi.Output[str]:
|
|
571
|
+
"""
|
|
572
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
573
|
+
"""
|
|
574
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
575
|
+
|
|
578
576
|
@property
|
|
579
577
|
@pulumi.getter
|
|
580
578
|
def name(self) -> pulumi.Output[str]:
|
|
581
579
|
"""
|
|
582
|
-
Specifies the name of the OAuth integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
|
|
580
|
+
Specifies the name of the OAuth 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: `|`, `.`, `"`.
|
|
583
581
|
"""
|
|
584
582
|
return pulumi.get(self, "name")
|
|
585
583
|
|
|
@@ -587,32 +585,21 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
587
585
|
@pulumi.getter(name="oauthClient")
|
|
588
586
|
def oauth_client(self) -> pulumi.Output[str]:
|
|
589
587
|
"""
|
|
590
|
-
|
|
588
|
+
Creates an OAuth interface between Snowflake and a partner application. Valid options are: `LOOKER` | `TABLEAU_DESKTOP` | `TABLEAU_SERVER`.
|
|
591
589
|
"""
|
|
592
590
|
return pulumi.get(self, "oauth_client")
|
|
593
591
|
|
|
594
|
-
@property
|
|
595
|
-
@pulumi.getter(name="oauthClientType")
|
|
596
|
-
def oauth_client_type(self) -> pulumi.Output[Optional[str]]:
|
|
597
|
-
"""
|
|
598
|
-
Specifies the type of client being registered. Snowflake supports both confidential and public clients.
|
|
599
|
-
"""
|
|
600
|
-
return pulumi.get(self, "oauth_client_type")
|
|
601
|
-
|
|
602
592
|
@property
|
|
603
593
|
@pulumi.getter(name="oauthIssueRefreshTokens")
|
|
604
|
-
def oauth_issue_refresh_tokens(self) -> pulumi.Output[Optional[
|
|
594
|
+
def oauth_issue_refresh_tokens(self) -> pulumi.Output[Optional[str]]:
|
|
605
595
|
"""
|
|
606
|
-
Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired.
|
|
596
|
+
Specifies whether to allow the client to exchange a refresh token for an access token when the current access token has expired. 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.
|
|
607
597
|
"""
|
|
608
598
|
return pulumi.get(self, "oauth_issue_refresh_tokens")
|
|
609
599
|
|
|
610
600
|
@property
|
|
611
601
|
@pulumi.getter(name="oauthRedirectUri")
|
|
612
602
|
def oauth_redirect_uri(self) -> pulumi.Output[Optional[str]]:
|
|
613
|
-
"""
|
|
614
|
-
Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
|
|
615
|
-
"""
|
|
616
603
|
return pulumi.get(self, "oauth_redirect_uri")
|
|
617
604
|
|
|
618
605
|
@property
|
|
@@ -627,7 +614,23 @@ class OauthIntegration(pulumi.CustomResource):
|
|
|
627
614
|
@pulumi.getter(name="oauthUseSecondaryRoles")
|
|
628
615
|
def oauth_use_secondary_roles(self) -> pulumi.Output[Optional[str]]:
|
|
629
616
|
"""
|
|
630
|
-
Specifies whether default secondary roles set in the user properties are activated by default in the session being opened.
|
|
617
|
+
Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
|
|
631
618
|
"""
|
|
632
619
|
return pulumi.get(self, "oauth_use_secondary_roles")
|
|
633
620
|
|
|
621
|
+
@property
|
|
622
|
+
@pulumi.getter(name="relatedParameters")
|
|
623
|
+
def related_parameters(self) -> pulumi.Output[Sequence['outputs.OauthIntegrationForPartnerApplicationsRelatedParameter']]:
|
|
624
|
+
"""
|
|
625
|
+
Parameters related to this security integration.
|
|
626
|
+
"""
|
|
627
|
+
return pulumi.get(self, "related_parameters")
|
|
628
|
+
|
|
629
|
+
@property
|
|
630
|
+
@pulumi.getter(name="showOutputs")
|
|
631
|
+
def show_outputs(self) -> pulumi.Output[Sequence['outputs.OauthIntegrationForPartnerApplicationsShowOutput']]:
|
|
632
|
+
"""
|
|
633
|
+
Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
|
|
634
|
+
"""
|
|
635
|
+
return pulumi.get(self, "show_outputs")
|
|
636
|
+
|