pulumi-snowflake 0.56.0a1721327760__py3-none-any.whl → 0.57.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. pulumi_snowflake/__init__.py +78 -209
  2. pulumi_snowflake/_inputs.py +12188 -1362
  3. pulumi_snowflake/_utilities.py +2 -0
  4. pulumi_snowflake/account_role.py +226 -0
  5. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +692 -0
  6. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +645 -0
  7. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +680 -0
  8. pulumi_snowflake/cortex_search_service.py +563 -0
  9. pulumi_snowflake/database.py +854 -232
  10. pulumi_snowflake/database_old.py +556 -0
  11. pulumi_snowflake/external_oauth_integration.py +562 -534
  12. pulumi_snowflake/failover_group.py +2 -2
  13. pulumi_snowflake/get_cortex_search_services.py +197 -0
  14. pulumi_snowflake/get_databases.py +71 -62
  15. pulumi_snowflake/get_network_policies.py +122 -0
  16. pulumi_snowflake/get_roles.py +37 -31
  17. pulumi_snowflake/get_schemas.py +115 -38
  18. pulumi_snowflake/get_security_integrations.py +122 -0
  19. pulumi_snowflake/get_streamlits.py +159 -0
  20. pulumi_snowflake/get_warehouses.py +66 -18
  21. pulumi_snowflake/grant_privileges_to_database_role.py +0 -4
  22. pulumi_snowflake/managed_account.py +7 -7
  23. pulumi_snowflake/network_policy.py +103 -19
  24. pulumi_snowflake/oauth_integration.py +4 -0
  25. pulumi_snowflake/oauth_integration_for_custom_clients.py +940 -0
  26. pulumi_snowflake/oauth_integration_for_partner_applications.py +584 -0
  27. pulumi_snowflake/outputs.py +16178 -2927
  28. pulumi_snowflake/pulumi-plugin.json +1 -1
  29. pulumi_snowflake/role.py +44 -72
  30. pulumi_snowflake/saml2_integration.py +975 -0
  31. pulumi_snowflake/saml_integration.py +4 -0
  32. pulumi_snowflake/schema.py +905 -151
  33. pulumi_snowflake/scim_integration.py +257 -103
  34. pulumi_snowflake/secondary_database.py +1059 -0
  35. pulumi_snowflake/sequence.py +6 -6
  36. pulumi_snowflake/shared_database.py +914 -0
  37. pulumi_snowflake/streamlit.py +650 -0
  38. pulumi_snowflake/table.py +0 -120
  39. pulumi_snowflake/table_constraint.py +2 -2
  40. pulumi_snowflake/tag_association.py +38 -38
  41. pulumi_snowflake/unsafe_execute.py +8 -8
  42. pulumi_snowflake/user_password_policy_attachment.py +32 -0
  43. pulumi_snowflake/warehouse.py +143 -120
  44. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/METADATA +1 -1
  45. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/RECORD +47 -58
  46. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/WHEEL +1 -1
  47. pulumi_snowflake/account_grant.py +0 -319
  48. pulumi_snowflake/database_grant.py +0 -471
  49. pulumi_snowflake/external_table_grant.py +0 -666
  50. pulumi_snowflake/failover_group_grant.py +0 -368
  51. pulumi_snowflake/file_format_grant.py +0 -611
  52. pulumi_snowflake/function_grant.py +0 -721
  53. pulumi_snowflake/grant_privileges_to_role.py +0 -821
  54. pulumi_snowflake/integration_grant.py +0 -416
  55. pulumi_snowflake/masking_policy_grant.py +0 -518
  56. pulumi_snowflake/materialized_view_grant.py +0 -665
  57. pulumi_snowflake/pipe_grant.py +0 -563
  58. pulumi_snowflake/procedure_grant.py +0 -721
  59. pulumi_snowflake/resource_monitor_grant.py +0 -363
  60. pulumi_snowflake/role_grants.py +0 -340
  61. pulumi_snowflake/role_ownership_grant.py +0 -329
  62. pulumi_snowflake/row_access_policy_grant.py +0 -516
  63. pulumi_snowflake/schema_grant.py +0 -603
  64. pulumi_snowflake/sequence_grant.py +0 -611
  65. pulumi_snowflake/stage_grant.py +0 -611
  66. pulumi_snowflake/stream_grant.py +0 -611
  67. pulumi_snowflake/table_grant.py +0 -653
  68. pulumi_snowflake/tag_grant.py +0 -508
  69. pulumi_snowflake/task_grant.py +0 -611
  70. pulumi_snowflake/user_grant.py +0 -370
  71. pulumi_snowflake/user_ownership_grant.py +0 -275
  72. pulumi_snowflake/view_grant.py +0 -685
  73. pulumi_snowflake/warehouse_grant.py +0 -416
  74. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,692 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from . import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs', 'ApiAuthenticationIntegrationWithAuthorizationCodeGrant']
