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