pulumi-snowflake 0.56.0a1721200104__py3-none-any.whl → 0.56.0a1721667766__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 (62) hide show
  1. pulumi_snowflake/__init__.py +66 -217
  2. pulumi_snowflake/_inputs.py +10145 -1557
  3. pulumi_snowflake/_utilities.py +3 -4
  4. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +688 -0
  5. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +641 -0
  6. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +676 -0
  7. pulumi_snowflake/cortex_search_service.py +563 -0
  8. pulumi_snowflake/database.py +854 -232
  9. pulumi_snowflake/database_old.py +556 -0
  10. pulumi_snowflake/external_oauth_integration.py +562 -534
  11. pulumi_snowflake/failover_group.py +2 -2
  12. pulumi_snowflake/get_cortex_search_services.py +197 -0
  13. pulumi_snowflake/get_databases.py +71 -62
  14. pulumi_snowflake/get_security_integrations.py +122 -0
  15. pulumi_snowflake/get_warehouses.py +66 -18
  16. pulumi_snowflake/grant_privileges_to_database_role.py +0 -4
  17. pulumi_snowflake/managed_account.py +7 -7
  18. pulumi_snowflake/oauth_integration.py +4 -0
  19. pulumi_snowflake/oauth_integration_for_custom_clients.py +936 -0
  20. pulumi_snowflake/oauth_integration_for_partner_applications.py +580 -0
  21. pulumi_snowflake/outputs.py +12987 -2857
  22. pulumi_snowflake/pulumi-plugin.json +1 -1
  23. pulumi_snowflake/saml2_integration.py +971 -0
  24. pulumi_snowflake/saml_integration.py +4 -0
  25. pulumi_snowflake/scim_integration.py +255 -105
  26. pulumi_snowflake/secondary_database.py +1059 -0
  27. pulumi_snowflake/sequence.py +6 -6
  28. pulumi_snowflake/shared_database.py +914 -0
  29. pulumi_snowflake/tag_association.py +38 -38
  30. pulumi_snowflake/user_password_policy_attachment.py +32 -0
  31. pulumi_snowflake/warehouse.py +143 -120
  32. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/METADATA +1 -1
  33. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/RECORD +35 -50
  34. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/WHEEL +1 -1
  35. pulumi_snowflake/account_grant.py +0 -319
  36. pulumi_snowflake/database_grant.py +0 -471
  37. pulumi_snowflake/external_table_grant.py +0 -666
  38. pulumi_snowflake/failover_group_grant.py +0 -368
  39. pulumi_snowflake/file_format_grant.py +0 -611
  40. pulumi_snowflake/function_grant.py +0 -721
  41. pulumi_snowflake/grant_privileges_to_role.py +0 -821
  42. pulumi_snowflake/integration_grant.py +0 -416
  43. pulumi_snowflake/masking_policy_grant.py +0 -518
  44. pulumi_snowflake/materialized_view_grant.py +0 -665
  45. pulumi_snowflake/pipe_grant.py +0 -563
  46. pulumi_snowflake/procedure_grant.py +0 -721
  47. pulumi_snowflake/resource_monitor_grant.py +0 -363
  48. pulumi_snowflake/role_grants.py +0 -340
  49. pulumi_snowflake/role_ownership_grant.py +0 -329
  50. pulumi_snowflake/row_access_policy_grant.py +0 -516
  51. pulumi_snowflake/schema_grant.py +0 -603
  52. pulumi_snowflake/sequence_grant.py +0 -611
  53. pulumi_snowflake/stage_grant.py +0 -611
  54. pulumi_snowflake/stream_grant.py +0 -611
  55. pulumi_snowflake/table_grant.py +0 -653
  56. pulumi_snowflake/tag_grant.py +0 -508
  57. pulumi_snowflake/task_grant.py +0 -611
  58. pulumi_snowflake/user_grant.py +0 -370
  59. pulumi_snowflake/user_ownership_grant.py +0 -275
  60. pulumi_snowflake/view_grant.py +0 -685
  61. pulumi_snowflake/warehouse_grant.py +0 -416
  62. {pulumi_snowflake-0.56.0a1721200104.dist-info → pulumi_snowflake-0.56.0a1721667766.dist-info}/top_level.txt +0 -0
