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.

Files changed (182) hide show
  1. pulumi_snowflake/__init__.py +224 -172
  2. pulumi_snowflake/_inputs.py +52854 -1662
  3. pulumi_snowflake/_utilities.py +41 -5
  4. pulumi_snowflake/account.py +188 -214
  5. pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
  6. pulumi_snowflake/account_parameter.py +21 -44
  7. pulumi_snowflake/account_password_policy_attachment.py +7 -28
  8. pulumi_snowflake/account_role.py +250 -0
  9. pulumi_snowflake/alert.py +38 -43
  10. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
  11. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
  12. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
  13. pulumi_snowflake/api_integration.py +35 -50
  14. pulumi_snowflake/authentication_policy.py +622 -0
  15. pulumi_snowflake/config/__init__.pyi +76 -99
  16. pulumi_snowflake/config/outputs.py +5 -0
  17. pulumi_snowflake/config/vars.py +93 -124
  18. pulumi_snowflake/cortex_search_service.py +596 -0
  19. pulumi_snowflake/database.py +819 -209
  20. pulumi_snowflake/database_role.py +81 -40
  21. pulumi_snowflake/dynamic_table.py +44 -47
  22. pulumi_snowflake/email_notification_integration.py +35 -26
  23. pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -139
  24. pulumi_snowflake/external_function.py +54 -71
  25. pulumi_snowflake/external_oauth_integration.py +593 -538
  26. pulumi_snowflake/external_table.py +67 -86
  27. pulumi_snowflake/external_volume.py +382 -0
  28. pulumi_snowflake/failover_group.py +59 -96
  29. pulumi_snowflake/file_format.py +33 -24
  30. pulumi_snowflake/function_java.py +1211 -0
  31. pulumi_snowflake/function_javascript.py +882 -0
  32. pulumi_snowflake/function_python.py +1212 -0
  33. pulumi_snowflake/function_scala.py +1212 -0
  34. pulumi_snowflake/function_sql.py +835 -0
  35. pulumi_snowflake/get_account_roles.py +129 -0
  36. pulumi_snowflake/get_accounts.py +53 -22
  37. pulumi_snowflake/get_alerts.py +22 -5
  38. pulumi_snowflake/get_connections.py +109 -0
  39. pulumi_snowflake/get_cortex_search_services.py +216 -0
  40. pulumi_snowflake/get_current_account.py +24 -9
  41. pulumi_snowflake/get_current_role.py +14 -7
  42. pulumi_snowflake/get_database.py +25 -5
  43. pulumi_snowflake/get_database_role.py +162 -0
  44. pulumi_snowflake/get_database_roles.py +79 -43
  45. pulumi_snowflake/get_databases.py +91 -69
  46. pulumi_snowflake/get_dynamic_tables.py +36 -19
  47. pulumi_snowflake/get_external_functions.py +28 -5
  48. pulumi_snowflake/get_external_tables.py +28 -5
  49. pulumi_snowflake/get_failover_groups.py +18 -7
  50. pulumi_snowflake/get_file_formats.py +28 -5
  51. pulumi_snowflake/get_functions.py +28 -5
  52. pulumi_snowflake/get_grants.py +207 -80
  53. pulumi_snowflake/get_masking_policies.py +91 -47
  54. pulumi_snowflake/get_materialized_views.py +28 -5
  55. pulumi_snowflake/get_network_policies.py +129 -0
  56. pulumi_snowflake/get_parameters.py +38 -11
  57. pulumi_snowflake/get_pipes.py +28 -5
  58. pulumi_snowflake/get_procedures.py +28 -5
  59. pulumi_snowflake/get_resource_monitors.py +37 -20
  60. pulumi_snowflake/get_row_access_policies.py +91 -47
  61. pulumi_snowflake/get_schemas.py +145 -37
  62. pulumi_snowflake/get_secrets.py +200 -0
  63. pulumi_snowflake/get_security_integrations.py +129 -0
  64. pulumi_snowflake/get_sequences.py +28 -5
  65. pulumi_snowflake/get_shares.py +18 -5
  66. pulumi_snowflake/get_stages.py +28 -5
  67. pulumi_snowflake/get_storage_integrations.py +16 -5
  68. pulumi_snowflake/get_streamlits.py +170 -0
  69. pulumi_snowflake/get_streams.py +114 -50
  70. pulumi_snowflake/get_system_generate_scim_access_token.py +18 -5
  71. pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
  72. pulumi_snowflake/get_system_get_private_link_config.py +121 -6
  73. pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
  74. pulumi_snowflake/get_tables.py +28 -5
  75. pulumi_snowflake/get_tags.py +130 -0
  76. pulumi_snowflake/get_tasks.py +134 -50
  77. pulumi_snowflake/get_users.py +116 -40
  78. pulumi_snowflake/get_views.py +114 -50
  79. pulumi_snowflake/get_warehouses.py +79 -22
  80. pulumi_snowflake/grant_account_role.py +28 -61
  81. pulumi_snowflake/grant_application_role.py +257 -0
  82. pulumi_snowflake/grant_database_role.py +35 -108
  83. pulumi_snowflake/grant_ownership.py +382 -0
  84. pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
  85. pulumi_snowflake/grant_privileges_to_database_role.py +37 -223
  86. pulumi_snowflake/grant_privileges_to_share.py +96 -44
  87. pulumi_snowflake/legacy_service_user.py +3670 -0
  88. pulumi_snowflake/managed_account.py +42 -9
  89. pulumi_snowflake/masking_policy.py +213 -306
  90. pulumi_snowflake/materialized_view.py +62 -67
  91. pulumi_snowflake/network_policy.py +217 -57
  92. pulumi_snowflake/network_policy_attachment.py +7 -32
  93. pulumi_snowflake/network_rule.py +473 -0
  94. pulumi_snowflake/notification_integration.py +51 -82
  95. pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
  96. pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -188
  97. pulumi_snowflake/object_parameter.py +12 -99
  98. pulumi_snowflake/outputs.py +49200 -2928
  99. pulumi_snowflake/password_policy.py +41 -28
  100. pulumi_snowflake/pipe.py +33 -0
  101. pulumi_snowflake/primary_connection.py +330 -0
  102. pulumi_snowflake/procedure_java.py +1273 -0
  103. pulumi_snowflake/procedure_javascript.py +895 -0
  104. pulumi_snowflake/procedure_python.py +1226 -0
  105. pulumi_snowflake/procedure_scala.py +1273 -0
  106. pulumi_snowflake/procedure_sql.py +895 -0
  107. pulumi_snowflake/provider.py +378 -613
  108. pulumi_snowflake/pulumi-plugin.json +2 -1
  109. pulumi_snowflake/resource_monitor.py +118 -323
  110. pulumi_snowflake/row_access_policy.py +200 -145
  111. pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -295
  112. pulumi_snowflake/schema.py +949 -174
  113. pulumi_snowflake/scim_integration.py +286 -105
  114. pulumi_snowflake/secondary_connection.py +339 -0
  115. pulumi_snowflake/secondary_database.py +1080 -0
  116. pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
  117. pulumi_snowflake/secret_with_basic_authentication.py +500 -0
  118. pulumi_snowflake/secret_with_client_credentials.py +511 -0
  119. pulumi_snowflake/secret_with_generic_string.py +452 -0
  120. pulumi_snowflake/sequence.py +9 -30
  121. pulumi_snowflake/service_user.py +3585 -0
  122. pulumi_snowflake/share.py +35 -26
  123. pulumi_snowflake/shared_database.py +939 -0
  124. pulumi_snowflake/stage.py +95 -80
  125. pulumi_snowflake/storage_integration.py +48 -2
  126. pulumi_snowflake/stream_on_directory_table.py +517 -0
  127. pulumi_snowflake/stream_on_external_table.py +632 -0
  128. pulumi_snowflake/stream_on_table.py +666 -0
  129. pulumi_snowflake/stream_on_view.py +666 -0
  130. pulumi_snowflake/streamlit.py +671 -0
  131. pulumi_snowflake/table.py +86 -93
  132. pulumi_snowflake/table_column_masking_policy_application.py +7 -14
  133. pulumi_snowflake/table_constraint.py +29 -168
  134. pulumi_snowflake/tag.py +142 -70
  135. pulumi_snowflake/tag_association.py +40 -211
  136. pulumi_snowflake/task.py +3048 -414
  137. pulumi_snowflake/user.py +3351 -380
  138. pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
  139. pulumi_snowflake/user_password_policy_attachment.py +7 -6
  140. pulumi_snowflake/user_public_keys.py +5 -0
  141. pulumi_snowflake/view.py +466 -211
  142. pulumi_snowflake/warehouse.py +184 -164
  143. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
  144. pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
  145. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
  146. pulumi_snowflake/account_grant.py +0 -339
  147. pulumi_snowflake/database_grant.py +0 -491
  148. pulumi_snowflake/external_table_grant.py +0 -686
  149. pulumi_snowflake/failover_group_grant.py +0 -388
  150. pulumi_snowflake/file_format_grant.py +0 -631
  151. pulumi_snowflake/function.py +0 -868
  152. pulumi_snowflake/function_grant.py +0 -741
  153. pulumi_snowflake/get_role.py +0 -117
  154. pulumi_snowflake/get_roles.py +0 -116
  155. pulumi_snowflake/grant_privileges_to_role.py +0 -667
  156. pulumi_snowflake/integration_grant.py +0 -436
  157. pulumi_snowflake/masking_policy_grant.py +0 -538
  158. pulumi_snowflake/materialized_view_grant.py +0 -685
  159. pulumi_snowflake/pipe_grant.py +0 -583
  160. pulumi_snowflake/procedure.py +0 -883
  161. pulumi_snowflake/procedure_grant.py +0 -741
  162. pulumi_snowflake/resource_monitor_grant.py +0 -383
  163. pulumi_snowflake/role.py +0 -269
  164. pulumi_snowflake/role_grants.py +0 -348
  165. pulumi_snowflake/role_ownership_grant.py +0 -334
  166. pulumi_snowflake/row_access_policy_grant.py +0 -536
  167. pulumi_snowflake/schema_grant.py +0 -643
  168. pulumi_snowflake/sequence_grant.py +0 -631
  169. pulumi_snowflake/session_parameter.py +0 -328
  170. pulumi_snowflake/stage_grant.py +0 -631
  171. pulumi_snowflake/stream.py +0 -610
  172. pulumi_snowflake/stream_grant.py +0 -631
  173. pulumi_snowflake/table_grant.py +0 -673
  174. pulumi_snowflake/tag_grant.py +0 -528
  175. pulumi_snowflake/tag_masking_policy_association.py +0 -210
  176. pulumi_snowflake/task_grant.py +0 -631
  177. pulumi_snowflake/user_grant.py +0 -390
  178. pulumi_snowflake/user_ownership_grant.py +0 -286
  179. pulumi_snowflake/view_grant.py +0 -701
  180. pulumi_snowflake/warehouse_grant.py +0 -436
  181. pulumi_snowflake-0.50.2a1709892015.dist-info/RECORD +0 -136
  182. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,906 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['OauthIntegrationForCustomClientsArgs', 'OauthIntegrationForCustomClients']
