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,704 @@
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__ = ['ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs', 'ApiAuthenticationIntegrationWithAuthorizationCodeGrant']
20
+
21
+ @pulumi.input_type
22
+ class ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs:
23
+ def __init__(__self__, *,
24
+ enabled: pulumi.Input[bool],
25
+ oauth_client_id: pulumi.Input[str],
26
+ oauth_client_secret: pulumi.Input[str],
27
+ comment: Optional[pulumi.Input[str]] = None,
28
+ name: Optional[pulumi.Input[str]] = None,
29
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
30
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
31
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
32
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
33
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
34
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None):
35
+ """
36
+ The set of arguments for constructing a ApiAuthenticationIntegrationWithAuthorizationCodeGrant resource.
37
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
38
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
39
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
40
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
41
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
42
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] oauth_allowed_scopes: Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
43
+ :param pulumi.Input[str] oauth_authorization_endpoint: Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
44
+ :param pulumi.Input[str] oauth_client_auth_method: Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
45
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
46
+ :param pulumi.Input[str] oauth_token_endpoint: Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
47
+ """
48
+ pulumi.set(__self__, "enabled", enabled)
49
+ pulumi.set(__self__, "oauth_client_id", oauth_client_id)
50
+ pulumi.set(__self__, "oauth_client_secret", oauth_client_secret)
51
+ if comment is not None:
52
+ pulumi.set(__self__, "comment", comment)
53
+ if name is not None:
54
+ pulumi.set(__self__, "name", name)
55
+ if oauth_access_token_validity is not None:
56
+ pulumi.set(__self__, "oauth_access_token_validity", oauth_access_token_validity)
57
+ if oauth_allowed_scopes is not None:
58
+ pulumi.set(__self__, "oauth_allowed_scopes", oauth_allowed_scopes)
59
+ if oauth_authorization_endpoint is not None:
60
+ pulumi.set(__self__, "oauth_authorization_endpoint", oauth_authorization_endpoint)
61
+ if oauth_client_auth_method is not None:
62
+ pulumi.set(__self__, "oauth_client_auth_method", oauth_client_auth_method)
63
+ if oauth_refresh_token_validity is not None:
64
+ pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
65
+ if oauth_token_endpoint is not None:
66
+ pulumi.set(__self__, "oauth_token_endpoint", oauth_token_endpoint)
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def enabled(self) -> pulumi.Input[bool]:
71
+ """
72
+ Specifies whether this security integration is enabled or disabled.
73
+ """
74
+ return pulumi.get(self, "enabled")
75
+
76
+ @enabled.setter
77
+ def enabled(self, value: pulumi.Input[bool]):
78
+ pulumi.set(self, "enabled", value)
79
+
80
+ @property
81
+ @pulumi.getter(name="oauthClientId")
82
+ def oauth_client_id(self) -> pulumi.Input[str]:
83
+ """
84
+ Specifies the client ID for the OAuth application in the external service.
85
+ """
86
+ return pulumi.get(self, "oauth_client_id")
87
+
88
+ @oauth_client_id.setter
89
+ def oauth_client_id(self, value: pulumi.Input[str]):
90
+ pulumi.set(self, "oauth_client_id", value)
91
+
92
+ @property
93
+ @pulumi.getter(name="oauthClientSecret")
94
+ def oauth_client_secret(self) -> pulumi.Input[str]:
95
+ return pulumi.get(self, "oauth_client_secret")
96
+
97
+ @oauth_client_secret.setter
98
+ def oauth_client_secret(self, value: pulumi.Input[str]):
99
+ pulumi.set(self, "oauth_client_secret", value)
100
+
101
+ @property
102
+ @pulumi.getter
103
+ def comment(self) -> Optional[pulumi.Input[str]]:
104
+ """
105
+ Specifies a comment for the integration.
106
+ """
107
+ return pulumi.get(self, "comment")
108
+
109
+ @comment.setter
110
+ def comment(self, value: Optional[pulumi.Input[str]]):
111
+ pulumi.set(self, "comment", value)
112
+
113
+ @property
114
+ @pulumi.getter
115
+ def name(self) -> Optional[pulumi.Input[str]]:
116
+ """
117
+ Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
118
+ """
119
+ return pulumi.get(self, "name")
120
+
121
+ @name.setter
122
+ def name(self, value: Optional[pulumi.Input[str]]):
123
+ pulumi.set(self, "name", value)
124
+
125
+ @property
126
+ @pulumi.getter(name="oauthAccessTokenValidity")
127
+ def oauth_access_token_validity(self) -> Optional[pulumi.Input[int]]:
128
+ """
129
+ Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
130
+ """
131
+ return pulumi.get(self, "oauth_access_token_validity")
132
+
133
+ @oauth_access_token_validity.setter
134
+ def oauth_access_token_validity(self, value: Optional[pulumi.Input[int]]):
135
+ pulumi.set(self, "oauth_access_token_validity", value)
136
+
137
+ @property
138
+ @pulumi.getter(name="oauthAllowedScopes")
139
+ def oauth_allowed_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
140
+ """
141
+ Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
142
+ """
143
+ return pulumi.get(self, "oauth_allowed_scopes")
144
+
145
+ @oauth_allowed_scopes.setter
146
+ def oauth_allowed_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
147
+ pulumi.set(self, "oauth_allowed_scopes", value)
148
+
149
+ @property
150
+ @pulumi.getter(name="oauthAuthorizationEndpoint")
151
+ def oauth_authorization_endpoint(self) -> Optional[pulumi.Input[str]]:
152
+ """
153
+ Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
154
+ """
155
+ return pulumi.get(self, "oauth_authorization_endpoint")
156
+
157
+ @oauth_authorization_endpoint.setter
158
+ def oauth_authorization_endpoint(self, value: Optional[pulumi.Input[str]]):
159
+ pulumi.set(self, "oauth_authorization_endpoint", value)
160
+
161
+ @property
162
+ @pulumi.getter(name="oauthClientAuthMethod")
163
+ def oauth_client_auth_method(self) -> Optional[pulumi.Input[str]]:
164
+ """
165
+ Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
166
+ """
167
+ return pulumi.get(self, "oauth_client_auth_method")
168
+
169
+ @oauth_client_auth_method.setter
170
+ def oauth_client_auth_method(self, value: Optional[pulumi.Input[str]]):
171
+ pulumi.set(self, "oauth_client_auth_method", value)
172
+
173
+ @property
174
+ @pulumi.getter(name="oauthRefreshTokenValidity")
175
+ def oauth_refresh_token_validity(self) -> Optional[pulumi.Input[int]]:
176
+ """
177
+ Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
178
+ """
179
+ return pulumi.get(self, "oauth_refresh_token_validity")
180
+
181
+ @oauth_refresh_token_validity.setter
182
+ def oauth_refresh_token_validity(self, value: Optional[pulumi.Input[int]]):
183
+ pulumi.set(self, "oauth_refresh_token_validity", value)
184
+
185
+ @property
186
+ @pulumi.getter(name="oauthTokenEndpoint")
187
+ def oauth_token_endpoint(self) -> Optional[pulumi.Input[str]]:
188
+ """
189
+ Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
190
+ """
191
+ return pulumi.get(self, "oauth_token_endpoint")
192
+
193
+ @oauth_token_endpoint.setter
194
+ def oauth_token_endpoint(self, value: Optional[pulumi.Input[str]]):
195
+ pulumi.set(self, "oauth_token_endpoint", value)
196
+
197
+
198
+ @pulumi.input_type
199
+ class _ApiAuthenticationIntegrationWithAuthorizationCodeGrantState:
200
+ def __init__(__self__, *,
201
+ comment: Optional[pulumi.Input[str]] = None,
202
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]] = None,
203
+ enabled: Optional[pulumi.Input[bool]] = None,
204
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
205
+ name: Optional[pulumi.Input[str]] = None,
206
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
207
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
208
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
209
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
210
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
211
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
212
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
213
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
214
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]] = None):
215
+ """
216
+ Input properties used for looking up and filtering ApiAuthenticationIntegrationWithAuthorizationCodeGrant resources.
217
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
218
+ :param pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
219
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
220
+ :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).
221
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
222
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
223
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] oauth_allowed_scopes: Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
224
+ :param pulumi.Input[str] oauth_authorization_endpoint: Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
225
+ :param pulumi.Input[str] oauth_client_auth_method: Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
226
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
227
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
228
+ :param pulumi.Input[str] oauth_token_endpoint: Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
229
+ :param pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
230
+ """
231
+ if comment is not None:
232
+ pulumi.set(__self__, "comment", comment)
233
+ if describe_outputs is not None:
234
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
235
+ if enabled is not None:
236
+ pulumi.set(__self__, "enabled", enabled)
237
+ if fully_qualified_name is not None:
238
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
239
+ if name is not None:
240
+ pulumi.set(__self__, "name", name)
241
+ if oauth_access_token_validity is not None:
242
+ pulumi.set(__self__, "oauth_access_token_validity", oauth_access_token_validity)
243
+ if oauth_allowed_scopes is not None:
244
+ pulumi.set(__self__, "oauth_allowed_scopes", oauth_allowed_scopes)
245
+ if oauth_authorization_endpoint is not None:
246
+ pulumi.set(__self__, "oauth_authorization_endpoint", oauth_authorization_endpoint)
247
+ if oauth_client_auth_method is not None:
248
+ pulumi.set(__self__, "oauth_client_auth_method", oauth_client_auth_method)
249
+ if oauth_client_id is not None:
250
+ pulumi.set(__self__, "oauth_client_id", oauth_client_id)
251
+ if oauth_client_secret is not None:
252
+ pulumi.set(__self__, "oauth_client_secret", oauth_client_secret)
253
+ if oauth_refresh_token_validity is not None:
254
+ pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
255
+ if oauth_token_endpoint is not None:
256
+ pulumi.set(__self__, "oauth_token_endpoint", oauth_token_endpoint)
257
+ if show_outputs is not None:
258
+ pulumi.set(__self__, "show_outputs", show_outputs)
259
+
260
+ @property
261
+ @pulumi.getter
262
+ def comment(self) -> Optional[pulumi.Input[str]]:
263
+ """
264
+ Specifies a comment for the integration.
265
+ """
266
+ return pulumi.get(self, "comment")
267
+
268
+ @comment.setter
269
+ def comment(self, value: Optional[pulumi.Input[str]]):
270
+ pulumi.set(self, "comment", value)
271
+
272
+ @property
273
+ @pulumi.getter(name="describeOutputs")
274
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]]:
275
+ """
276
+ Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
277
+ """
278
+ return pulumi.get(self, "describe_outputs")
279
+
280
+ @describe_outputs.setter
281
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]]):
282
+ pulumi.set(self, "describe_outputs", value)
283
+
284
+ @property
285
+ @pulumi.getter
286
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
287
+ """
288
+ Specifies whether this security integration is enabled or disabled.
289
+ """
290
+ return pulumi.get(self, "enabled")
291
+
292
+ @enabled.setter
293
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
294
+ pulumi.set(self, "enabled", value)
295
+
296
+ @property
297
+ @pulumi.getter(name="fullyQualifiedName")
298
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
299
+ """
300
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
301
+ """
302
+ return pulumi.get(self, "fully_qualified_name")
303
+
304
+ @fully_qualified_name.setter
305
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
306
+ pulumi.set(self, "fully_qualified_name", value)
307
+
308
+ @property
309
+ @pulumi.getter
310
+ def name(self) -> Optional[pulumi.Input[str]]:
311
+ """
312
+ Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
313
+ """
314
+ return pulumi.get(self, "name")
315
+
316
+ @name.setter
317
+ def name(self, value: Optional[pulumi.Input[str]]):
318
+ pulumi.set(self, "name", value)
319
+
320
+ @property
321
+ @pulumi.getter(name="oauthAccessTokenValidity")
322
+ def oauth_access_token_validity(self) -> Optional[pulumi.Input[int]]:
323
+ """
324
+ Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
325
+ """
326
+ return pulumi.get(self, "oauth_access_token_validity")
327
+
328
+ @oauth_access_token_validity.setter
329
+ def oauth_access_token_validity(self, value: Optional[pulumi.Input[int]]):
330
+ pulumi.set(self, "oauth_access_token_validity", value)
331
+
332
+ @property
333
+ @pulumi.getter(name="oauthAllowedScopes")
334
+ def oauth_allowed_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
335
+ """
336
+ Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
337
+ """
338
+ return pulumi.get(self, "oauth_allowed_scopes")
339
+
340
+ @oauth_allowed_scopes.setter
341
+ def oauth_allowed_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
342
+ pulumi.set(self, "oauth_allowed_scopes", value)
343
+
344
+ @property
345
+ @pulumi.getter(name="oauthAuthorizationEndpoint")
346
+ def oauth_authorization_endpoint(self) -> Optional[pulumi.Input[str]]:
347
+ """
348
+ Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
349
+ """
350
+ return pulumi.get(self, "oauth_authorization_endpoint")
351
+
352
+ @oauth_authorization_endpoint.setter
353
+ def oauth_authorization_endpoint(self, value: Optional[pulumi.Input[str]]):
354
+ pulumi.set(self, "oauth_authorization_endpoint", value)
355
+
356
+ @property
357
+ @pulumi.getter(name="oauthClientAuthMethod")
358
+ def oauth_client_auth_method(self) -> Optional[pulumi.Input[str]]:
359
+ """
360
+ Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
361
+ """
362
+ return pulumi.get(self, "oauth_client_auth_method")
363
+
364
+ @oauth_client_auth_method.setter
365
+ def oauth_client_auth_method(self, value: Optional[pulumi.Input[str]]):
366
+ pulumi.set(self, "oauth_client_auth_method", value)
367
+
368
+ @property
369
+ @pulumi.getter(name="oauthClientId")
370
+ def oauth_client_id(self) -> Optional[pulumi.Input[str]]:
371
+ """
372
+ Specifies the client ID for the OAuth application in the external service.
373
+ """
374
+ return pulumi.get(self, "oauth_client_id")
375
+
376
+ @oauth_client_id.setter
377
+ def oauth_client_id(self, value: Optional[pulumi.Input[str]]):
378
+ pulumi.set(self, "oauth_client_id", value)
379
+
380
+ @property
381
+ @pulumi.getter(name="oauthClientSecret")
382
+ def oauth_client_secret(self) -> Optional[pulumi.Input[str]]:
383
+ return pulumi.get(self, "oauth_client_secret")
384
+
385
+ @oauth_client_secret.setter
386
+ def oauth_client_secret(self, value: Optional[pulumi.Input[str]]):
387
+ pulumi.set(self, "oauth_client_secret", value)
388
+
389
+ @property
390
+ @pulumi.getter(name="oauthRefreshTokenValidity")
391
+ def oauth_refresh_token_validity(self) -> Optional[pulumi.Input[int]]:
392
+ """
393
+ Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
394
+ """
395
+ return pulumi.get(self, "oauth_refresh_token_validity")
396
+
397
+ @oauth_refresh_token_validity.setter
398
+ def oauth_refresh_token_validity(self, value: Optional[pulumi.Input[int]]):
399
+ pulumi.set(self, "oauth_refresh_token_validity", value)
400
+
401
+ @property
402
+ @pulumi.getter(name="oauthTokenEndpoint")
403
+ def oauth_token_endpoint(self) -> Optional[pulumi.Input[str]]:
404
+ """
405
+ Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
406
+ """
407
+ return pulumi.get(self, "oauth_token_endpoint")
408
+
409
+ @oauth_token_endpoint.setter
410
+ def oauth_token_endpoint(self, value: Optional[pulumi.Input[str]]):
411
+ pulumi.set(self, "oauth_token_endpoint", value)
412
+
413
+ @property
414
+ @pulumi.getter(name="showOutputs")
415
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]]:
416
+ """
417
+ Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
418
+ """
419
+ return pulumi.get(self, "show_outputs")
420
+
421
+ @show_outputs.setter
422
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]]):
423
+ pulumi.set(self, "show_outputs", value)
424
+
425
+
426
+ class ApiAuthenticationIntegrationWithAuthorizationCodeGrant(pulumi.CustomResource):
427
+ @overload
428
+ def __init__(__self__,
429
+ resource_name: str,
430
+ opts: Optional[pulumi.ResourceOptions] = None,
431
+ comment: Optional[pulumi.Input[str]] = None,
432
+ enabled: Optional[pulumi.Input[bool]] = None,
433
+ name: Optional[pulumi.Input[str]] = None,
434
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
435
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
436
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
437
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
438
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
439
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
440
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
441
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
442
+ __props__=None):
443
+ """
444
+ ## Import
445
+
446
+ ```sh
447
+ $ pulumi import snowflake:index/apiAuthenticationIntegrationWithAuthorizationCodeGrant:ApiAuthenticationIntegrationWithAuthorizationCodeGrant example '"<integration_name>"'
448
+ ```
449
+
450
+ :param str resource_name: The name of the resource.
451
+ :param pulumi.ResourceOptions opts: Options for the resource.
452
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
453
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
454
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
455
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
456
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] oauth_allowed_scopes: Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
457
+ :param pulumi.Input[str] oauth_authorization_endpoint: Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
458
+ :param pulumi.Input[str] oauth_client_auth_method: Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
459
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
460
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
461
+ :param pulumi.Input[str] oauth_token_endpoint: Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
462
+ """
463
+ ...
464
+ @overload
465
+ def __init__(__self__,
466
+ resource_name: str,
467
+ args: ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs,
468
+ opts: Optional[pulumi.ResourceOptions] = None):
469
+ """
470
+ ## Import
471
+
472
+ ```sh
473
+ $ pulumi import snowflake:index/apiAuthenticationIntegrationWithAuthorizationCodeGrant:ApiAuthenticationIntegrationWithAuthorizationCodeGrant example '"<integration_name>"'
474
+ ```
475
+
476
+ :param str resource_name: The name of the resource.
477
+ :param ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs args: The arguments to use to populate this resource's properties.
478
+ :param pulumi.ResourceOptions opts: Options for the resource.
479
+ """
480
+ ...
481
+ def __init__(__self__, resource_name: str, *args, **kwargs):
482
+ resource_args, opts = _utilities.get_resource_args_opts(ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs, pulumi.ResourceOptions, *args, **kwargs)
483
+ if resource_args is not None:
484
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
485
+ else:
486
+ __self__._internal_init(resource_name, *args, **kwargs)
487
+
488
+ def _internal_init(__self__,
489
+ resource_name: str,
490
+ opts: Optional[pulumi.ResourceOptions] = None,
491
+ comment: Optional[pulumi.Input[str]] = None,
492
+ enabled: Optional[pulumi.Input[bool]] = None,
493
+ name: Optional[pulumi.Input[str]] = None,
494
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
495
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
496
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
497
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
498
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
499
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
500
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
501
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
502
+ __props__=None):
503
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
504
+ if not isinstance(opts, pulumi.ResourceOptions):
505
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
506
+ if opts.id is None:
507
+ if __props__ is not None:
508
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
509
+ __props__ = ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs.__new__(ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs)
510
+
511
+ __props__.__dict__["comment"] = comment
512
+ if enabled is None and not opts.urn:
513
+ raise TypeError("Missing required property 'enabled'")
514
+ __props__.__dict__["enabled"] = enabled
515
+ __props__.__dict__["name"] = name
516
+ __props__.__dict__["oauth_access_token_validity"] = oauth_access_token_validity
517
+ __props__.__dict__["oauth_allowed_scopes"] = oauth_allowed_scopes
518
+ __props__.__dict__["oauth_authorization_endpoint"] = oauth_authorization_endpoint
519
+ __props__.__dict__["oauth_client_auth_method"] = oauth_client_auth_method
520
+ if oauth_client_id is None and not opts.urn:
521
+ raise TypeError("Missing required property 'oauth_client_id'")
522
+ __props__.__dict__["oauth_client_id"] = oauth_client_id
523
+ if oauth_client_secret is None and not opts.urn:
524
+ raise TypeError("Missing required property 'oauth_client_secret'")
525
+ __props__.__dict__["oauth_client_secret"] = oauth_client_secret
526
+ __props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
527
+ __props__.__dict__["oauth_token_endpoint"] = oauth_token_endpoint
528
+ __props__.__dict__["describe_outputs"] = None
529
+ __props__.__dict__["fully_qualified_name"] = None
530
+ __props__.__dict__["show_outputs"] = None
531
+ super(ApiAuthenticationIntegrationWithAuthorizationCodeGrant, __self__).__init__(
532
+ 'snowflake:index/apiAuthenticationIntegrationWithAuthorizationCodeGrant:ApiAuthenticationIntegrationWithAuthorizationCodeGrant',
533
+ resource_name,
534
+ __props__,
535
+ opts)
536
+
537
+ @staticmethod
538
+ def get(resource_name: str,
539
+ id: pulumi.Input[str],
540
+ opts: Optional[pulumi.ResourceOptions] = None,
541
+ comment: Optional[pulumi.Input[str]] = None,
542
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs', 'ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgsDict']]]]] = None,
543
+ enabled: Optional[pulumi.Input[bool]] = None,
544
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
545
+ name: Optional[pulumi.Input[str]] = None,
546
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
547
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
548
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
549
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
550
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
551
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
552
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
553
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
554
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs', 'ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgsDict']]]]] = None) -> 'ApiAuthenticationIntegrationWithAuthorizationCodeGrant':
555
+ """
556
+ Get an existing ApiAuthenticationIntegrationWithAuthorizationCodeGrant resource's state with the given name, id, and optional extra
557
+ properties used to qualify the lookup.
558
+
559
+ :param str resource_name: The unique name of the resulting resource.
560
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
561
+ :param pulumi.ResourceOptions opts: Options for the resource.
562
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
563
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs', 'ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
564
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
565
+ :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).
566
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
567
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
568
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] oauth_allowed_scopes: Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
569
+ :param pulumi.Input[str] oauth_authorization_endpoint: Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
570
+ :param pulumi.Input[str] oauth_client_auth_method: Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
571
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
572
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
573
+ :param pulumi.Input[str] oauth_token_endpoint: Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
574
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs', 'ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
575
+ """
576
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
577
+
578
+ __props__ = _ApiAuthenticationIntegrationWithAuthorizationCodeGrantState.__new__(_ApiAuthenticationIntegrationWithAuthorizationCodeGrantState)
579
+
580
+ __props__.__dict__["comment"] = comment
581
+ __props__.__dict__["describe_outputs"] = describe_outputs
582
+ __props__.__dict__["enabled"] = enabled
583
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
584
+ __props__.__dict__["name"] = name
585
+ __props__.__dict__["oauth_access_token_validity"] = oauth_access_token_validity
586
+ __props__.__dict__["oauth_allowed_scopes"] = oauth_allowed_scopes
587
+ __props__.__dict__["oauth_authorization_endpoint"] = oauth_authorization_endpoint
588
+ __props__.__dict__["oauth_client_auth_method"] = oauth_client_auth_method
589
+ __props__.__dict__["oauth_client_id"] = oauth_client_id
590
+ __props__.__dict__["oauth_client_secret"] = oauth_client_secret
591
+ __props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
592
+ __props__.__dict__["oauth_token_endpoint"] = oauth_token_endpoint
593
+ __props__.__dict__["show_outputs"] = show_outputs
594
+ return ApiAuthenticationIntegrationWithAuthorizationCodeGrant(resource_name, opts=opts, __props__=__props__)
595
+
596
+ @property
597
+ @pulumi.getter
598
+ def comment(self) -> pulumi.Output[Optional[str]]:
599
+ """
600
+ Specifies a comment for the integration.
601
+ """
602
+ return pulumi.get(self, "comment")
603
+
604
+ @property
605
+ @pulumi.getter(name="describeOutputs")
606
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutput']]:
607
+ """
608
+ Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
609
+ """
610
+ return pulumi.get(self, "describe_outputs")
611
+
612
+ @property
613
+ @pulumi.getter
614
+ def enabled(self) -> pulumi.Output[bool]:
615
+ """
616
+ Specifies whether this security integration is enabled or disabled.
617
+ """
618
+ return pulumi.get(self, "enabled")
619
+
620
+ @property
621
+ @pulumi.getter(name="fullyQualifiedName")
622
+ def fully_qualified_name(self) -> pulumi.Output[str]:
623
+ """
624
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
625
+ """
626
+ return pulumi.get(self, "fully_qualified_name")
627
+
628
+ @property
629
+ @pulumi.getter
630
+ def name(self) -> pulumi.Output[str]:
631
+ """
632
+ Specifies the identifier (i.e. name) for the integration. This value must be unique in your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
633
+ """
634
+ return pulumi.get(self, "name")
635
+
636
+ @property
637
+ @pulumi.getter(name="oauthAccessTokenValidity")
638
+ def oauth_access_token_validity(self) -> pulumi.Output[Optional[int]]:
639
+ """
640
+ Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
641
+ """
642
+ return pulumi.get(self, "oauth_access_token_validity")
643
+
644
+ @property
645
+ @pulumi.getter(name="oauthAllowedScopes")
646
+ def oauth_allowed_scopes(self) -> pulumi.Output[Optional[Sequence[str]]]:
647
+ """
648
+ Specifies a list of scopes to use when making a request from the OAuth by a role with USAGE on the integration during the OAuth client credentials flow.
649
+ """
650
+ return pulumi.get(self, "oauth_allowed_scopes")
651
+
652
+ @property
653
+ @pulumi.getter(name="oauthAuthorizationEndpoint")
654
+ def oauth_authorization_endpoint(self) -> pulumi.Output[Optional[str]]:
655
+ """
656
+ Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
657
+ """
658
+ return pulumi.get(self, "oauth_authorization_endpoint")
659
+
660
+ @property
661
+ @pulumi.getter(name="oauthClientAuthMethod")
662
+ def oauth_client_auth_method(self) -> pulumi.Output[Optional[str]]:
663
+ """
664
+ Specifies that POST is used as the authentication method to the external service. If removed from the config, the resource is recreated. Valid values are (case-insensitive): `CLIENT_SECRET_POST`.
665
+ """
666
+ return pulumi.get(self, "oauth_client_auth_method")
667
+
668
+ @property
669
+ @pulumi.getter(name="oauthClientId")
670
+ def oauth_client_id(self) -> pulumi.Output[str]:
671
+ """
672
+ Specifies the client ID for the OAuth application in the external service.
673
+ """
674
+ return pulumi.get(self, "oauth_client_id")
675
+
676
+ @property
677
+ @pulumi.getter(name="oauthClientSecret")
678
+ def oauth_client_secret(self) -> pulumi.Output[str]:
679
+ return pulumi.get(self, "oauth_client_secret")
680
+
681
+ @property
682
+ @pulumi.getter(name="oauthRefreshTokenValidity")
683
+ def oauth_refresh_token_validity(self) -> pulumi.Output[Optional[int]]:
684
+ """
685
+ Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
686
+ """
687
+ return pulumi.get(self, "oauth_refresh_token_validity")
688
+
689
+ @property
690
+ @pulumi.getter(name="oauthTokenEndpoint")
691
+ def oauth_token_endpoint(self) -> pulumi.Output[Optional[str]]:
692
+ """
693
+ Specifies the token endpoint used by the client to obtain an access token by presenting its authorization grant or refresh token. The token endpoint is used with every authorization grant except for the implicit grant type (since an access token is issued directly). If removed from the config, the resource is recreated.
694
+ """
695
+ return pulumi.get(self, "oauth_token_endpoint")
696
+
697
+ @property
698
+ @pulumi.getter(name="showOutputs")
699
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutput']]:
700
+ """
701
+ Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
702
+ """
703
+ return pulumi.get(self, "show_outputs")
704
+