@@ -581,6 +581,8 @@ class SamlIntegration(pulumi.CustomResource):
581
581
  saml2_x509_cert: Optional[pulumi.Input[str]] = None,
582
582
  __props__=None):
583
583
  """
584
+ > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use Saml2Integration instead. <deprecation>
585
+
584
586
  ## Example Usage
585
587
 
586
588
  ```python
@@ -627,6 +629,8 @@ class SamlIntegration(pulumi.CustomResource):
627
629
  args: SamlIntegrationArgs,
628
630
  opts: Optional[pulumi.ResourceOptions] = None):
629
631
  """
632
+ > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use Saml2Integration instead. <deprecation>
633
+
630
634
  ## Example Usage
631
635
 
632
636
  ```python
@@ -8,47 +8,72 @@ import pulumi
8
8
  import pulumi.runtime
9
9
  from typing import Any, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
11
13
 
12
14
  __all__ = ['ScimIntegrationArgs', 'ScimIntegration']
13
15
 
14
16
  @pulumi.input_type
15
17
  class ScimIntegrationArgs:
16
18
  def __init__(__self__, *,
17
- provisioner_role: pulumi.Input[str],
19
+ enabled: pulumi.Input[bool],
20
+ run_as_role: pulumi.Input[str],
18
21
  scim_client: pulumi.Input[str],
22
+ comment: Optional[pulumi.Input[str]] = None,
19
23
  name: Optional[pulumi.Input[str]] = None,
20
- network_policy: Optional[pulumi.Input[str]] = None):
24
+ network_policy: Optional[pulumi.Input[str]] = None,
25
+ sync_password: Optional[pulumi.Input[str]] = None):
21
26
  """
22
27
  The set of arguments for constructing a ScimIntegration resource.
23
- :param pulumi.Input[str] provisioner_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
24
- :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration
25
- :param pulumi.Input[str] name: Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
26
- :param pulumi.Input[str] network_policy: Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
27
- """
28
- pulumi.set(__self__, "provisioner_role", provisioner_role)
28
+ :param pulumi.Input[bool] enabled: Specify whether the security integration is enabled.
29
+ :param pulumi.Input[str] run_as_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
30
+ :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
31
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
32
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
33
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy that controls SCIM network traffic.
34
+ :param pulumi.Input[str] sync_password: Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
35
+ """
36
+ pulumi.set(__self__, "enabled", enabled)
37
+ pulumi.set(__self__, "run_as_role", run_as_role)
29
38
  pulumi.set(__self__, "scim_client", scim_client)
39
+ if comment is not None:
40
+ pulumi.set(__self__, "comment", comment)
30
41
  if name is not None:
31
42
  pulumi.set(__self__, "name", name)
32
43
  if network_policy is not None:
33
44
  pulumi.set(__self__, "network_policy", network_policy)
45
+ if sync_password is not None:
46
+ pulumi.set(__self__, "sync_password", sync_password)
34
47
 
35
48
  @property
36
- @pulumi.getter(name="provisionerRole")
37
- def provisioner_role(self) -> pulumi.Input[str]:
49
+ @pulumi.getter
50
+ def enabled(self) -> pulumi.Input[bool]:
38
51
  """
39
- Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
52
+ Specify whether the security integration is enabled.
40
53
  """
41
- return pulumi.get(self, "provisioner_role")
54
+ return pulumi.get(self, "enabled")
42
55
 
43
- @provisioner_role.setter
44
- def provisioner_role(self, value: pulumi.Input[str]):
45
- pulumi.set(self, "provisioner_role", value)
56
+ @enabled.setter
57
+ def enabled(self, value: pulumi.Input[bool]):
58
+ pulumi.set(self, "enabled", value)
59
+
60
+ @property
61
+ @pulumi.getter(name="runAsRole")
62
+ def run_as_role(self) -> pulumi.Input[str]:
63
+ """
64
+ Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
65
+ """
66
+ return pulumi.get(self, "run_as_role")
67
+
68
+ @run_as_role.setter
69
+ def run_as_role(self, value: pulumi.Input[str]):
70
+ pulumi.set(self, "run_as_role", value)
46
71
 
47
72
  @property
48
73
  @pulumi.getter(name="scimClient")
49
74
  def scim_client(self) -> pulumi.Input[str]:
50
75
  """
51
- Specifies the client type for the scim integration
76
+ Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
52
77
  """
53
78
  return pulumi.get(self, "scim_client")
54
79
 
@@ -56,11 +81,23 @@ class ScimIntegrationArgs:
56
81
  def scim_client(self, value: pulumi.Input[str]):
57
82
  pulumi.set(self, "scim_client", value)
58
83
 
84
+ @property
85
+ @pulumi.getter
86
+ def comment(self) -> Optional[pulumi.Input[str]]:
87
+ """
88
+ Specifies a comment for the integration.
89
+ """
90
+ return pulumi.get(self, "comment")
91
+
92
+ @comment.setter
93
+ def comment(self, value: Optional[pulumi.Input[str]]):
94
+ pulumi.set(self, "comment", value)
95
+
59
96
  @property
60
97
  @pulumi.getter
61
98
  def name(self) -> Optional[pulumi.Input[str]]:
62
99
  """
63
- Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
100
+ String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
64
101
  """
65
102
  return pulumi.get(self, "name")
66
103
 
@@ -72,7 +109,7 @@ class ScimIntegrationArgs:
72
109
  @pulumi.getter(name="networkPolicy")
73
110
  def network_policy(self) -> Optional[pulumi.Input[str]]:
74
111
  """
75
- Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
112
+ Specifies an existing network policy that controls SCIM network traffic.
76
113
  """
77
114
  return pulumi.get(self, "network_policy")
78
115
 
@@ -80,51 +117,103 @@ class ScimIntegrationArgs:
80
117
  def network_policy(self, value: Optional[pulumi.Input[str]]):
81
118
  pulumi.set(self, "network_policy", value)
82
119
 
120
+ @property
121
+ @pulumi.getter(name="syncPassword")
122
+ def sync_password(self) -> Optional[pulumi.Input[str]]:
123
+ """
124
+ Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
125
+ """
126
+ return pulumi.get(self, "sync_password")
127
+
128
+ @sync_password.setter
129
+ def sync_password(self, value: Optional[pulumi.Input[str]]):
130
+ pulumi.set(self, "sync_password", value)
131
+
83
132
 
84
133
  @pulumi.input_type
85
134
  class _ScimIntegrationState:
86
135
  def __init__(__self__, *,
87
- created_on: Optional[pulumi.Input[str]] = None,
136
+ comment: Optional[pulumi.Input[str]] = None,
137
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ScimIntegrationDescribeOutputArgs']]]] = None,
138
+ enabled: Optional[pulumi.Input[bool]] = None,
88
139
  name: Optional[pulumi.Input[str]] = None,
89
140
  network_policy: Optional[pulumi.Input[str]] = None,
90
- provisioner_role: Optional[pulumi.Input[str]] = None,
91
- scim_client: Optional[pulumi.Input[str]] = None):
141
+ run_as_role: Optional[pulumi.Input[str]] = None,
142
+ scim_client: Optional[pulumi.Input[str]] = None,
143
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ScimIntegrationShowOutputArgs']]]] = None,
144
+ sync_password: Optional[pulumi.Input[str]] = None):
92
145
  """
93
146
  Input properties used for looking up and filtering ScimIntegration resources.
94
- :param pulumi.Input[str] created_on: Date and time when the SCIM integration was created.
95
- :param pulumi.Input[str] name: Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
96
- :param pulumi.Input[str] network_policy: Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
97
- :param pulumi.Input[str] provisioner_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
98
- :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration
99
- """
100
- if created_on is not None:
101
- pulumi.set(__self__, "created_on", created_on)
147
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
148
+ :param pulumi.Input[Sequence[pulumi.Input['ScimIntegrationDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
149
+ :param pulumi.Input[bool] enabled: Specify whether the security integration is enabled.
150
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
151
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy that controls SCIM network traffic.
152
+ :param pulumi.Input[str] run_as_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
153
+ :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
154
+ :param pulumi.Input[Sequence[pulumi.Input['ScimIntegrationShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
155
+ :param pulumi.Input[str] sync_password: Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
156
+ """
157
+ if comment is not None:
158
+ pulumi.set(__self__, "comment", comment)
159
+ if describe_outputs is not None:
160
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
161
+ if enabled is not None:
162
+ pulumi.set(__self__, "enabled", enabled)
102
163
  if name is not None:
103
164
  pulumi.set(__self__, "name", name)
104
165
  if network_policy is not None:
105
166
  pulumi.set(__self__, "network_policy", network_policy)
106
- if provisioner_role is not None:
107
- pulumi.set(__self__, "provisioner_role", provisioner_role)
167
+ if run_as_role is not None:
168
+ pulumi.set(__self__, "run_as_role", run_as_role)
108
169
  if scim_client is not None:
109
170
  pulumi.set(__self__, "scim_client", scim_client)
171
+ if show_outputs is not None:
172
+ pulumi.set(__self__, "show_outputs", show_outputs)
173
+ if sync_password is not None:
174
+ pulumi.set(__self__, "sync_password", sync_password)
175
+
176
+ @property
177
+ @pulumi.getter
178
+ def comment(self) -> Optional[pulumi.Input[str]]:
179
+ """
180
+ Specifies a comment for the integration.
181
+ """
182
+ return pulumi.get(self, "comment")
183
+
184
+ @comment.setter
185
+ def comment(self, value: Optional[pulumi.Input[str]]):
186
+ pulumi.set(self, "comment", value)
187
+
188
+ @property
189
+ @pulumi.getter(name="describeOutputs")
190
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ScimIntegrationDescribeOutputArgs']]]]:
191
+ """
192
+ Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
193
+ """
194
+ return pulumi.get(self, "describe_outputs")
195
+
196
+ @describe_outputs.setter
197
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ScimIntegrationDescribeOutputArgs']]]]):
198
+ pulumi.set(self, "describe_outputs", value)
110
199
 
111
200
  @property
112
- @pulumi.getter(name="createdOn")
113
- def created_on(self) -> Optional[pulumi.Input[str]]:
201
+ @pulumi.getter
202
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
114
203
  """
115
- Date and time when the SCIM integration was created.
204
+ Specify whether the security integration is enabled.
116
205
  """
117
- return pulumi.get(self, "created_on")
206
+ return pulumi.get(self, "enabled")
118
207
 
119
- @created_on.setter
120
- def created_on(self, value: Optional[pulumi.Input[str]]):
121
- pulumi.set(self, "created_on", value)
208
+ @enabled.setter
209
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
210
+ pulumi.set(self, "enabled", value)
122
211
 
123
212
  @property
124
213
  @pulumi.getter
125
214
  def name(self) -> Optional[pulumi.Input[str]]:
126
215
  """
127
- Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
216
+ String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
128
217
  """
129
218
  return pulumi.get(self, "name")
130
219
 
@@ -136,7 +225,7 @@ class _ScimIntegrationState:
136
225
  @pulumi.getter(name="networkPolicy")
137
226
  def network_policy(self) -> Optional[pulumi.Input[str]]:
138
227
  """
139
- Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
228
+ Specifies an existing network policy that controls SCIM network traffic.
140
229
  """
141
230
  return pulumi.get(self, "network_policy")
142
231
 
@@ -145,22 +234,22 @@ class _ScimIntegrationState:
145
234
  pulumi.set(self, "network_policy", value)
146
235
 
147
236
  @property
148
- @pulumi.getter(name="provisionerRole")
149
- def provisioner_role(self) -> Optional[pulumi.Input[str]]:
237
+ @pulumi.getter(name="runAsRole")
238
+ def run_as_role(self) -> Optional[pulumi.Input[str]]:
150
239
  """
151
- Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
240
+ Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
152
241
  """
153
- return pulumi.get(self, "provisioner_role")
242
+ return pulumi.get(self, "run_as_role")
154
243
 
155
- @provisioner_role.setter
156
- def provisioner_role(self, value: Optional[pulumi.Input[str]]):
157
- pulumi.set(self, "provisioner_role", value)
244
+ @run_as_role.setter
245
+ def run_as_role(self, value: Optional[pulumi.Input[str]]):
246
+ pulumi.set(self, "run_as_role", value)
158
247
 
159
248
  @property
160
249
  @pulumi.getter(name="scimClient")
161
250
  def scim_client(self) -> Optional[pulumi.Input[str]]:
162
251
  """
163
- Specifies the client type for the scim integration
252
+ Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
164
253
  """
165
254
  return pulumi.get(self, "scim_client")
166
255
 
@@ -168,43 +257,62 @@ class _ScimIntegrationState:
168
257
  def scim_client(self, value: Optional[pulumi.Input[str]]):
169
258
  pulumi.set(self, "scim_client", value)
170
259
 
260
+ @property
261
+ @pulumi.getter(name="showOutputs")
262
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ScimIntegrationShowOutputArgs']]]]:
263
+ """
264
+ Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
265
+ """
266
+ return pulumi.get(self, "show_outputs")
267
+
268
+ @show_outputs.setter
269
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ScimIntegrationShowOutputArgs']]]]):
270
+ pulumi.set(self, "show_outputs", value)
271
+
272
+ @property
273
+ @pulumi.getter(name="syncPassword")
274
+ def sync_password(self) -> Optional[pulumi.Input[str]]:
275
+ """
276
+ Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
277
+ """
278
+ return pulumi.get(self, "sync_password")
279
+
280
+ @sync_password.setter
281
+ def sync_password(self, value: Optional[pulumi.Input[str]]):
282
+ pulumi.set(self, "sync_password", value)
283
+
171
284
 
172
285
  class ScimIntegration(pulumi.CustomResource):
173
286
  @overload
174
287
  def __init__(__self__,
175
288
  resource_name: str,
176
289
  opts: Optional[pulumi.ResourceOptions] = None,
290
+ comment: Optional[pulumi.Input[str]] = None,
291
+ enabled: Optional[pulumi.Input[bool]] = None,
177
292
  name: Optional[pulumi.Input[str]] = None,
178
293
  network_policy: Optional[pulumi.Input[str]] = None,
179
- provisioner_role: Optional[pulumi.Input[str]] = None,
294
+ run_as_role: Optional[pulumi.Input[str]] = None,
180
295
  scim_client: Optional[pulumi.Input[str]] = None,
296
+ sync_password: Optional[pulumi.Input[str]] = None,
181
297
  __props__=None):
182
298
  """
183
- ## Example Usage
184
-
185
- ```python
186
- import pulumi
187
- import pulumi_snowflake as snowflake
188
-
189
- aad = snowflake.ScimIntegration("aad",
190
- name="AAD_PROVISIONING",
191
- network_policy="AAD_NETWORK_POLICY",
192
- provisioner_role="AAD_PROVISIONER",
193
- scim_client="AZURE")
194
- ```
299
+ !> **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.
195
300
 
196
301
  ## Import
197
302
 
198
303
  ```sh