20
+
21
+ @pulumi.input_type
22
+ class OauthIntegrationForCustomClientsArgs:
23
+ def __init__(__self__, *,
24
+ oauth_client_type: pulumi.Input[str],
25
+ oauth_redirect_uri: pulumi.Input[str],
26
+ blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
27
+ comment: Optional[pulumi.Input[str]] = None,
28
+ enabled: Optional[pulumi.Input[str]] = None,
29
+ name: Optional[pulumi.Input[str]] = None,
30
+ network_policy: Optional[pulumi.Input[str]] = None,
31
+ oauth_allow_non_tls_redirect_uri: Optional[pulumi.Input[str]] = None,
32
+ oauth_client_rsa_public_key: Optional[pulumi.Input[str]] = None,
33
+ oauth_client_rsa_public_key2: Optional[pulumi.Input[str]] = None,
34
+ oauth_enforce_pkce: Optional[pulumi.Input[str]] = None,
35
+ oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
36
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
37
+ oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
38
+ pre_authorized_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
39
+ """
40
+ The set of arguments for constructing a OauthIntegrationForCustomClients resource.
41
+ :param pulumi.Input[str] oauth_client_type: Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
42
+ :param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
43
+ :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.
44
+ :param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
45
+ :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.
46
+ :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: `|`, `.`, `"`.
47
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
48
+ :param pulumi.Input[str] oauth_allow_non_tls_redirect_uri: If true, allows setting oauth*redirect*uri to a URI not protected by TLS. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
49
+ :param pulumi.Input[str] oauth_enforce_pkce: Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
50
+ :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.
51
+ :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.
52
+ :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`.
53
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] pre_authorized_roles_lists: A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
54
+ """
55
+ pulumi.set(__self__, "oauth_client_type", oauth_client_type)
56
+ pulumi.set(__self__, "oauth_redirect_uri", oauth_redirect_uri)
57
+ if blocked_roles_lists is not None:
58
+ pulumi.set(__self__, "blocked_roles_lists", blocked_roles_lists)
59
+ if comment is not None:
60
+ pulumi.set(__self__, "comment", comment)
61
+ if enabled is not None:
62
+ pulumi.set(__self__, "enabled", enabled)
63
+ if name is not None:
64
+ pulumi.set(__self__, "name", name)
65
+ if network_policy is not None:
66
+ pulumi.set(__self__, "network_policy", network_policy)
67
+ if oauth_allow_non_tls_redirect_uri is not None:
68
+ pulumi.set(__self__, "oauth_allow_non_tls_redirect_uri", oauth_allow_non_tls_redirect_uri)
69
+ if oauth_client_rsa_public_key is not None:
70
+ pulumi.set(__self__, "oauth_client_rsa_public_key", oauth_client_rsa_public_key)
71
+ if oauth_client_rsa_public_key2 is not None:
72
+ pulumi.set(__self__, "oauth_client_rsa_public_key2", oauth_client_rsa_public_key2)
73
+ if oauth_enforce_pkce is not None:
74
+ pulumi.set(__self__, "oauth_enforce_pkce", oauth_enforce_pkce)
75
+ if oauth_issue_refresh_tokens is not None:
76
+ pulumi.set(__self__, "oauth_issue_refresh_tokens", oauth_issue_refresh_tokens)
77
+ if oauth_refresh_token_validity is not None:
78
+ pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
79
+ if oauth_use_secondary_roles is not None:
80
+ pulumi.set(__self__, "oauth_use_secondary_roles", oauth_use_secondary_roles)
81
+ if pre_authorized_roles_lists is not None:
82
+ pulumi.set(__self__, "pre_authorized_roles_lists", pre_authorized_roles_lists)
83
+
84
+ @property
85
+ @pulumi.getter(name="oauthClientType")
86
+ def oauth_client_type(self) -> pulumi.Input[str]:
87
+ """
88
+ Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
89
+ """
90
+ return pulumi.get(self, "oauth_client_type")
91
+
92
+ @oauth_client_type.setter
93
+ def oauth_client_type(self, value: pulumi.Input[str]):
94
+ pulumi.set(self, "oauth_client_type", value)
95
+
96
+ @property
97
+ @pulumi.getter(name="oauthRedirectUri")
98
+ def oauth_redirect_uri(self) -> pulumi.Input[str]:
99
+ """
100
+ Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
101
+ """
102
+ return pulumi.get(self, "oauth_redirect_uri")
103
+
104
+ @oauth_redirect_uri.setter
105
+ def oauth_redirect_uri(self, value: pulumi.Input[str]):
106
+ pulumi.set(self, "oauth_redirect_uri", value)
107
+
108
+ @property
109
+ @pulumi.getter(name="blockedRolesLists")
110
+ def blocked_roles_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
111
+ """
112
+ 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.
113
+ """
114
+ return pulumi.get(self, "blocked_roles_lists")
115
+
116
+ @blocked_roles_lists.setter
117
+ def blocked_roles_lists(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
118
+ pulumi.set(self, "blocked_roles_lists", value)
119
+
120
+ @property
121
+ @pulumi.getter
122
+ def comment(self) -> Optional[pulumi.Input[str]]:
123
+ """
124
+ Specifies a comment for the OAuth integration.
125
+ """
126
+ return pulumi.get(self, "comment")
127
+
128
+ @comment.setter
129
+ def comment(self, value: Optional[pulumi.Input[str]]):
130
+ pulumi.set(self, "comment", value)
131
+
132
+ @property
133
+ @pulumi.getter
134
+ def enabled(self) -> Optional[pulumi.Input[str]]:
135
+ """
136
+ 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.
137
+ """
138
+ return pulumi.get(self, "enabled")
139
+
140
+ @enabled.setter
141
+ def enabled(self, value: Optional[pulumi.Input[str]]):
142
+ pulumi.set(self, "enabled", value)
143
+
144
+ @property
145
+ @pulumi.getter
146
+ def name(self) -> Optional[pulumi.Input[str]]:
147
+ """
148
+ 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: `|`, `.`, `"`.
149
+ """
150
+ return pulumi.get(self, "name")
151
+
152
+ @name.setter
153
+ def name(self, value: Optional[pulumi.Input[str]]):
154
+ pulumi.set(self, "name", value)
155
+
156
+ @property
157
+ @pulumi.getter(name="networkPolicy")
158
+ def network_policy(self) -> Optional[pulumi.Input[str]]:
159
+ """
160
+ Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
161
+ """
162
+ return pulumi.get(self, "network_policy")
163
+
164
+ @network_policy.setter
165
+ def network_policy(self, value: Optional[pulumi.Input[str]]):
166
+ pulumi.set(self, "network_policy", value)
167
+
168
+ @property
169
+ @pulumi.getter(name="oauthAllowNonTlsRedirectUri")
170
+ def oauth_allow_non_tls_redirect_uri(self) -> Optional[pulumi.Input[str]]:
171
+ """
172
+ If true, allows setting oauth*redirect*uri to a URI not protected by TLS. 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.
173
+ """
174
+ return pulumi.get(self, "oauth_allow_non_tls_redirect_uri")
175
+
176
+ @oauth_allow_non_tls_redirect_uri.setter
177
+ def oauth_allow_non_tls_redirect_uri(self, value: Optional[pulumi.Input[str]]):
178
+ pulumi.set(self, "oauth_allow_non_tls_redirect_uri", value)
179
+
180
+ @property
181
+ @pulumi.getter(name="oauthClientRsaPublicKey")
182
+ def oauth_client_rsa_public_key(self) -> Optional[pulumi.Input[str]]:
183
+ return pulumi.get(self, "oauth_client_rsa_public_key")
184
+
185
+ @oauth_client_rsa_public_key.setter
186
+ def oauth_client_rsa_public_key(self, value: Optional[pulumi.Input[str]]):
187
+ pulumi.set(self, "oauth_client_rsa_public_key", value)
188
+
189
+ @property
190
+ @pulumi.getter(name="oauthClientRsaPublicKey2")
191
+ def oauth_client_rsa_public_key2(self) -> Optional[pulumi.Input[str]]:
192
+ return pulumi.get(self, "oauth_client_rsa_public_key2")
193
+
194
+ @oauth_client_rsa_public_key2.setter
195
+ def oauth_client_rsa_public_key2(self, value: Optional[pulumi.Input[str]]):
196
+ pulumi.set(self, "oauth_client_rsa_public_key2", value)
197
+
198
+ @property
199
+ @pulumi.getter(name="oauthEnforcePkce")
200
+ def oauth_enforce_pkce(self) -> Optional[pulumi.Input[str]]:
201
+ """
202
+ Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
203
+ """
204
+ return pulumi.get(self, "oauth_enforce_pkce")
205
+
206
+ @oauth_enforce_pkce.setter
207
+ def oauth_enforce_pkce(self, value: Optional[pulumi.Input[str]]):
208
+ pulumi.set(self, "oauth_enforce_pkce", value)
209
+
210
+ @property
211
+ @pulumi.getter(name="oauthIssueRefreshTokens")
212
+ def oauth_issue_refresh_tokens(self) -> Optional[pulumi.Input[str]]:
213
+ """
214
+ 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.
215
+ """
216
+ return pulumi.get(self, "oauth_issue_refresh_tokens")
217
+
218
+ @oauth_issue_refresh_tokens.setter
219
+ def oauth_issue_refresh_tokens(self, value: Optional[pulumi.Input[str]]):
220
+ pulumi.set(self, "oauth_issue_refresh_tokens", value)
221
+
222
+ @property
223
+ @pulumi.getter(name="oauthRefreshTokenValidity")
224
+ def oauth_refresh_token_validity(self) -> Optional[pulumi.Input[int]]:
225
+ """
226
+ Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
227
+ """
228
+ return pulumi.get(self, "oauth_refresh_token_validity")
229
+
230
+ @oauth_refresh_token_validity.setter
231
+ def oauth_refresh_token_validity(self, value: Optional[pulumi.Input[int]]):
232
+ pulumi.set(self, "oauth_refresh_token_validity", value)
233
+
234
+ @property
235
+ @pulumi.getter(name="oauthUseSecondaryRoles")
236
+ def oauth_use_secondary_roles(self) -> Optional[pulumi.Input[str]]:
237
+ """
238
+ Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
239
+ """
240
+ return pulumi.get(self, "oauth_use_secondary_roles")
241
+
242
+ @oauth_use_secondary_roles.setter
243
+ def oauth_use_secondary_roles(self, value: Optional[pulumi.Input[str]]):
244
+ pulumi.set(self, "oauth_use_secondary_roles", value)
245
+
246
+ @property
247
+ @pulumi.getter(name="preAuthorizedRolesLists")
248
+ def pre_authorized_roles_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
249
+ """
250
+ A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
251
+ """
252
+ return pulumi.get(self, "pre_authorized_roles_lists")
253
+
254
+ @pre_authorized_roles_lists.setter
255
+ def pre_authorized_roles_lists(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
256
+ pulumi.set(self, "pre_authorized_roles_lists", value)
257
+
258
+
259
+ @pulumi.input_type
260
+ class _OauthIntegrationForCustomClientsState:
261
+ def __init__(__self__, *,
262
+ blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
263
+ comment: Optional[pulumi.Input[str]] = None,
264
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsDescribeOutputArgs']]]] = None,
265
+ enabled: Optional[pulumi.Input[str]] = None,
266
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
267
+ name: Optional[pulumi.Input[str]] = None,
268
+ network_policy: Optional[pulumi.Input[str]] = None,
269
+ oauth_allow_non_tls_redirect_uri: Optional[pulumi.Input[str]] = None,
270
+ oauth_client_rsa_public_key: Optional[pulumi.Input[str]] = None,
271
+ oauth_client_rsa_public_key2: Optional[pulumi.Input[str]] = None,
272
+ oauth_client_type: Optional[pulumi.Input[str]] = None,
273
+ oauth_enforce_pkce: Optional[pulumi.Input[str]] = None,
274
+ oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
275
+ oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
276
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
277
+ oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
278
+ pre_authorized_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
279
+ related_parameters: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsRelatedParameterArgs']]]] = None,
280
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsShowOutputArgs']]]] = None):
281
+ """
282
+ Input properties used for looking up and filtering OauthIntegrationForCustomClients resources.
283
+ :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.
284
+ :param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
285
+ :param pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
286
+ :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.
287
+ :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).
288
+ :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: `|`, `.`, `"`.
289
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
290
+ :param pulumi.Input[str] oauth_allow_non_tls_redirect_uri: If true, allows setting oauth*redirect*uri to a URI not protected by TLS. 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.
291
+ :param pulumi.Input[str] oauth_client_type: Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
292
+ :param pulumi.Input[str] oauth_enforce_pkce: Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
293
+ :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.
294
+ :param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
295
+ :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.
296
+ :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`.
297
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] pre_authorized_roles_lists: A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
298
+ :param pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsRelatedParameterArgs']]] related_parameters: Parameters related to this security integration.
299
+ :param pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
300
+ """
301
+ if blocked_roles_lists is not None:
302
+ pulumi.set(__self__, "blocked_roles_lists", blocked_roles_lists)
303
+ if comment is not None:
304
+ pulumi.set(__self__, "comment", comment)
305
+ if describe_outputs is not None:
306
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
307
+ if enabled is not None:
308
+ pulumi.set(__self__, "enabled", enabled)
309
+ if fully_qualified_name is not None:
310
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
311
+ if name is not None:
312
+ pulumi.set(__self__, "name", name)
313
+ if network_policy is not None:
314
+ pulumi.set(__self__, "network_policy", network_policy)
315
+ if oauth_allow_non_tls_redirect_uri is not None:
316
+ pulumi.set(__self__, "oauth_allow_non_tls_redirect_uri", oauth_allow_non_tls_redirect_uri)
317
+ if oauth_client_rsa_public_key is not None:
318
+ pulumi.set(__self__, "oauth_client_rsa_public_key", oauth_client_rsa_public_key)
319
+ if oauth_client_rsa_public_key2 is not None:
320
+ pulumi.set(__self__, "oauth_client_rsa_public_key2", oauth_client_rsa_public_key2)
321
+ if oauth_client_type is not None:
322
+ pulumi.set(__self__, "oauth_client_type", oauth_client_type)
323
+ if oauth_enforce_pkce is not None:
324
+ pulumi.set(__self__, "oauth_enforce_pkce", oauth_enforce_pkce)
325
+ if oauth_issue_refresh_tokens is not None:
326
+ pulumi.set(__self__, "oauth_issue_refresh_tokens", oauth_issue_refresh_tokens)
327
+ if oauth_redirect_uri is not None:
328
+ pulumi.set(__self__, "oauth_redirect_uri", oauth_redirect_uri)
329
+ if oauth_refresh_token_validity is not None:
330
+ pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
331
+ if oauth_use_secondary_roles is not None:
332
+ pulumi.set(__self__, "oauth_use_secondary_roles", oauth_use_secondary_roles)
333
+ if pre_authorized_roles_lists is not None:
334
+ pulumi.set(__self__, "pre_authorized_roles_lists", pre_authorized_roles_lists)
335
+ if related_parameters is not None:
336
+ pulumi.set(__self__, "related_parameters", related_parameters)
337
+ if show_outputs is not None:
338
+ pulumi.set(__self__, "show_outputs", show_outputs)
339
+
340
+ @property
341
+ @pulumi.getter(name="blockedRolesLists")
342
+ def blocked_roles_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
343
+ """
344
+ 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.
345
+ """
346
+ return pulumi.get(self, "blocked_roles_lists")
347
+
348
+ @blocked_roles_lists.setter
349
+ def blocked_roles_lists(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
350
+ pulumi.set(self, "blocked_roles_lists", value)
351
+
352
+ @property
353
+ @pulumi.getter
354
+ def comment(self) -> Optional[pulumi.Input[str]]:
355
+ """
356
+ Specifies a comment for the OAuth integration.
357
+ """
358
+ return pulumi.get(self, "comment")
359
+
360
+ @comment.setter
361
+ def comment(self, value: Optional[pulumi.Input[str]]):
362
+ pulumi.set(self, "comment", value)
363
+
364
+ @property
365
+ @pulumi.getter(name="describeOutputs")
366
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsDescribeOutputArgs']]]]:
367
+ """
368
+ Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
369
+ """
370
+ return pulumi.get(self, "describe_outputs")
371
+
372
+ @describe_outputs.setter
373
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsDescribeOutputArgs']]]]):
374
+ pulumi.set(self, "describe_outputs", value)
375
+
376
+ @property
377
+ @pulumi.getter
378
+ def enabled(self) -> Optional[pulumi.Input[str]]:
379
+ """
380
+ 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.
381
+ """
382
+ return pulumi.get(self, "enabled")
383
+
384
+ @enabled.setter
385
+ def enabled(self, value: Optional[pulumi.Input[str]]):
386
+ pulumi.set(self, "enabled", value)
387
+
388
+ @property
389
+ @pulumi.getter(name="fullyQualifiedName")
390
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
391
+ """
392
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
393
+ """
394
+ return pulumi.get(self, "fully_qualified_name")
395
+
396
+ @fully_qualified_name.setter
397
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
398
+ pulumi.set(self, "fully_qualified_name", value)
399
+
400
+ @property
401
+ @pulumi.getter
402
+ def name(self) -> Optional[pulumi.Input[str]]:
403
+ """
404
+ 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: `|`, `.`, `"`.
405
+ """
406
+ return pulumi.get(self, "name")
407
+
408
+ @name.setter
409
+ def name(self, value: Optional[pulumi.Input[str]]):
410
+ pulumi.set(self, "name", value)
411
+
412
+ @property
413
+ @pulumi.getter(name="networkPolicy")
414
+ def network_policy(self) -> Optional[pulumi.Input[str]]:
415
+ """
416
+ Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
417
+ """
418
+ return pulumi.get(self, "network_policy")
419
+
420
+ @network_policy.setter
421
+ def network_policy(self, value: Optional[pulumi.Input[str]]):
422
+ pulumi.set(self, "network_policy", value)
423
+
424
+ @property
425
+ @pulumi.getter(name="oauthAllowNonTlsRedirectUri")
426
+ def oauth_allow_non_tls_redirect_uri(self) -> Optional[pulumi.Input[str]]:
427
+ """
428
+ If true, allows setting oauth*redirect*uri to a URI not protected by TLS. 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.
429
+ """
430
+ return pulumi.get(self, "oauth_allow_non_tls_redirect_uri")
431
+
432
+ @oauth_allow_non_tls_redirect_uri.setter
433
+ def oauth_allow_non_tls_redirect_uri(self, value: Optional[pulumi.Input[str]]):
434
+ pulumi.set(self, "oauth_allow_non_tls_redirect_uri", value)
435
+
436
+ @property
437
+ @pulumi.getter(name="oauthClientRsaPublicKey")
438
+ def oauth_client_rsa_public_key(self) -> Optional[pulumi.Input[str]]:
439
+ return pulumi.get(self, "oauth_client_rsa_public_key")
440
+
441
+ @oauth_client_rsa_public_key.setter
442
+ def oauth_client_rsa_public_key(self, value: Optional[pulumi.Input[str]]):
443
+ pulumi.set(self, "oauth_client_rsa_public_key", value)
444
+
445
+ @property
446
+ @pulumi.getter(name="oauthClientRsaPublicKey2")
447
+ def oauth_client_rsa_public_key2(self) -> Optional[pulumi.Input[str]]:
448
+ return pulumi.get(self, "oauth_client_rsa_public_key2")
449
+
450
+ @oauth_client_rsa_public_key2.setter
451
+ def oauth_client_rsa_public_key2(self, value: Optional[pulumi.Input[str]]):
452
+ pulumi.set(self, "oauth_client_rsa_public_key2", value)
453
+
454
+ @property
455
+ @pulumi.getter(name="oauthClientType")
456
+ def oauth_client_type(self) -> Optional[pulumi.Input[str]]:
457
+ """
458
+ Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
459
+ """
460
+ return pulumi.get(self, "oauth_client_type")
461
+
462
+ @oauth_client_type.setter
463
+ def oauth_client_type(self, value: Optional[pulumi.Input[str]]):
464
+ pulumi.set(self, "oauth_client_type", value)
465
+
466
+ @property
467
+ @pulumi.getter(name="oauthEnforcePkce")
468
+ def oauth_enforce_pkce(self) -> Optional[pulumi.Input[str]]:
469
+ """
470
+ Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
471
+ """
472
+ return pulumi.get(self, "oauth_enforce_pkce")
473
+
474
+ @oauth_enforce_pkce.setter
475
+ def oauth_enforce_pkce(self, value: Optional[pulumi.Input[str]]):
476
+ pulumi.set(self, "oauth_enforce_pkce", value)
477
+
478
+ @property
479
+ @pulumi.getter(name="oauthIssueRefreshTokens")
480
+ def oauth_issue_refresh_tokens(self) -> Optional[pulumi.Input[str]]:
481
+ """
482
+ 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.
483
+ """
484
+ return pulumi.get(self, "oauth_issue_refresh_tokens")
485
+
486
+ @oauth_issue_refresh_tokens.setter
487
+ def oauth_issue_refresh_tokens(self, value: Optional[pulumi.Input[str]]):
488
+ pulumi.set(self, "oauth_issue_refresh_tokens", value)
489
+
490
+ @property
491
+ @pulumi.getter(name="oauthRedirectUri")
492
+ def oauth_redirect_uri(self) -> Optional[pulumi.Input[str]]:
493
+ """
494
+ Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
495
+ """
496
+ return pulumi.get(self, "oauth_redirect_uri")
497
+
498
+ @oauth_redirect_uri.setter
499
+ def oauth_redirect_uri(self, value: Optional[pulumi.Input[str]]):
500
+ pulumi.set(self, "oauth_redirect_uri", value)
501
+
502
+ @property
503
+ @pulumi.getter(name="oauthRefreshTokenValidity")
504
+ def oauth_refresh_token_validity(self) -> Optional[pulumi.Input[int]]:
505
+ """
506
+ Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
507
+ """
508
+ return pulumi.get(self, "oauth_refresh_token_validity")
509
+
510
+ @oauth_refresh_token_validity.setter
511
+ def oauth_refresh_token_validity(self, value: Optional[pulumi.Input[int]]):
512
+ pulumi.set(self, "oauth_refresh_token_validity", value)
513
+
514
+ @property
515
+ @pulumi.getter(name="oauthUseSecondaryRoles")
516
+ def oauth_use_secondary_roles(self) -> Optional[pulumi.Input[str]]:
517
+ """
518
+ Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
519
+ """
520
+ return pulumi.get(self, "oauth_use_secondary_roles")
521
+
522
+ @oauth_use_secondary_roles.setter
523
+ def oauth_use_secondary_roles(self, value: Optional[pulumi.Input[str]]):
524
+ pulumi.set(self, "oauth_use_secondary_roles", value)
525
+
526
+ @property
527
+ @pulumi.getter(name="preAuthorizedRolesLists")
528
+ def pre_authorized_roles_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
529
+ """
530
+ A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
531
+ """
532
+ return pulumi.get(self, "pre_authorized_roles_lists")
533
+
534
+ @pre_authorized_roles_lists.setter
535
+ def pre_authorized_roles_lists(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
536
+ pulumi.set(self, "pre_authorized_roles_lists", value)
537
+
538
+ @property
539
+ @pulumi.getter(name="relatedParameters")
540
+ def related_parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsRelatedParameterArgs']]]]:
541
+ """
542
+ Parameters related to this security integration.
543
+ """
544
+ return pulumi.get(self, "related_parameters")
545
+
546
+ @related_parameters.setter
547
+ def related_parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsRelatedParameterArgs']]]]):
548
+ pulumi.set(self, "related_parameters", value)
549
+
550
+ @property
551
+ @pulumi.getter(name="showOutputs")
552
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsShowOutputArgs']]]]:
553
+ """
554
+ Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
555
+ """
556
+ return pulumi.get(self, "show_outputs")
557
+
558
+ @show_outputs.setter
559
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OauthIntegrationForCustomClientsShowOutputArgs']]]]):
560
+ pulumi.set(self, "show_outputs", value)
561
+
562
+
563
+ class OauthIntegrationForCustomClients(pulumi.CustomResource):
564
+ @overload
565
+ def __init__(__self__,
566
+ resource_name: str,
567
+ opts: Optional[pulumi.ResourceOptions] = None,
568
+ blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
569
+ comment: Optional[pulumi.Input[str]] = None,
570
+ enabled: Optional[pulumi.Input[str]] = None,
571
+ name: Optional[pulumi.Input[str]] = None,
572
+ network_policy: Optional[pulumi.Input[str]] = None,
573
+ oauth_allow_non_tls_redirect_uri: Optional[pulumi.Input[str]] = None,
574
+ oauth_client_rsa_public_key: Optional[pulumi.Input[str]] = None,
575
+ oauth_client_rsa_public_key2: Optional[pulumi.Input[str]] = None,
576
+ oauth_client_type: Optional[pulumi.Input[str]] = None,
577
+ oauth_enforce_pkce: Optional[pulumi.Input[str]] = None,
578
+ oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
579
+ oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
580
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
581
+ oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
582
+ pre_authorized_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
583
+ __props__=None):
584
+ """
585
+ ## Import
586
+
587
+ ```sh
588
+ $ pulumi import snowflake:index/oauthIntegrationForCustomClients:OauthIntegrationForCustomClients example '"<integration_name>"'
589
+ ```
590
+
591
+ :param str resource_name: The name of the resource.
592
+ :param pulumi.ResourceOptions opts: Options for the resource.
593
+ :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.
594
+ :param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
595
+ :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.
596
+ :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: `|`, `.`, `"`.
597
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
598
+ :param pulumi.Input[str] oauth_allow_non_tls_redirect_uri: If true, allows setting oauth*redirect*uri to a URI not protected by TLS. 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.
599
+ :param pulumi.Input[str] oauth_client_type: Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
600
+ :param pulumi.Input[str] oauth_enforce_pkce: Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
601
+ :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.
602
+ :param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
603
+ :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.
604
+ :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`.
605
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] pre_authorized_roles_lists: A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
606
+ """
607
+ ...
608
+ @overload
609
+ def __init__(__self__,
610
+ resource_name: str,
611
+ args: OauthIntegrationForCustomClientsArgs,
612
+ opts: Optional[pulumi.ResourceOptions] = None):
613
+ """
614
+ ## Import
615
+
616
+ ```sh
617
+ $ pulumi import snowflake:index/oauthIntegrationForCustomClients:OauthIntegrationForCustomClients example '"<integration_name>"'
618
+ ```
619
+
620
+ :param str resource_name: The name of the resource.
621
+ :param OauthIntegrationForCustomClientsArgs args: The arguments to use to populate this resource's properties.
622
+ :param pulumi.ResourceOptions opts: Options for the resource.
623
+ """
624
+ ...
625
+ def __init__(__self__, resource_name: str, *args, **kwargs):
626
+ resource_args, opts = _utilities.get_resource_args_opts(OauthIntegrationForCustomClientsArgs, pulumi.ResourceOptions, *args, **kwargs)
627
+ if resource_args is not None:
628
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
629
+ else:
630
+ __self__._internal_init(resource_name, *args, **kwargs)
631
+
632
+ def _internal_init(__self__,
633
+ resource_name: str,
634
+ opts: Optional[pulumi.ResourceOptions] = None,
635
+ blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
636
+ comment: Optional[pulumi.Input[str]] = None,
637
+ enabled: Optional[pulumi.Input[str]] = None,
638
+ name: Optional[pulumi.Input[str]] = None,
639
+ network_policy: Optional[pulumi.Input[str]] = None,
640
+ oauth_allow_non_tls_redirect_uri: Optional[pulumi.Input[str]] = None,
641
+ oauth_client_rsa_public_key: Optional[pulumi.Input[str]] = None,
642
+ oauth_client_rsa_public_key2: Optional[pulumi.Input[str]] = None,
643
+ oauth_client_type: Optional[pulumi.Input[str]] = None,
644
+ oauth_enforce_pkce: Optional[pulumi.Input[str]] = None,
645
+ oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
646
+ oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
647
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
648
+ oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
649
+ pre_authorized_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
650
+ __props__=None):
651
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
652
+ if not isinstance(opts, pulumi.ResourceOptions):
653
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
654
+ if opts.id is None:
655
+ if __props__ is not None:
656
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
657
+ __props__ = OauthIntegrationForCustomClientsArgs.__new__(OauthIntegrationForCustomClientsArgs)
658
+
659
+ __props__.__dict__["blocked_roles_lists"] = blocked_roles_lists
660
+ __props__.__dict__["comment"] = comment
661
+ __props__.__dict__["enabled"] = enabled
662
+ __props__.__dict__["name"] = name
663
+ __props__.__dict__["network_policy"] = network_policy
664
+ __props__.__dict__["oauth_allow_non_tls_redirect_uri"] = oauth_allow_non_tls_redirect_uri
665
+ __props__.__dict__["oauth_client_rsa_public_key"] = oauth_client_rsa_public_key
666
+ __props__.__dict__["oauth_client_rsa_public_key2"] = oauth_client_rsa_public_key2
667
+ if oauth_client_type is None and not opts.urn:
668
+ raise TypeError("Missing required property 'oauth_client_type'")
669
+ __props__.__dict__["oauth_client_type"] = oauth_client_type
670
+ __props__.__dict__["oauth_enforce_pkce"] = oauth_enforce_pkce
671
+ __props__.__dict__["oauth_issue_refresh_tokens"] = oauth_issue_refresh_tokens
672
+ if oauth_redirect_uri is None and not opts.urn:
673
+ raise TypeError("Missing required property 'oauth_redirect_uri'")
674
+ __props__.__dict__["oauth_redirect_uri"] = oauth_redirect_uri
675
+ __props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
676
+ __props__.__dict__["oauth_use_secondary_roles"] = oauth_use_secondary_roles
677
+ __props__.__dict__["pre_authorized_roles_lists"] = pre_authorized_roles_lists
678
+ __props__.__dict__["describe_outputs"] = None
679
+ __props__.__dict__["fully_qualified_name"] = None
680
+ __props__.__dict__["related_parameters"] = None
681
+ __props__.__dict__["show_outputs"] = None
682
+ super(OauthIntegrationForCustomClients, __self__).__init__(
683
+ 'snowflake:index/oauthIntegrationForCustomClients:OauthIntegrationForCustomClients',
684
+ resource_name,
685
+ __props__,
686
+ opts)
687
+
688
+ @staticmethod
689
+ def get(resource_name: str,
690
+ id: pulumi.Input[str],
691
+ opts: Optional[pulumi.ResourceOptions] = None,
692
+ blocked_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
693
+ comment: Optional[pulumi.Input[str]] = None,
694
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForCustomClientsDescribeOutputArgs', 'OauthIntegrationForCustomClientsDescribeOutputArgsDict']]]]] = None,
695
+ enabled: Optional[pulumi.Input[str]] = None,
696
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
697
+ name: Optional[pulumi.Input[str]] = None,
698
+ network_policy: Optional[pulumi.Input[str]] = None,
699
+ oauth_allow_non_tls_redirect_uri: Optional[pulumi.Input[str]] = None,
700
+ oauth_client_rsa_public_key: Optional[pulumi.Input[str]] = None,
701
+ oauth_client_rsa_public_key2: Optional[pulumi.Input[str]] = None,
702
+ oauth_client_type: Optional[pulumi.Input[str]] = None,
703
+ oauth_enforce_pkce: Optional[pulumi.Input[str]] = None,
704
+ oauth_issue_refresh_tokens: Optional[pulumi.Input[str]] = None,
705
+ oauth_redirect_uri: Optional[pulumi.Input[str]] = None,
706
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
707
+ oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
708
+ pre_authorized_roles_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
709
+ related_parameters: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForCustomClientsRelatedParameterArgs', 'OauthIntegrationForCustomClientsRelatedParameterArgsDict']]]]] = None,
710
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForCustomClientsShowOutputArgs', 'OauthIntegrationForCustomClientsShowOutputArgsDict']]]]] = None) -> 'OauthIntegrationForCustomClients':
711
+ """
712
+ Get an existing OauthIntegrationForCustomClients resource's state with the given name, id, and optional extra
713
+ properties used to qualify the lookup.
714
+
715
+ :param str resource_name: The unique name of the resulting resource.
716
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
717
+ :param pulumi.ResourceOptions opts: Options for the resource.
718
+ :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.
719
+ :param pulumi.Input[str] comment: Specifies a comment for the OAuth integration.
720
+ :param pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForCustomClientsDescribeOutputArgs', 'OauthIntegrationForCustomClientsDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
721
+ :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.
722
+ :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).
723
+ :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: `|`, `.`, `"`.
724
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
725
+ :param pulumi.Input[str] oauth_allow_non_tls_redirect_uri: If true, allows setting oauth*redirect*uri to a URI not protected by TLS. 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.
726
+ :param pulumi.Input[str] oauth_client_type: Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
727
+ :param pulumi.Input[str] oauth_enforce_pkce: Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
728
+ :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.
729
+ :param pulumi.Input[str] oauth_redirect_uri: Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
730
+ :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.
731
+ :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`.
732
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] pre_authorized_roles_lists: A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
733
+ :param pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForCustomClientsRelatedParameterArgs', 'OauthIntegrationForCustomClientsRelatedParameterArgsDict']]]] related_parameters: Parameters related to this security integration.
734
+ :param pulumi.Input[Sequence[pulumi.Input[Union['OauthIntegrationForCustomClientsShowOutputArgs', 'OauthIntegrationForCustomClientsShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
735
+ """
736
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
737
+
738
+ __props__ = _OauthIntegrationForCustomClientsState.__new__(_OauthIntegrationForCustomClientsState)
739
+
740
+ __props__.__dict__["blocked_roles_lists"] = blocked_roles_lists
741
+ __props__.__dict__["comment"] = comment
742
+ __props__.__dict__["describe_outputs"] = describe_outputs
743
+ __props__.__dict__["enabled"] = enabled
744
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
745
+ __props__.__dict__["name"] = name
746
+ __props__.__dict__["network_policy"] = network_policy
747
+ __props__.__dict__["oauth_allow_non_tls_redirect_uri"] = oauth_allow_non_tls_redirect_uri
748
+ __props__.__dict__["oauth_client_rsa_public_key"] = oauth_client_rsa_public_key
749
+ __props__.__dict__["oauth_client_rsa_public_key2"] = oauth_client_rsa_public_key2
750
+ __props__.__dict__["oauth_client_type"] = oauth_client_type
751
+ __props__.__dict__["oauth_enforce_pkce"] = oauth_enforce_pkce
752
+ __props__.__dict__["oauth_issue_refresh_tokens"] = oauth_issue_refresh_tokens
753
+ __props__.__dict__["oauth_redirect_uri"] = oauth_redirect_uri
754
+ __props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
755
+ __props__.__dict__["oauth_use_secondary_roles"] = oauth_use_secondary_roles
756
+ __props__.__dict__["pre_authorized_roles_lists"] = pre_authorized_roles_lists
757
+ __props__.__dict__["related_parameters"] = related_parameters
758
+ __props__.__dict__["show_outputs"] = show_outputs
759
+ return OauthIntegrationForCustomClients(resource_name, opts=opts, __props__=__props__)
760
+
761
+ @property
762
+ @pulumi.getter(name="blockedRolesLists")
763
+ def blocked_roles_lists(self) -> pulumi.Output[Optional[Sequence[str]]]:
764
+ """
765
+ 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.
766
+ """
767
+ return pulumi.get(self, "blocked_roles_lists")
768
+
769
+ @property
770
+ @pulumi.getter
771
+ def comment(self) -> pulumi.Output[Optional[str]]:
772
+ """
773
+ Specifies a comment for the OAuth integration.
774
+ """
775
+ return pulumi.get(self, "comment")
776
+
777
+ @property
778
+ @pulumi.getter(name="describeOutputs")
779
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.OauthIntegrationForCustomClientsDescribeOutput']]:
780
+ """
781
+ Outputs the result of `DESCRIBE SECURITY INTEGRATION` for the given integration.
782
+ """
783
+ return pulumi.get(self, "describe_outputs")
784
+
785
+ @property
786
+ @pulumi.getter
787
+ def enabled(self) -> pulumi.Output[Optional[str]]:
788
+ """
789
+ 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.
790
+ """
791
+ return pulumi.get(self, "enabled")
792
+
793
+ @property
794
+ @pulumi.getter(name="fullyQualifiedName")
795
+ def fully_qualified_name(self) -> pulumi.Output[str]:
796
+ """
797
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
798
+ """
799
+ return pulumi.get(self, "fully_qualified_name")
800
+
801
+ @property
802
+ @pulumi.getter
803
+ def name(self) -> pulumi.Output[str]:
804
+ """
805
+ 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: `|`, `.`, `"`.
806
+ """
807
+ return pulumi.get(self, "name")
808
+
809
+ @property
810
+ @pulumi.getter(name="networkPolicy")
811
+ def network_policy(self) -> pulumi.Output[Optional[str]]:
812
+ """
813
+ Specifies an existing network policy. This network policy controls network traffic that is attempting to exchange an authorization code for an access or refresh token or to use a refresh token to obtain a new access token. For more information about this resource, see docs.
814
+ """
815
+ return pulumi.get(self, "network_policy")
816
+
817
+ @property
818
+ @pulumi.getter(name="oauthAllowNonTlsRedirectUri")
819
+ def oauth_allow_non_tls_redirect_uri(self) -> pulumi.Output[Optional[str]]:
820
+ """
821
+ If true, allows setting oauth*redirect*uri to a URI not protected by TLS. 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.
822
+ """
823
+ return pulumi.get(self, "oauth_allow_non_tls_redirect_uri")
824
+
825
+ @property
826
+ @pulumi.getter(name="oauthClientRsaPublicKey")
827
+ def oauth_client_rsa_public_key(self) -> pulumi.Output[Optional[str]]:
828
+ return pulumi.get(self, "oauth_client_rsa_public_key")
829
+
830
+ @property
831
+ @pulumi.getter(name="oauthClientRsaPublicKey2")
832
+ def oauth_client_rsa_public_key2(self) -> pulumi.Output[Optional[str]]:
833
+ return pulumi.get(self, "oauth_client_rsa_public_key2")
834
+
835
+ @property
836
+ @pulumi.getter(name="oauthClientType")
837
+ def oauth_client_type(self) -> pulumi.Output[str]:
838
+ """
839
+ Specifies the type of client being registered. Snowflake supports both confidential and public clients. Valid options are: `PUBLIC` | `CONFIDENTIAL`.
840
+ """
841
+ return pulumi.get(self, "oauth_client_type")
842
+
843
+ @property
844
+ @pulumi.getter(name="oauthEnforcePkce")
845
+ def oauth_enforce_pkce(self) -> pulumi.Output[Optional[str]]:
846
+ """
847
+ Boolean that specifies whether Proof Key for Code Exchange (PKCE) should be required for the integration. 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.
848
+ """
849
+ return pulumi.get(self, "oauth_enforce_pkce")
850
+
851
+ @property
852
+ @pulumi.getter(name="oauthIssueRefreshTokens")
853
+ def oauth_issue_refresh_tokens(self) -> pulumi.Output[Optional[str]]:
854
+ """
855
+ 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.
856
+ """
857
+ return pulumi.get(self, "oauth_issue_refresh_tokens")
858
+
859
+ @property
860
+ @pulumi.getter(name="oauthRedirectUri")
861
+ def oauth_redirect_uri(self) -> pulumi.Output[str]:
862
+ """
863
+ Specifies the client URI. After a user is authenticated, the web browser is redirected to this URI.
864
+ """
865
+ return pulumi.get(self, "oauth_redirect_uri")
866
+
867
+ @property
868
+ @pulumi.getter(name="oauthRefreshTokenValidity")
869
+ def oauth_refresh_token_validity(self) -> pulumi.Output[Optional[int]]:
870
+ """
871
+ Specifies how long refresh tokens should be valid (in seconds). OAUTH*ISSUE*REFRESH_TOKENS must be set to TRUE.
872
+ """
873
+ return pulumi.get(self, "oauth_refresh_token_validity")
874
+
875
+ @property
876
+ @pulumi.getter(name="oauthUseSecondaryRoles")
877
+ def oauth_use_secondary_roles(self) -> pulumi.Output[Optional[str]]:
878
+ """
879
+ Specifies whether default secondary roles set in the user properties are activated by default in the session being opened. Valid options are: `IMPLICIT` | `NONE`.
880
+ """
881
+ return pulumi.get(self, "oauth_use_secondary_roles")
882
+
883
+ @property
884
+ @pulumi.getter(name="preAuthorizedRolesLists")
885
+ def pre_authorized_roles_lists(self) -> pulumi.Output[Optional[Sequence[str]]]:
886
+ """
887
+ A set of Snowflake roles that a user does not need to explicitly consent to using after authenticating. For more information about this resource, see docs.
888
+ """
889
+ return pulumi.get(self, "pre_authorized_roles_lists")
890
+
891
+ @property
892
+ @pulumi.getter(name="relatedParameters")
893
+ def related_parameters(self) -> pulumi.Output[Sequence['outputs.OauthIntegrationForCustomClientsRelatedParameter']]:
894
+ """
895
+ Parameters related to this security integration.
896
+ """
897
+ return pulumi.get(self, "related_parameters")
898
+
899
+ @property
900
+ @pulumi.getter(name="showOutputs")
901
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.OauthIntegrationForCustomClientsShowOutput']]:
902
+ """
903
+ Outputs the result of `SHOW SECURITY INTEGRATION` for the given integration.
904
+ """
905
+ return pulumi.get(self, "show_outputs")
906
+