15
+
16
+ @pulumi.input_type
17
+ class ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs:
18
+ def __init__(__self__, *,
19
+ enabled: pulumi.Input[bool],
20
+ oauth_client_id: pulumi.Input[str],
21
+ oauth_client_secret: pulumi.Input[str],
22
+ comment: Optional[pulumi.Input[str]] = None,
23
+ name: Optional[pulumi.Input[str]] = None,
24
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
25
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
26
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
27
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
28
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
29
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None):
30
+ """
31
+ The set of arguments for constructing a ApiAuthenticationIntegrationWithAuthorizationCodeGrant resource.
32
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
33
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
34
+ :param pulumi.Input[str] oauth_client_secret: Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
35
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
36
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
37
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
38
+ :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.
39
+ :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.
40
+ :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`.
41
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
42
+ :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.
43
+ """
44
+ pulumi.set(__self__, "enabled", enabled)
45
+ pulumi.set(__self__, "oauth_client_id", oauth_client_id)
46
+ pulumi.set(__self__, "oauth_client_secret", oauth_client_secret)
47
+ if comment is not None:
48
+ pulumi.set(__self__, "comment", comment)
49
+ if name is not None:
50
+ pulumi.set(__self__, "name", name)
51
+ if oauth_access_token_validity is not None:
52
+ pulumi.set(__self__, "oauth_access_token_validity", oauth_access_token_validity)
53
+ if oauth_allowed_scopes is not None:
54
+ pulumi.set(__self__, "oauth_allowed_scopes", oauth_allowed_scopes)
55
+ if oauth_authorization_endpoint is not None:
56
+ pulumi.set(__self__, "oauth_authorization_endpoint", oauth_authorization_endpoint)
57
+ if oauth_client_auth_method is not None:
58
+ pulumi.set(__self__, "oauth_client_auth_method", oauth_client_auth_method)
59
+ if oauth_refresh_token_validity is not None:
60
+ pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
61
+ if oauth_token_endpoint is not None:
62
+ pulumi.set(__self__, "oauth_token_endpoint", oauth_token_endpoint)
63
+
64
+ @property
65
+ @pulumi.getter
66
+ def enabled(self) -> pulumi.Input[bool]:
67
+ """
68
+ Specifies whether this security integration is enabled or disabled.
69
+ """
70
+ return pulumi.get(self, "enabled")
71
+
72
+ @enabled.setter
73
+ def enabled(self, value: pulumi.Input[bool]):
74
+ pulumi.set(self, "enabled", value)
75
+
76
+ @property
77
+ @pulumi.getter(name="oauthClientId")
78
+ def oauth_client_id(self) -> pulumi.Input[str]:
79
+ """
80
+ Specifies the client ID for the OAuth application in the external service.
81
+ """
82
+ return pulumi.get(self, "oauth_client_id")
83
+
84
+ @oauth_client_id.setter
85
+ def oauth_client_id(self, value: pulumi.Input[str]):
86
+ pulumi.set(self, "oauth_client_id", value)
87
+
88
+ @property
89
+ @pulumi.getter(name="oauthClientSecret")
90
+ def oauth_client_secret(self) -> pulumi.Input[str]:
91
+ """
92
+ Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
93
+ """
94
+ return pulumi.get(self, "oauth_client_secret")
95
+
96
+ @oauth_client_secret.setter
97
+ def oauth_client_secret(self, value: pulumi.Input[str]):
98
+ pulumi.set(self, "oauth_client_secret", value)
99
+
100
+ @property
101
+ @pulumi.getter
102
+ def comment(self) -> Optional[pulumi.Input[str]]:
103
+ """
104
+ Specifies a comment for the integration.
105
+ """
106
+ return pulumi.get(self, "comment")
107
+
108
+ @comment.setter
109
+ def comment(self, value: Optional[pulumi.Input[str]]):
110
+ pulumi.set(self, "comment", value)
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def name(self) -> Optional[pulumi.Input[str]]:
115
+ """
116
+ Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
117
+ """
118
+ return pulumi.get(self, "name")
119
+
120
+ @name.setter
121
+ def name(self, value: Optional[pulumi.Input[str]]):
122
+ pulumi.set(self, "name", value)
123
+
124
+ @property
125
+ @pulumi.getter(name="oauthAccessTokenValidity")
126
+ def oauth_access_token_validity(self) -> Optional[pulumi.Input[int]]:
127
+ """
128
+ Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
129
+ """
130
+ return pulumi.get(self, "oauth_access_token_validity")
131
+
132
+ @oauth_access_token_validity.setter
133
+ def oauth_access_token_validity(self, value: Optional[pulumi.Input[int]]):
134
+ pulumi.set(self, "oauth_access_token_validity", value)
135
+
136
+ @property
137
+ @pulumi.getter(name="oauthAllowedScopes")
138
+ def oauth_allowed_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
139
+ """
140
+ 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.
141
+ """
142
+ return pulumi.get(self, "oauth_allowed_scopes")
143
+
144
+ @oauth_allowed_scopes.setter
145
+ def oauth_allowed_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
146
+ pulumi.set(self, "oauth_allowed_scopes", value)
147
+
148
+ @property
149
+ @pulumi.getter(name="oauthAuthorizationEndpoint")
150
+ def oauth_authorization_endpoint(self) -> Optional[pulumi.Input[str]]:
151
+ """
152
+ Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
153
+ """
154
+ return pulumi.get(self, "oauth_authorization_endpoint")
155
+
156
+ @oauth_authorization_endpoint.setter
157
+ def oauth_authorization_endpoint(self, value: Optional[pulumi.Input[str]]):
158
+ pulumi.set(self, "oauth_authorization_endpoint", value)
159
+
160
+ @property
161
+ @pulumi.getter(name="oauthClientAuthMethod")
162
+ def oauth_client_auth_method(self) -> Optional[pulumi.Input[str]]:
163
+ """
164
+ 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`.
165
+ """
166
+ return pulumi.get(self, "oauth_client_auth_method")
167
+
168
+ @oauth_client_auth_method.setter
169
+ def oauth_client_auth_method(self, value: Optional[pulumi.Input[str]]):
170
+ pulumi.set(self, "oauth_client_auth_method", value)
171
+
172
+ @property
173
+ @pulumi.getter(name="oauthRefreshTokenValidity")
174
+ def oauth_refresh_token_validity(self) -> Optional[pulumi.Input[int]]:
175
+ """
176
+ Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
177
+ """
178
+ return pulumi.get(self, "oauth_refresh_token_validity")
179
+
180
+ @oauth_refresh_token_validity.setter
181
+ def oauth_refresh_token_validity(self, value: Optional[pulumi.Input[int]]):
182
+ pulumi.set(self, "oauth_refresh_token_validity", value)
183
+
184
+ @property
185
+ @pulumi.getter(name="oauthTokenEndpoint")
186
+ def oauth_token_endpoint(self) -> Optional[pulumi.Input[str]]:
187
+ """
188
+ 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.
189
+ """
190
+ return pulumi.get(self, "oauth_token_endpoint")
191
+
192
+ @oauth_token_endpoint.setter
193
+ def oauth_token_endpoint(self, value: Optional[pulumi.Input[str]]):
194
+ pulumi.set(self, "oauth_token_endpoint", value)
195
+
196
+
197
+ @pulumi.input_type
198
+ class _ApiAuthenticationIntegrationWithAuthorizationCodeGrantState:
199
+ def __init__(__self__, *,
200
+ comment: Optional[pulumi.Input[str]] = None,
201
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]] = None,
202
+ enabled: Optional[pulumi.Input[bool]] = None,
203
+ name: Optional[pulumi.Input[str]] = None,
204
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
205
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
206
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
207
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
208
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
209
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
210
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
211
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
212
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]] = None):
213
+ """
214
+ Input properties used for looking up and filtering ApiAuthenticationIntegrationWithAuthorizationCodeGrant resources.
215
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
216
+ :param pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
217
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
218
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
219
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
220
+ :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.
221
+ :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.
222
+ :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`.
223
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
224
+ :param pulumi.Input[str] oauth_client_secret: Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
225
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
226
+ :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.
227
+ :param pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
228
+ """
229
+ if comment is not None:
230
+ pulumi.set(__self__, "comment", comment)
231
+ if describe_outputs is not None:
232
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
233
+ if enabled is not None:
234
+ pulumi.set(__self__, "enabled", enabled)
235
+ if name is not None:
236
+ pulumi.set(__self__, "name", name)
237
+ if oauth_access_token_validity is not None:
238
+ pulumi.set(__self__, "oauth_access_token_validity", oauth_access_token_validity)
239
+ if oauth_allowed_scopes is not None:
240
+ pulumi.set(__self__, "oauth_allowed_scopes", oauth_allowed_scopes)
241
+ if oauth_authorization_endpoint is not None:
242
+ pulumi.set(__self__, "oauth_authorization_endpoint", oauth_authorization_endpoint)
243
+ if oauth_client_auth_method is not None:
244
+ pulumi.set(__self__, "oauth_client_auth_method", oauth_client_auth_method)
245
+ if oauth_client_id is not None:
246
+ pulumi.set(__self__, "oauth_client_id", oauth_client_id)
247
+ if oauth_client_secret is not None:
248
+ pulumi.set(__self__, "oauth_client_secret", oauth_client_secret)
249
+ if oauth_refresh_token_validity is not None:
250
+ pulumi.set(__self__, "oauth_refresh_token_validity", oauth_refresh_token_validity)
251
+ if oauth_token_endpoint is not None:
252
+ pulumi.set(__self__, "oauth_token_endpoint", oauth_token_endpoint)
253
+ if show_outputs is not None:
254
+ pulumi.set(__self__, "show_outputs", show_outputs)
255
+
256
+ @property
257
+ @pulumi.getter
258
+ def comment(self) -> Optional[pulumi.Input[str]]:
259
+ """
260
+ Specifies a comment for the integration.
261
+ """
262
+ return pulumi.get(self, "comment")
263
+
264
+ @comment.setter
265
+ def comment(self, value: Optional[pulumi.Input[str]]):
266
+ pulumi.set(self, "comment", value)
267
+
268
+ @property
269
+ @pulumi.getter(name="describeOutputs")
270
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]]:
271
+ """
272
+ Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
273
+ """
274
+ return pulumi.get(self, "describe_outputs")
275
+
276
+ @describe_outputs.setter
277
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]]):
278
+ pulumi.set(self, "describe_outputs", value)
279
+
280
+ @property
281
+ @pulumi.getter
282
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
283
+ """
284
+ Specifies whether this security integration is enabled or disabled.
285
+ """
286
+ return pulumi.get(self, "enabled")
287
+
288
+ @enabled.setter
289
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
290
+ pulumi.set(self, "enabled", value)
291
+
292
+ @property
293
+ @pulumi.getter
294
+ def name(self) -> Optional[pulumi.Input[str]]:
295
+ """
296
+ Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
297
+ """
298
+ return pulumi.get(self, "name")
299
+
300
+ @name.setter
301
+ def name(self, value: Optional[pulumi.Input[str]]):
302
+ pulumi.set(self, "name", value)
303
+
304
+ @property
305
+ @pulumi.getter(name="oauthAccessTokenValidity")
306
+ def oauth_access_token_validity(self) -> Optional[pulumi.Input[int]]:
307
+ """
308
+ Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
309
+ """
310
+ return pulumi.get(self, "oauth_access_token_validity")
311
+
312
+ @oauth_access_token_validity.setter
313
+ def oauth_access_token_validity(self, value: Optional[pulumi.Input[int]]):
314
+ pulumi.set(self, "oauth_access_token_validity", value)
315
+
316
+ @property
317
+ @pulumi.getter(name="oauthAllowedScopes")
318
+ def oauth_allowed_scopes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
319
+ """
320
+ 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.
321
+ """
322
+ return pulumi.get(self, "oauth_allowed_scopes")
323
+
324
+ @oauth_allowed_scopes.setter
325
+ def oauth_allowed_scopes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
326
+ pulumi.set(self, "oauth_allowed_scopes", value)
327
+
328
+ @property
329
+ @pulumi.getter(name="oauthAuthorizationEndpoint")
330
+ def oauth_authorization_endpoint(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
333
+ """
334
+ return pulumi.get(self, "oauth_authorization_endpoint")
335
+
336
+ @oauth_authorization_endpoint.setter
337
+ def oauth_authorization_endpoint(self, value: Optional[pulumi.Input[str]]):
338
+ pulumi.set(self, "oauth_authorization_endpoint", value)
339
+
340
+ @property
341
+ @pulumi.getter(name="oauthClientAuthMethod")
342
+ def oauth_client_auth_method(self) -> Optional[pulumi.Input[str]]:
343
+ """
344
+ 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`.
345
+ """
346
+ return pulumi.get(self, "oauth_client_auth_method")
347
+
348
+ @oauth_client_auth_method.setter
349
+ def oauth_client_auth_method(self, value: Optional[pulumi.Input[str]]):
350
+ pulumi.set(self, "oauth_client_auth_method", value)
351
+
352
+ @property
353
+ @pulumi.getter(name="oauthClientId")
354
+ def oauth_client_id(self) -> Optional[pulumi.Input[str]]:
355
+ """
356
+ Specifies the client ID for the OAuth application in the external service.
357
+ """
358
+ return pulumi.get(self, "oauth_client_id")
359
+
360
+ @oauth_client_id.setter
361
+ def oauth_client_id(self, value: Optional[pulumi.Input[str]]):
362
+ pulumi.set(self, "oauth_client_id", value)
363
+
364
+ @property
365
+ @pulumi.getter(name="oauthClientSecret")
366
+ def oauth_client_secret(self) -> Optional[pulumi.Input[str]]:
367
+ """
368
+ Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
369
+ """
370
+ return pulumi.get(self, "oauth_client_secret")
371
+
372
+ @oauth_client_secret.setter
373
+ def oauth_client_secret(self, value: Optional[pulumi.Input[str]]):
374
+ pulumi.set(self, "oauth_client_secret", value)
375
+
376
+ @property
377
+ @pulumi.getter(name="oauthRefreshTokenValidity")
378
+ def oauth_refresh_token_validity(self) -> Optional[pulumi.Input[int]]:
379
+ """
380
+ Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
381
+ """
382
+ return pulumi.get(self, "oauth_refresh_token_validity")
383
+
384
+ @oauth_refresh_token_validity.setter
385
+ def oauth_refresh_token_validity(self, value: Optional[pulumi.Input[int]]):
386
+ pulumi.set(self, "oauth_refresh_token_validity", value)
387
+
388
+ @property
389
+ @pulumi.getter(name="oauthTokenEndpoint")
390
+ def oauth_token_endpoint(self) -> Optional[pulumi.Input[str]]:
391
+ """
392
+ 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.
393
+ """
394
+ return pulumi.get(self, "oauth_token_endpoint")
395
+
396
+ @oauth_token_endpoint.setter
397
+ def oauth_token_endpoint(self, value: Optional[pulumi.Input[str]]):
398
+ pulumi.set(self, "oauth_token_endpoint", value)
399
+
400
+ @property
401
+ @pulumi.getter(name="showOutputs")
402
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]]:
403
+ """
404
+ Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
405
+ """
406
+ return pulumi.get(self, "show_outputs")
407
+
408
+ @show_outputs.setter
409
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]]):
410
+ pulumi.set(self, "show_outputs", value)
411
+
412
+
413
+ class ApiAuthenticationIntegrationWithAuthorizationCodeGrant(pulumi.CustomResource):
414
+ @overload
415
+ def __init__(__self__,
416
+ resource_name: str,
417
+ opts: Optional[pulumi.ResourceOptions] = None,
418
+ comment: Optional[pulumi.Input[str]] = None,
419
+ enabled: Optional[pulumi.Input[bool]] = None,
420
+ name: Optional[pulumi.Input[str]] = None,
421
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
422
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
423
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
424
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
425
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
426
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
427
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
428
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
429
+ __props__=None):
430
+ """
431
+ !> **V1 release candidate** This resource was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
432
+
433
+ Resource used to manage api authentication security integration objects with authorization code grant. For more information, check [security integrations documentation](https://docs.snowflake.com/en/sql-reference/sql/create-security-integration-api-auth).
434
+
435
+ ## Import
436
+
437
+ ```sh
438
+ $ pulumi import snowflake:index/apiAuthenticationIntegrationWithAuthorizationCodeGrant:ApiAuthenticationIntegrationWithAuthorizationCodeGrant example "name"
439
+ ```
440
+
441
+ :param str resource_name: The name of the resource.
442
+ :param pulumi.ResourceOptions opts: Options for the resource.
443
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
444
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
445
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
446
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
447
+ :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.
448
+ :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.
449
+ :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`.
450
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
451
+ :param pulumi.Input[str] oauth_client_secret: Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
452
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
453
+ :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.
454
+ """
455
+ ...
456
+ @overload
457
+ def __init__(__self__,
458
+ resource_name: str,
459
+ args: ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs,
460
+ opts: Optional[pulumi.ResourceOptions] = None):
461
+ """
462
+ !> **V1 release candidate** This resource was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
463
+
464
+ Resource used to manage api authentication security integration objects with authorization code grant. For more information, check [security integrations documentation](https://docs.snowflake.com/en/sql-reference/sql/create-security-integration-api-auth).
465
+
466
+ ## Import
467
+
468
+ ```sh
469
+ $ pulumi import snowflake:index/apiAuthenticationIntegrationWithAuthorizationCodeGrant:ApiAuthenticationIntegrationWithAuthorizationCodeGrant example "name"
470
+ ```
471
+
472
+ :param str resource_name: The name of the resource.
473
+ :param ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs args: The arguments to use to populate this resource's properties.
474
+ :param pulumi.ResourceOptions opts: Options for the resource.
475
+ """
476
+ ...
477
+ def __init__(__self__, resource_name: str, *args, **kwargs):
478
+ resource_args, opts = _utilities.get_resource_args_opts(ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs, pulumi.ResourceOptions, *args, **kwargs)
479
+ if resource_args is not None:
480
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
481
+ else:
482
+ __self__._internal_init(resource_name, *args, **kwargs)
483
+
484
+ def _internal_init(__self__,
485
+ resource_name: str,
486
+ opts: Optional[pulumi.ResourceOptions] = None,
487
+ comment: Optional[pulumi.Input[str]] = None,
488
+ enabled: Optional[pulumi.Input[bool]] = None,
489
+ name: Optional[pulumi.Input[str]] = None,
490
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
491
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
492
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
493
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
494
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
495
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
496
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
497
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
498
+ __props__=None):
499
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
500
+ if not isinstance(opts, pulumi.ResourceOptions):
501
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
502
+ if opts.id is None:
503
+ if __props__ is not None:
504
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
505
+ __props__ = ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs.__new__(ApiAuthenticationIntegrationWithAuthorizationCodeGrantArgs)
506
+
507
+ __props__.__dict__["comment"] = comment
508
+ if enabled is None and not opts.urn:
509
+ raise TypeError("Missing required property 'enabled'")
510
+ __props__.__dict__["enabled"] = enabled
511
+ __props__.__dict__["name"] = name
512
+ __props__.__dict__["oauth_access_token_validity"] = oauth_access_token_validity
513
+ __props__.__dict__["oauth_allowed_scopes"] = oauth_allowed_scopes
514
+ __props__.__dict__["oauth_authorization_endpoint"] = oauth_authorization_endpoint
515
+ __props__.__dict__["oauth_client_auth_method"] = oauth_client_auth_method
516
+ if oauth_client_id is None and not opts.urn:
517
+ raise TypeError("Missing required property 'oauth_client_id'")
518
+ __props__.__dict__["oauth_client_id"] = oauth_client_id
519
+ if oauth_client_secret is None and not opts.urn:
520
+ raise TypeError("Missing required property 'oauth_client_secret'")
521
+ __props__.__dict__["oauth_client_secret"] = oauth_client_secret
522
+ __props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
523
+ __props__.__dict__["oauth_token_endpoint"] = oauth_token_endpoint
524
+ __props__.__dict__["describe_outputs"] = None
525
+ __props__.__dict__["show_outputs"] = None
526
+ super(ApiAuthenticationIntegrationWithAuthorizationCodeGrant, __self__).__init__(
527
+ 'snowflake:index/apiAuthenticationIntegrationWithAuthorizationCodeGrant:ApiAuthenticationIntegrationWithAuthorizationCodeGrant',
528
+ resource_name,
529
+ __props__,
530
+ opts)
531
+
532
+ @staticmethod
533
+ def get(resource_name: str,
534
+ id: pulumi.Input[str],
535
+ opts: Optional[pulumi.ResourceOptions] = None,
536
+ comment: Optional[pulumi.Input[str]] = None,
537
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]]] = None,
538
+ enabled: Optional[pulumi.Input[bool]] = None,
539
+ name: Optional[pulumi.Input[str]] = None,
540
+ oauth_access_token_validity: Optional[pulumi.Input[int]] = None,
541
+ oauth_allowed_scopes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
542
+ oauth_authorization_endpoint: Optional[pulumi.Input[str]] = None,
543
+ oauth_client_auth_method: Optional[pulumi.Input[str]] = None,
544
+ oauth_client_id: Optional[pulumi.Input[str]] = None,
545
+ oauth_client_secret: Optional[pulumi.Input[str]] = None,
546
+ oauth_refresh_token_validity: Optional[pulumi.Input[int]] = None,
547
+ oauth_token_endpoint: Optional[pulumi.Input[str]] = None,
548
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]]] = None) -> 'ApiAuthenticationIntegrationWithAuthorizationCodeGrant':
549
+ """
550
+ Get an existing ApiAuthenticationIntegrationWithAuthorizationCodeGrant resource's state with the given name, id, and optional extra
551
+ properties used to qualify the lookup.
552
+
553
+ :param str resource_name: The unique name of the resulting resource.
554
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
555
+ :param pulumi.ResourceOptions opts: Options for the resource.
556
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
557
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutputArgs']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
558
+ :param pulumi.Input[bool] enabled: Specifies whether this security integration is enabled or disabled.
559
+ :param pulumi.Input[str] name: Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
560
+ :param pulumi.Input[int] oauth_access_token_validity: Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
561
+ :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.
562
+ :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.
563
+ :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`.
564
+ :param pulumi.Input[str] oauth_client_id: Specifies the client ID for the OAuth application in the external service.
565
+ :param pulumi.Input[str] oauth_client_secret: Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
566
+ :param pulumi.Input[int] oauth_refresh_token_validity: Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
567
+ :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.
568
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutputArgs']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
569
+ """
570
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
571
+
572
+ __props__ = _ApiAuthenticationIntegrationWithAuthorizationCodeGrantState.__new__(_ApiAuthenticationIntegrationWithAuthorizationCodeGrantState)
573
+
574
+ __props__.__dict__["comment"] = comment
575
+ __props__.__dict__["describe_outputs"] = describe_outputs
576
+ __props__.__dict__["enabled"] = enabled
577
+ __props__.__dict__["name"] = name
578
+ __props__.__dict__["oauth_access_token_validity"] = oauth_access_token_validity
579
+ __props__.__dict__["oauth_allowed_scopes"] = oauth_allowed_scopes
580
+ __props__.__dict__["oauth_authorization_endpoint"] = oauth_authorization_endpoint
581
+ __props__.__dict__["oauth_client_auth_method"] = oauth_client_auth_method
582
+ __props__.__dict__["oauth_client_id"] = oauth_client_id
583
+ __props__.__dict__["oauth_client_secret"] = oauth_client_secret
584
+ __props__.__dict__["oauth_refresh_token_validity"] = oauth_refresh_token_validity
585
+ __props__.__dict__["oauth_token_endpoint"] = oauth_token_endpoint
586
+ __props__.__dict__["show_outputs"] = show_outputs
587
+ return ApiAuthenticationIntegrationWithAuthorizationCodeGrant(resource_name, opts=opts, __props__=__props__)
588
+
589
+ @property
590
+ @pulumi.getter
591
+ def comment(self) -> pulumi.Output[Optional[str]]:
592
+ """
593
+ Specifies a comment for the integration.
594
+ """
595
+ return pulumi.get(self, "comment")
596
+
597
+ @property
598
+ @pulumi.getter(name="describeOutputs")
599
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.ApiAuthenticationIntegrationWithAuthorizationCodeGrantDescribeOutput']]:
600
+ """
601
+ Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
602
+ """
603
+ return pulumi.get(self, "describe_outputs")
604
+
605
+ @property
606
+ @pulumi.getter
607
+ def enabled(self) -> pulumi.Output[bool]:
608
+ """
609
+ Specifies whether this security integration is enabled or disabled.
610
+ """
611
+ return pulumi.get(self, "enabled")
612
+
613
+ @property
614
+ @pulumi.getter
615
+ def name(self) -> pulumi.Output[str]:
616
+ """
617
+ Specifies the identifier (i.e. name) for the integration. This value must be unique in your account.
618
+ """
619
+ return pulumi.get(self, "name")
620
+
621
+ @property
622
+ @pulumi.getter(name="oauthAccessTokenValidity")
623
+ def oauth_access_token_validity(self) -> pulumi.Output[Optional[int]]:
624
+ """
625
+ Specifies the default lifetime of the OAuth access token (in seconds) issued by an OAuth server.
626
+ """
627
+ return pulumi.get(self, "oauth_access_token_validity")
628
+
629
+ @property
630
+ @pulumi.getter(name="oauthAllowedScopes")
631
+ def oauth_allowed_scopes(self) -> pulumi.Output[Optional[Sequence[str]]]:
632
+ """
633
+ 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.
634
+ """
635
+ return pulumi.get(self, "oauth_allowed_scopes")
636
+
637
+ @property
638
+ @pulumi.getter(name="oauthAuthorizationEndpoint")
639
+ def oauth_authorization_endpoint(self) -> pulumi.Output[Optional[str]]:
640
+ """
641
+ Specifies the URL for authenticating to the external service. If removed from the config, the resource is recreated.
642
+ """
643
+ return pulumi.get(self, "oauth_authorization_endpoint")
644
+
645
+ @property
646
+ @pulumi.getter(name="oauthClientAuthMethod")
647
+ def oauth_client_auth_method(self) -> pulumi.Output[Optional[str]]:
648
+ """
649
+ 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`.
650
+ """
651
+ return pulumi.get(self, "oauth_client_auth_method")
652
+
653
+ @property
654
+ @pulumi.getter(name="oauthClientId")
655
+ def oauth_client_id(self) -> pulumi.Output[str]:
656
+ """
657
+ Specifies the client ID for the OAuth application in the external service.
658
+ """
659
+ return pulumi.get(self, "oauth_client_id")
660
+
661
+ @property
662
+ @pulumi.getter(name="oauthClientSecret")
663
+ def oauth_client_secret(self) -> pulumi.Output[str]:
664
+ """
665
+ Specifies the client secret for the OAuth application in the ServiceNow instance from the previous step. The connector uses this to request an access token from the ServiceNow instance.
666
+ """
667
+ return pulumi.get(self, "oauth_client_secret")
668
+
669
+ @property
670
+ @pulumi.getter(name="oauthRefreshTokenValidity")
671
+ def oauth_refresh_token_validity(self) -> pulumi.Output[Optional[int]]:
672
+ """
673
+ Specifies the value to determine the validity of the refresh token obtained from the OAuth server.
674
+ """
675
+ return pulumi.get(self, "oauth_refresh_token_validity")
676
+
677
+ @property
678
+ @pulumi.getter(name="oauthTokenEndpoint")
679
+ def oauth_token_endpoint(self) -> pulumi.Output[Optional[str]]:
680
+ """
681
+ 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.
682
+ """
683
+ return pulumi.get(self, "oauth_token_endpoint")
684
+
685
+ @property
686
+ @pulumi.getter(name="showOutputs")
687
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.ApiAuthenticationIntegrationWithAuthorizationCodeGrantShowOutput']]:
688
+ """
689
+ Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
690
+ """
691
+ return pulumi.get(self, "show_outputs")
692
+