199
- $ pulumi import snowflake:index/scimIntegration:ScimIntegration example name
304
+ $ pulumi import snowflake:index/scimIntegration:ScimIntegration example "name"
200
305
  ```
201
306
 
202
307
  :param str resource_name: The name of the resource.
203
308
  :param pulumi.ResourceOptions opts: Options for the resource.
204
- :param pulumi.Input[str] name: Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
205
- :param pulumi.Input[str] network_policy: Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
206
- :param pulumi.Input[str] provisioner_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
207
- :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration
309
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
310
+ :param pulumi.Input[bool] enabled: Specify whether the security integration is enabled.
311
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
312
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy that controls SCIM network traffic.
313
+ :param pulumi.Input[str] run_as_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
314
+ :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
315
+ :param pulumi.Input[str] sync_password: Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
208
316
  """
209
317
  ...
210
318
  @overload
@@ -213,23 +321,12 @@ class ScimIntegration(pulumi.CustomResource):
213
321
  args: ScimIntegrationArgs,
214
322
  opts: Optional[pulumi.ResourceOptions] = None):
215
323
  """
216
- ## Example Usage
217
-
218
- ```python
219
- import pulumi
220
- import pulumi_snowflake as snowflake
221
-
222
- aad = snowflake.ScimIntegration("aad",
223
- name="AAD_PROVISIONING",
224
- network_policy="AAD_NETWORK_POLICY",
225
- provisioner_role="AAD_PROVISIONER",
226
- scim_client="AZURE")
227
- ```
324
+ !> **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.
228
325
 
229
326
  ## Import
230
327
 
231
328
  ```sh
232
- $ pulumi import snowflake:index/scimIntegration:ScimIntegration example name
329
+ $ pulumi import snowflake:index/scimIntegration:ScimIntegration example "name"
233
330
  ```
234
331
 
235
332
  :param str resource_name: The name of the resource.
@@ -247,10 +344,13 @@ class ScimIntegration(pulumi.CustomResource):
247
344
  def _internal_init(__self__,
248
345
  resource_name: str,
249
346
  opts: Optional[pulumi.ResourceOptions] = None,
347
+ comment: Optional[pulumi.Input[str]] = None,
348
+ enabled: Optional[pulumi.Input[bool]] = None,
250
349
  name: Optional[pulumi.Input[str]] = None,
251
350
  network_policy: Optional[pulumi.Input[str]] = None,
252
- provisioner_role: Optional[pulumi.Input[str]] = None,
351
+ run_as_role: Optional[pulumi.Input[str]] = None,
253
352
  scim_client: Optional[pulumi.Input[str]] = None,
353
+ sync_password: Optional[pulumi.Input[str]] = None,
254
354
  __props__=None):
255
355
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
256
356
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -260,15 +360,21 @@ class ScimIntegration(pulumi.CustomResource):
260
360
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
261
361
  __props__ = ScimIntegrationArgs.__new__(ScimIntegrationArgs)
262
362
 
363
+ __props__.__dict__["comment"] = comment
364
+ if enabled is None and not opts.urn:
365
+ raise TypeError("Missing required property 'enabled'")
366
+ __props__.__dict__["enabled"] = enabled
263
367
  __props__.__dict__["name"] = name
264
368
  __props__.__dict__["network_policy"] = network_policy
265
- if provisioner_role is None and not opts.urn:
266
- raise TypeError("Missing required property 'provisioner_role'")
267
- __props__.__dict__["provisioner_role"] = provisioner_role
369
+ if run_as_role is None and not opts.urn:
370
+ raise TypeError("Missing required property 'run_as_role'")
371
+ __props__.__dict__["run_as_role"] = run_as_role
268
372
  if scim_client is None and not opts.urn:
269
373
  raise TypeError("Missing required property 'scim_client'")
270
374
  __props__.__dict__["scim_client"] = scim_client
271
- __props__.__dict__["created_on"] = None
375
+ __props__.__dict__["sync_password"] = sync_password
376
+ __props__.__dict__["describe_outputs"] = None
377
+ __props__.__dict__["show_outputs"] = None
272
378
  super(ScimIntegration, __self__).__init__(
273
379
  'snowflake:index/scimIntegration:ScimIntegration',
274
380
  resource_name,
@@ -279,11 +385,15 @@ class ScimIntegration(pulumi.CustomResource):
279
385
  def get(resource_name: str,
280
386
  id: pulumi.Input[str],
281
387
  opts: Optional[pulumi.ResourceOptions] = None,
282
- created_on: Optional[pulumi.Input[str]] = None,
388
+ comment: Optional[pulumi.Input[str]] = None,
389
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ScimIntegrationDescribeOutputArgs']]]]] = None,
390
+ enabled: Optional[pulumi.Input[bool]] = None,
283
391
  name: Optional[pulumi.Input[str]] = None,
284
392
  network_policy: Optional[pulumi.Input[str]] = None,
285
- provisioner_role: Optional[pulumi.Input[str]] = None,
286
- scim_client: Optional[pulumi.Input[str]] = None) -> 'ScimIntegration':
393
+ run_as_role: Optional[pulumi.Input[str]] = None,
394
+ scim_client: Optional[pulumi.Input[str]] = None,
395
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ScimIntegrationShowOutputArgs']]]]] = None,
396
+ sync_password: Optional[pulumi.Input[str]] = None) -> 'ScimIntegration':
287
397
  """
288
398
  Get an existing ScimIntegration resource's state with the given name, id, and optional extra
289
399
  properties used to qualify the lookup.
@@ -291,36 +401,60 @@ class ScimIntegration(pulumi.CustomResource):
291
401
  :param str resource_name: The unique name of the resulting resource.
292
402
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
293
403
  :param pulumi.ResourceOptions opts: Options for the resource.
294
- :param pulumi.Input[str] created_on: Date and time when the SCIM integration was created.
295
- :param pulumi.Input[str] name: Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
296
- :param pulumi.Input[str] network_policy: Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
297
- :param pulumi.Input[str] provisioner_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
298
- :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration
404
+ :param pulumi.Input[str] comment: Specifies a comment for the integration.
405
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ScimIntegrationDescribeOutputArgs']]]] describe_outputs: Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
406
+ :param pulumi.Input[bool] enabled: Specify whether the security integration is enabled.
407
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
408
+ :param pulumi.Input[str] network_policy: Specifies an existing network policy that controls SCIM network traffic.
409
+ :param pulumi.Input[str] run_as_role: Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
410
+ :param pulumi.Input[str] scim_client: Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
411
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ScimIntegrationShowOutputArgs']]]] show_outputs: Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
412
+ :param pulumi.Input[str] sync_password: Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
299
413
  """
300
414
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
301
415
 
302
416
  __props__ = _ScimIntegrationState.__new__(_ScimIntegrationState)
303
417
 
304
- __props__.__dict__["created_on"] = created_on
418
+ __props__.__dict__["comment"] = comment
419
+ __props__.__dict__["describe_outputs"] = describe_outputs
420
+ __props__.__dict__["enabled"] = enabled
305
421
  __props__.__dict__["name"] = name
306
422
  __props__.__dict__["network_policy"] = network_policy
307
- __props__.__dict__["provisioner_role"] = provisioner_role
423
+ __props__.__dict__["run_as_role"] = run_as_role
308
424
  __props__.__dict__["scim_client"] = scim_client
425
+ __props__.__dict__["show_outputs"] = show_outputs
426
+ __props__.__dict__["sync_password"] = sync_password
309
427
  return ScimIntegration(resource_name, opts=opts, __props__=__props__)
310
428
 
311
429
  @property
312
- @pulumi.getter(name="createdOn")
313
- def created_on(self) -> pulumi.Output[str]:
430
+ @pulumi.getter
431
+ def comment(self) -> pulumi.Output[Optional[str]]:
314
432
  """
315
- Date and time when the SCIM integration was created.
433
+ Specifies a comment for the integration.
316
434
  """
317
- return pulumi.get(self, "created_on")
435
+ return pulumi.get(self, "comment")
436
+
437
+ @property
438
+ @pulumi.getter(name="describeOutputs")
439
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.ScimIntegrationDescribeOutput']]:
440
+ """
441
+ Outputs the result of `DESCRIBE SECURITY INTEGRATIONS` for the given security integration.
442
+ """
443
+ return pulumi.get(self, "describe_outputs")
444
+
445
+ @property
446
+ @pulumi.getter
447
+ def enabled(self) -> pulumi.Output[bool]:
448
+ """
449
+ Specify whether the security integration is enabled.
450
+ """
451
+ return pulumi.get(self, "enabled")
318
452
 
319
453
  @property
320
454
  @pulumi.getter
321
455
  def name(self) -> pulumi.Output[str]:
322
456
  """
323
- Specifies the name of the SCIM integration. This name follows the rules for Object Identifiers. The name should be unique among security integrations in your account.
457
+ String that specifies the identifier (i.e. name) for the integration; must be unique in your account.
324
458
  """
325
459
  return pulumi.get(self, "name")
326
460
 
@@ -328,23 +462,39 @@ class ScimIntegration(pulumi.CustomResource):
328
462
  @pulumi.getter(name="networkPolicy")
329
463
  def network_policy(self) -> pulumi.Output[Optional[str]]:
330
464
  """
331
- Specifies an existing network policy active for your account. The network policy restricts the list of user IP addresses when exchanging an authorization code for an access or refresh token and when using a refresh token to obtain a new access token. If this parameter is not set, the network policy for the account (if any) is used instead.
465
+ Specifies an existing network policy that controls SCIM network traffic.
332
466
  """
333
467
  return pulumi.get(self, "network_policy")
334
468
 
335
469
  @property
336
- @pulumi.getter(name="provisionerRole")
337
- def provisioner_role(self) -> pulumi.Output[str]:
470
+ @pulumi.getter(name="runAsRole")
471
+ def run_as_role(self) -> pulumi.Output[str]:
338
472
  """
339
- Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM.
473
+ Specify the SCIM role in Snowflake that owns any users and roles that are imported from the identity provider into Snowflake using SCIM. Provider assumes that the specified role is already provided. Valid options are: [OKTA*PROVISIONER AAD*PROVISIONER GENERIC*SCIM*PROVISIONER].
340
474
  """
341
- return pulumi.get(self, "provisioner_role")
475
+ return pulumi.get(self, "run_as_role")
342
476
 
343
477
  @property
344
478
  @pulumi.getter(name="scimClient")
345
479
  def scim_client(self) -> pulumi.Output[str]:
346
480
  """
347
- Specifies the client type for the scim integration
481
+ Specifies the client type for the scim integration. Valid options are: [OKTA AZURE GENERIC].
348
482
  """
349
483
  return pulumi.get(self, "scim_client")
350
484
 
485
+ @property
486
+ @pulumi.getter(name="showOutputs")
487
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.ScimIntegrationShowOutput']]:
488
+ """
489
+ Outputs the result of `SHOW SECURITY INTEGRATIONS` for the given security integration.
490
+ """
491
+ return pulumi.get(self, "show_outputs")
492
+
493
+ @property
494
+ @pulumi.getter(name="syncPassword")
495
+ def sync_password(self) -> pulumi.Output[Optional[str]]:
496
+ """
497
+ Specifies whether to enable or disable the synchronization of a user password from an Okta SCIM client as part of the API request to Snowflake. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
498
+ """
499
+ return pulumi.get(self, "sync_password")
500
+