pulumi-snowflake 0.58.0a1726035035__py3-none-any.whl → 0.59.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.
- pulumi_snowflake/_inputs.py +8587 -2022
- pulumi_snowflake/account.py +28 -50
- pulumi_snowflake/account_parameter.py +0 -28
- pulumi_snowflake/account_password_policy_attachment.py +2 -30
- pulumi_snowflake/account_role.py +41 -36
- pulumi_snowflake/alert.py +28 -40
- pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +35 -15
- pulumi_snowflake/api_authentication_integration_with_client_credentials.py +35 -15
- pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +35 -15
- pulumi_snowflake/api_integration.py +28 -54
- pulumi_snowflake/cortex_search_service.py +28 -76
- pulumi_snowflake/database.py +82 -15
- pulumi_snowflake/database_old.py +0 -72
- pulumi_snowflake/database_role.py +76 -42
- pulumi_snowflake/dynamic_table.py +28 -38
- pulumi_snowflake/email_notification_integration.py +28 -26
- pulumi_snowflake/external_function.py +28 -52
- pulumi_snowflake/external_oauth_integration.py +35 -15
- pulumi_snowflake/external_table.py +28 -48
- pulumi_snowflake/failover_group.py +28 -72
- pulumi_snowflake/file_format.py +28 -26
- pulumi_snowflake/function.py +28 -4
- pulumi_snowflake/get_database_roles.py +63 -36
- pulumi_snowflake/get_masking_policies.py +73 -48
- pulumi_snowflake/get_resource_monitors.py +28 -16
- pulumi_snowflake/get_row_access_policies.py +73 -48
- pulumi_snowflake/get_users.py +96 -33
- pulumi_snowflake/get_views.py +94 -51
- pulumi_snowflake/grant_account_role.py +0 -4
- pulumi_snowflake/grant_application_role.py +0 -4
- pulumi_snowflake/grant_database_role.py +0 -4
- pulumi_snowflake/grant_privileges_to_account_role.py +4 -4
- pulumi_snowflake/grant_privileges_to_database_role.py +6 -2
- pulumi_snowflake/grant_privileges_to_share.py +49 -2
- pulumi_snowflake/managed_account.py +28 -4
- pulumi_snowflake/masking_policy.py +208 -306
- pulumi_snowflake/materialized_view.py +28 -34
- pulumi_snowflake/network_policy.py +35 -15
- pulumi_snowflake/network_policy_attachment.py +0 -30
- pulumi_snowflake/network_rule.py +28 -66
- pulumi_snowflake/notification_integration.py +28 -34
- pulumi_snowflake/oauth_integration.py +0 -34
- pulumi_snowflake/oauth_integration_for_custom_clients.py +35 -101
- pulumi_snowflake/oauth_integration_for_partner_applications.py +35 -15
- pulumi_snowflake/object_parameter.py +0 -98
- pulumi_snowflake/outputs.py +13035 -4202
- pulumi_snowflake/password_policy.py +28 -28
- pulumi_snowflake/pipe.py +28 -4
- pulumi_snowflake/procedure.py +28 -4
- pulumi_snowflake/pulumi-plugin.json +1 -1
- pulumi_snowflake/resource_monitor.py +111 -307
- pulumi_snowflake/role.py +41 -36
- pulumi_snowflake/row_access_policy.py +195 -147
- pulumi_snowflake/saml2_integration.py +35 -15
- pulumi_snowflake/saml_integration.py +0 -34
- pulumi_snowflake/schema.py +39 -19
- pulumi_snowflake/scim_integration.py +35 -15
- pulumi_snowflake/secondary_database.py +35 -19
- pulumi_snowflake/sequence.py +4 -36
- pulumi_snowflake/session_parameter.py +0 -32
- pulumi_snowflake/share.py +28 -28
- pulumi_snowflake/shared_database.py +35 -15
- pulumi_snowflake/stage.py +28 -28
- pulumi_snowflake/storage_integration.py +28 -4
- pulumi_snowflake/stream.py +28 -4
- pulumi_snowflake/streamlit.py +36 -16
- pulumi_snowflake/table.py +28 -32
- pulumi_snowflake/table_column_masking_policy_application.py +2 -14
- pulumi_snowflake/table_constraint.py +0 -152
- pulumi_snowflake/tag.py +28 -40
- pulumi_snowflake/tag_association.py +0 -120
- pulumi_snowflake/tag_masking_policy_association.py +0 -4
- pulumi_snowflake/task.py +28 -92
- pulumi_snowflake/unsafe_execute.py +2 -20
- pulumi_snowflake/user.py +3341 -368
- pulumi_snowflake/user_password_policy_attachment.py +0 -46
- pulumi_snowflake/view.py +465 -185
- pulumi_snowflake/warehouse.py +39 -43
- {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.59.0.dist-info}/METADATA +1 -1
- pulumi_snowflake-0.59.0.dist-info/RECORD +129 -0
- {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.59.0.dist-info}/WHEEL +1 -1
- pulumi_snowflake-0.58.0a1726035035.dist-info/RECORD +0 -129
- {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.59.0.dist-info}/top_level.txt +0 -0
|
@@ -8,31 +8,33 @@ 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__ = ['RowAccessPolicyArgs', 'RowAccessPolicy']
|
|
13
15
|
|
|
14
16
|
@pulumi.input_type
|
|
15
17
|
class RowAccessPolicyArgs:
|
|
16
18
|
def __init__(__self__, *,
|
|
19
|
+
arguments: pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]],
|
|
20
|
+
body: pulumi.Input[str],
|
|
17
21
|
database: pulumi.Input[str],
|
|
18
|
-
row_access_expression: pulumi.Input[str],
|
|
19
22
|
schema: pulumi.Input[str],
|
|
20
|
-
signature: pulumi.Input[Mapping[str, pulumi.Input[str]]],
|
|
21
23
|
comment: Optional[pulumi.Input[str]] = None,
|
|
22
24
|
name: Optional[pulumi.Input[str]] = None):
|
|
23
25
|
"""
|
|
24
26
|
The set of arguments for constructing a RowAccessPolicy resource.
|
|
25
|
-
:param pulumi.Input[
|
|
26
|
-
:param pulumi.Input[str]
|
|
27
|
-
:param pulumi.Input[str]
|
|
28
|
-
:param pulumi.Input[
|
|
27
|
+
:param pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]] arguments: List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
28
|
+
:param pulumi.Input[str] body: Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
29
|
+
:param pulumi.Input[str] database: The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
30
|
+
:param pulumi.Input[str] schema: The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
29
31
|
:param pulumi.Input[str] comment: Specifies a comment for the row access policy.
|
|
30
|
-
:param pulumi.Input[str] name: Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
|
|
32
|
+
:param pulumi.Input[str] name: Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
31
33
|
"""
|
|
34
|
+
pulumi.set(__self__, "arguments", arguments)
|
|
35
|
+
pulumi.set(__self__, "body", body)
|
|
32
36
|
pulumi.set(__self__, "database", database)
|
|
33
|
-
pulumi.set(__self__, "row_access_expression", row_access_expression)
|
|
34
37
|
pulumi.set(__self__, "schema", schema)
|
|
35
|
-
pulumi.set(__self__, "signature", signature)
|
|
36
38
|
if comment is not None:
|
|
37
39
|
pulumi.set(__self__, "comment", comment)
|
|
38
40
|
if name is not None:
|
|
@@ -40,51 +42,51 @@ class RowAccessPolicyArgs:
|
|
|
40
42
|
|
|
41
43
|
@property
|
|
42
44
|
@pulumi.getter
|
|
43
|
-
def
|
|
45
|
+
def arguments(self) -> pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]]:
|
|
44
46
|
"""
|
|
45
|
-
The database
|
|
47
|
+
List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
46
48
|
"""
|
|
47
|
-
return pulumi.get(self, "
|
|
49
|
+
return pulumi.get(self, "arguments")
|
|
48
50
|
|
|
49
|
-
@
|
|
50
|
-
def
|
|
51
|
-
pulumi.set(self, "
|
|
51
|
+
@arguments.setter
|
|
52
|
+
def arguments(self, value: pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]]):
|
|
53
|
+
pulumi.set(self, "arguments", value)
|
|
52
54
|
|
|
53
55
|
@property
|
|
54
|
-
@pulumi.getter
|
|
55
|
-
def
|
|
56
|
+
@pulumi.getter
|
|
57
|
+
def body(self) -> pulumi.Input[str]:
|
|
56
58
|
"""
|
|
57
|
-
Specifies the SQL expression. The expression can be any boolean-valued SQL expression.
|
|
59
|
+
Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
58
60
|
"""
|
|
59
|
-
return pulumi.get(self, "
|
|
61
|
+
return pulumi.get(self, "body")
|
|
60
62
|
|
|
61
|
-
@
|
|
62
|
-
def
|
|
63
|
-
pulumi.set(self, "
|
|
63
|
+
@body.setter
|
|
64
|
+
def body(self, value: pulumi.Input[str]):
|
|
65
|
+
pulumi.set(self, "body", value)
|
|
64
66
|
|
|
65
67
|
@property
|
|
66
68
|
@pulumi.getter
|
|
67
|
-
def
|
|
69
|
+
def database(self) -> pulumi.Input[str]:
|
|
68
70
|
"""
|
|
69
|
-
The
|
|
71
|
+
The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
70
72
|
"""
|
|
71
|
-
return pulumi.get(self, "
|
|
73
|
+
return pulumi.get(self, "database")
|
|
72
74
|
|
|
73
|
-
@
|
|
74
|
-
def
|
|
75
|
-
pulumi.set(self, "
|
|
75
|
+
@database.setter
|
|
76
|
+
def database(self, value: pulumi.Input[str]):
|
|
77
|
+
pulumi.set(self, "database", value)
|
|
76
78
|
|
|
77
79
|
@property
|
|
78
80
|
@pulumi.getter
|
|
79
|
-
def
|
|
81
|
+
def schema(self) -> pulumi.Input[str]:
|
|
80
82
|
"""
|
|
81
|
-
|
|
83
|
+
The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
82
84
|
"""
|
|
83
|
-
return pulumi.get(self, "
|
|
85
|
+
return pulumi.get(self, "schema")
|
|
84
86
|
|
|
85
|
-
@
|
|
86
|
-
def
|
|
87
|
-
pulumi.set(self, "
|
|
87
|
+
@schema.setter
|
|
88
|
+
def schema(self, value: pulumi.Input[str]):
|
|
89
|
+
pulumi.set(self, "schema", value)
|
|
88
90
|
|
|
89
91
|
@property
|
|
90
92
|
@pulumi.getter
|
|
@@ -102,7 +104,7 @@ class RowAccessPolicyArgs:
|
|
|
102
104
|
@pulumi.getter
|
|
103
105
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
104
106
|
"""
|
|
105
|
-
Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
|
|
107
|
+
Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
106
108
|
"""
|
|
107
109
|
return pulumi.get(self, "name")
|
|
108
110
|
|
|
@@ -114,33 +116,69 @@ class RowAccessPolicyArgs:
|
|
|
114
116
|
@pulumi.input_type
|
|
115
117
|
class _RowAccessPolicyState:
|
|
116
118
|
def __init__(__self__, *,
|
|
119
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]]] = None,
|
|
120
|
+
body: Optional[pulumi.Input[str]] = None,
|
|
117
121
|
comment: Optional[pulumi.Input[str]] = None,
|
|
118
122
|
database: Optional[pulumi.Input[str]] = None,
|
|
123
|
+
describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyDescribeOutputArgs']]]] = None,
|
|
124
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
119
125
|
name: Optional[pulumi.Input[str]] = None,
|
|
120
|
-
row_access_expression: Optional[pulumi.Input[str]] = None,
|
|
121
126
|
schema: Optional[pulumi.Input[str]] = None,
|
|
122
|
-
|
|
127
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyShowOutputArgs']]]] = None):
|
|
123
128
|
"""
|
|
124
129
|
Input properties used for looking up and filtering RowAccessPolicy resources.
|
|
130
|
+
:param pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]] arguments: List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
131
|
+
:param pulumi.Input[str] body: Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
125
132
|
:param pulumi.Input[str] comment: Specifies a comment for the row access policy.
|
|
126
|
-
:param pulumi.Input[str] database: The database in which to create the row access policy.
|
|
127
|
-
:param pulumi.Input[
|
|
128
|
-
:param pulumi.Input[str]
|
|
129
|
-
:param pulumi.Input[str]
|
|
130
|
-
:param pulumi.Input[
|
|
131
|
-
|
|
133
|
+
:param pulumi.Input[str] database: The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
134
|
+
:param pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE ROW ACCESS POLICY` for the given row access policy.
|
|
135
|
+
:param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
136
|
+
:param pulumi.Input[str] name: Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
137
|
+
:param pulumi.Input[str] schema: The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
138
|
+
:param pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyShowOutputArgs']]] show_outputs: Outputs the result of `SHOW ROW ACCESS POLICY` for the given row access policy.
|
|
139
|
+
"""
|
|
140
|
+
if arguments is not None:
|
|
141
|
+
pulumi.set(__self__, "arguments", arguments)
|
|
142
|
+
if body is not None:
|
|
143
|
+
pulumi.set(__self__, "body", body)
|
|
132
144
|
if comment is not None:
|
|
133
145
|
pulumi.set(__self__, "comment", comment)
|
|
134
146
|
if database is not None:
|
|
135
147
|
pulumi.set(__self__, "database", database)
|
|
148
|
+
if describe_outputs is not None:
|
|
149
|
+
pulumi.set(__self__, "describe_outputs", describe_outputs)
|
|
150
|
+
if fully_qualified_name is not None:
|
|
151
|
+
pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
|
|
136
152
|
if name is not None:
|
|
137
153
|
pulumi.set(__self__, "name", name)
|
|
138
|
-
if row_access_expression is not None:
|
|
139
|
-
pulumi.set(__self__, "row_access_expression", row_access_expression)
|
|
140
154
|
if schema is not None:
|
|
141
155
|
pulumi.set(__self__, "schema", schema)
|
|
142
|
-
if
|
|
143
|
-
pulumi.set(__self__, "
|
|
156
|
+
if show_outputs is not None:
|
|
157
|
+
pulumi.set(__self__, "show_outputs", show_outputs)
|
|
158
|
+
|
|
159
|
+
@property
|
|
160
|
+
@pulumi.getter
|
|
161
|
+
def arguments(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]]]:
|
|
162
|
+
"""
|
|
163
|
+
List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
164
|
+
"""
|
|
165
|
+
return pulumi.get(self, "arguments")
|
|
166
|
+
|
|
167
|
+
@arguments.setter
|
|
168
|
+
def arguments(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyArgumentArgs']]]]):
|
|
169
|
+
pulumi.set(self, "arguments", value)
|
|
170
|
+
|
|
171
|
+
@property
|
|
172
|
+
@pulumi.getter
|
|
173
|
+
def body(self) -> Optional[pulumi.Input[str]]:
|
|
174
|
+
"""
|
|
175
|
+
Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
176
|
+
"""
|
|
177
|
+
return pulumi.get(self, "body")
|
|
178
|
+
|
|
179
|
+
@body.setter
|
|
180
|
+
def body(self, value: Optional[pulumi.Input[str]]):
|
|
181
|
+
pulumi.set(self, "body", value)
|
|
144
182
|
|
|
145
183
|
@property
|
|
146
184
|
@pulumi.getter
|
|
@@ -158,7 +196,7 @@ class _RowAccessPolicyState:
|
|
|
158
196
|
@pulumi.getter
|
|
159
197
|
def database(self) -> Optional[pulumi.Input[str]]:
|
|
160
198
|
"""
|
|
161
|
-
The database in which to create the row access policy.
|
|
199
|
+
The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
162
200
|
"""
|
|
163
201
|
return pulumi.get(self, "database")
|
|
164
202
|
|
|
@@ -166,11 +204,35 @@ class _RowAccessPolicyState:
|
|
|
166
204
|
def database(self, value: Optional[pulumi.Input[str]]):
|
|
167
205
|
pulumi.set(self, "database", value)
|
|
168
206
|
|
|
207
|
+
@property
|
|
208
|
+
@pulumi.getter(name="describeOutputs")
|
|
209
|
+
def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyDescribeOutputArgs']]]]:
|
|
210
|
+
"""
|
|
211
|
+
Outputs the result of `DESCRIBE ROW ACCESS POLICY` for the given row access policy.
|
|
212
|
+
"""
|
|
213
|
+
return pulumi.get(self, "describe_outputs")
|
|
214
|
+
|
|
215
|
+
@describe_outputs.setter
|
|
216
|
+
def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyDescribeOutputArgs']]]]):
|
|
217
|
+
pulumi.set(self, "describe_outputs", value)
|
|
218
|
+
|
|
219
|
+
@property
|
|
220
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
221
|
+
def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
|
|
222
|
+
"""
|
|
223
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
224
|
+
"""
|
|
225
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
226
|
+
|
|
227
|
+
@fully_qualified_name.setter
|
|
228
|
+
def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
|
|
229
|
+
pulumi.set(self, "fully_qualified_name", value)
|
|
230
|
+
|
|
169
231
|
@property
|
|
170
232
|
@pulumi.getter
|
|
171
233
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
172
234
|
"""
|
|
173
|
-
Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
|
|
235
|
+
Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
174
236
|
"""
|
|
175
237
|
return pulumi.get(self, "name")
|
|
176
238
|
|
|
@@ -178,23 +240,11 @@ class _RowAccessPolicyState:
|
|
|
178
240
|
def name(self, value: Optional[pulumi.Input[str]]):
|
|
179
241
|
pulumi.set(self, "name", value)
|
|
180
242
|
|
|
181
|
-
@property
|
|
182
|
-
@pulumi.getter(name="rowAccessExpression")
|
|
183
|
-
def row_access_expression(self) -> Optional[pulumi.Input[str]]:
|
|
184
|
-
"""
|
|
185
|
-
Specifies the SQL expression. The expression can be any boolean-valued SQL expression.
|
|
186
|
-
"""
|
|
187
|
-
return pulumi.get(self, "row_access_expression")
|
|
188
|
-
|
|
189
|
-
@row_access_expression.setter
|
|
190
|
-
def row_access_expression(self, value: Optional[pulumi.Input[str]]):
|
|
191
|
-
pulumi.set(self, "row_access_expression", value)
|
|
192
|
-
|
|
193
243
|
@property
|
|
194
244
|
@pulumi.getter
|
|
195
245
|
def schema(self) -> Optional[pulumi.Input[str]]:
|
|
196
246
|
"""
|
|
197
|
-
The schema in which to create the row access policy.
|
|
247
|
+
The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
198
248
|
"""
|
|
199
249
|
return pulumi.get(self, "schema")
|
|
200
250
|
|
|
@@ -203,16 +253,16 @@ class _RowAccessPolicyState:
|
|
|
203
253
|
pulumi.set(self, "schema", value)
|
|
204
254
|
|
|
205
255
|
@property
|
|
206
|
-
@pulumi.getter
|
|
207
|
-
def
|
|
256
|
+
@pulumi.getter(name="showOutputs")
|
|
257
|
+
def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyShowOutputArgs']]]]:
|
|
208
258
|
"""
|
|
209
|
-
|
|
259
|
+
Outputs the result of `SHOW ROW ACCESS POLICY` for the given row access policy.
|
|
210
260
|
"""
|
|
211
|
-
return pulumi.get(self, "
|
|
261
|
+
return pulumi.get(self, "show_outputs")
|
|
212
262
|
|
|
213
|
-
@
|
|
214
|
-
def
|
|
215
|
-
pulumi.set(self, "
|
|
263
|
+
@show_outputs.setter
|
|
264
|
+
def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RowAccessPolicyShowOutputArgs']]]]):
|
|
265
|
+
pulumi.set(self, "show_outputs", value)
|
|
216
266
|
|
|
217
267
|
|
|
218
268
|
class RowAccessPolicy(pulumi.CustomResource):
|
|
@@ -220,47 +270,28 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
220
270
|
def __init__(__self__,
|
|
221
271
|
resource_name: str,
|
|
222
272
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
273
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyArgumentArgs', 'RowAccessPolicyArgumentArgsDict']]]]] = None,
|
|
274
|
+
body: Optional[pulumi.Input[str]] = None,
|
|
223
275
|
comment: Optional[pulumi.Input[str]] = None,
|
|
224
276
|
database: Optional[pulumi.Input[str]] = None,
|
|
225
277
|
name: Optional[pulumi.Input[str]] = None,
|
|
226
|
-
row_access_expression: Optional[pulumi.Input[str]] = None,
|
|
227
278
|
schema: Optional[pulumi.Input[str]] = None,
|
|
228
|
-
signature: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
229
279
|
__props__=None):
|
|
230
280
|
"""
|
|
231
|
-
## Example Usage
|
|
232
|
-
|
|
233
|
-
```python
|
|
234
|
-
import pulumi
|
|
235
|
-
import pulumi_snowflake as snowflake
|
|
236
|
-
|
|
237
|
-
example_row_access_policy = snowflake.RowAccessPolicy("example_row_access_policy",
|
|
238
|
-
name="EXAMPLE_ROW_ACCESS_POLICY",
|
|
239
|
-
database="EXAMPLE_DB",
|
|
240
|
-
schema="EXAMPLE_SCHEMA",
|
|
241
|
-
signature={
|
|
242
|
-
"A": "VARCHAR",
|
|
243
|
-
"B": "VARCHAR",
|
|
244
|
-
},
|
|
245
|
-
row_access_expression="case when current_role() in ('ANALYST') then true else false end")
|
|
246
|
-
```
|
|
247
|
-
|
|
248
281
|
## Import
|
|
249
282
|
|
|
250
|
-
format is database name | schema name | policy name
|
|
251
|
-
|
|
252
283
|
```sh
|
|
253
|
-
$ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example '
|
|
284
|
+
$ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example '"<database_name>"."<schema_name>"."<row_access_policy_name>"'
|
|
254
285
|
```
|
|
255
286
|
|
|
256
287
|
:param str resource_name: The name of the resource.
|
|
257
288
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
289
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyArgumentArgs', 'RowAccessPolicyArgumentArgsDict']]]] arguments: List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
290
|
+
:param pulumi.Input[str] body: Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
258
291
|
:param pulumi.Input[str] comment: Specifies a comment for the row access policy.
|
|
259
|
-
:param pulumi.Input[str] database: The database in which to create the row access policy.
|
|
260
|
-
:param pulumi.Input[str] name: Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created.
|
|
261
|
-
:param pulumi.Input[str]
|
|
262
|
-
:param pulumi.Input[str] schema: The schema in which to create the row access policy.
|
|
263
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] signature: Specifies signature (arguments) for the row access policy (uppercase and sorted to avoid recreation of resource). A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy.
|
|
292
|
+
:param pulumi.Input[str] database: The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
293
|
+
:param pulumi.Input[str] name: Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
294
|
+
:param pulumi.Input[str] schema: The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
264
295
|
"""
|
|
265
296
|
...
|
|
266
297
|
@overload
|
|
@@ -269,29 +300,10 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
269
300
|
args: RowAccessPolicyArgs,
|
|
270
301
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
271
302
|
"""
|
|
272
|
-
## Example Usage
|
|
273
|
-
|
|
274
|
-
```python
|
|
275
|
-
import pulumi
|
|
276
|
-
import pulumi_snowflake as snowflake
|
|
277
|
-
|
|
278
|
-
example_row_access_policy = snowflake.RowAccessPolicy("example_row_access_policy",
|
|
279
|
-
name="EXAMPLE_ROW_ACCESS_POLICY",
|
|
280
|
-
database="EXAMPLE_DB",
|
|
281
|
-
schema="EXAMPLE_SCHEMA",
|
|
282
|
-
signature={
|
|
283
|
-
"A": "VARCHAR",
|
|
284
|
-
"B": "VARCHAR",
|
|
285
|
-
},
|
|
286
|
-
row_access_expression="case when current_role() in ('ANALYST') then true else false end")
|
|
287
|
-
```
|
|
288
|
-
|
|
289
303
|
## Import
|
|
290
304
|
|
|
291
|
-
format is database name | schema name | policy name
|
|
292
|
-
|
|
293
305
|
```sh
|
|
294
|
-
$ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example '
|
|
306
|
+
$ pulumi import snowflake:index/rowAccessPolicy:RowAccessPolicy example '"<database_name>"."<schema_name>"."<row_access_policy_name>"'
|
|
295
307
|
```
|
|
296
308
|
|
|
297
309
|
:param str resource_name: The name of the resource.
|
|
@@ -309,12 +321,12 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
309
321
|
def _internal_init(__self__,
|
|
310
322
|
resource_name: str,
|
|
311
323
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
324
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyArgumentArgs', 'RowAccessPolicyArgumentArgsDict']]]]] = None,
|
|
325
|
+
body: Optional[pulumi.Input[str]] = None,
|
|
312
326
|
comment: Optional[pulumi.Input[str]] = None,
|
|
313
327
|
database: Optional[pulumi.Input[str]] = None,
|
|
314
328
|
name: Optional[pulumi.Input[str]] = None,
|
|
315
|
-
row_access_expression: Optional[pulumi.Input[str]] = None,
|
|
316
329
|
schema: Optional[pulumi.Input[str]] = None,
|
|
317
|
-
signature: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
318
330
|
__props__=None):
|
|
319
331
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
320
332
|
if not isinstance(opts, pulumi.ResourceOptions):
|
|
@@ -324,20 +336,23 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
324
336
|
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
325
337
|
__props__ = RowAccessPolicyArgs.__new__(RowAccessPolicyArgs)
|
|
326
338
|
|
|
339
|
+
if arguments is None and not opts.urn:
|
|
340
|
+
raise TypeError("Missing required property 'arguments'")
|
|
341
|
+
__props__.__dict__["arguments"] = arguments
|
|
342
|
+
if body is None and not opts.urn:
|
|
343
|
+
raise TypeError("Missing required property 'body'")
|
|
344
|
+
__props__.__dict__["body"] = body
|
|
327
345
|
__props__.__dict__["comment"] = comment
|
|
328
346
|
if database is None and not opts.urn:
|
|
329
347
|
raise TypeError("Missing required property 'database'")
|
|
330
348
|
__props__.__dict__["database"] = database
|
|
331
349
|
__props__.__dict__["name"] = name
|
|
332
|
-
if row_access_expression is None and not opts.urn:
|
|
333
|
-
raise TypeError("Missing required property 'row_access_expression'")
|
|
334
|
-
__props__.__dict__["row_access_expression"] = row_access_expression
|
|
335
350
|
if schema is None and not opts.urn:
|
|
336
351
|
raise TypeError("Missing required property 'schema'")
|
|
337
352
|
__props__.__dict__["schema"] = schema
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
__props__.__dict__["
|
|
353
|
+
__props__.__dict__["describe_outputs"] = None
|
|
354
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
355
|
+
__props__.__dict__["show_outputs"] = None
|
|
341
356
|
super(RowAccessPolicy, __self__).__init__(
|
|
342
357
|
'snowflake:index/rowAccessPolicy:RowAccessPolicy',
|
|
343
358
|
resource_name,
|
|
@@ -348,12 +363,15 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
348
363
|
def get(resource_name: str,
|
|
349
364
|
id: pulumi.Input[str],
|
|
350
365
|
opts: Optional[pulumi.ResourceOptions] = None,
|
|
366
|
+
arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyArgumentArgs', 'RowAccessPolicyArgumentArgsDict']]]]] = None,
|
|
367
|
+
body: Optional[pulumi.Input[str]] = None,
|
|
351
368
|
comment: Optional[pulumi.Input[str]] = None,
|
|
352
369
|
database: Optional[pulumi.Input[str]] = None,
|
|
370
|
+
describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyDescribeOutputArgs', 'RowAccessPolicyDescribeOutputArgsDict']]]]] = None,
|
|
371
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
353
372
|
name: Optional[pulumi.Input[str]] = None,
|
|
354
|
-
row_access_expression: Optional[pulumi.Input[str]] = None,
|
|
355
373
|
schema: Optional[pulumi.Input[str]] = None,
|
|
356
|
-
|
|
374
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyShowOutputArgs', 'RowAccessPolicyShowOutputArgsDict']]]]] = None) -> 'RowAccessPolicy':
|
|
357
375
|
"""
|
|
358
376
|
Get an existing RowAccessPolicy resource's state with the given name, id, and optional extra
|
|
359
377
|
properties used to qualify the lookup.
|
|
@@ -361,25 +379,47 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
361
379
|
:param str resource_name: The unique name of the resulting resource.
|
|
362
380
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
363
381
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
382
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyArgumentArgs', 'RowAccessPolicyArgumentArgsDict']]]] arguments: List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
383
|
+
:param pulumi.Input[str] body: Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
364
384
|
:param pulumi.Input[str] comment: Specifies a comment for the row access policy.
|
|
365
|
-
:param pulumi.Input[str] database: The database in which to create the row access policy.
|
|
366
|
-
:param pulumi.Input[
|
|
367
|
-
:param pulumi.Input[str]
|
|
368
|
-
:param pulumi.Input[str]
|
|
369
|
-
:param pulumi.Input[
|
|
385
|
+
:param pulumi.Input[str] database: The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
386
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyDescribeOutputArgs', 'RowAccessPolicyDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE ROW ACCESS POLICY` for the given row access policy.
|
|
387
|
+
:param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
388
|
+
:param pulumi.Input[str] name: Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
389
|
+
:param pulumi.Input[str] schema: The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
390
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['RowAccessPolicyShowOutputArgs', 'RowAccessPolicyShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW ROW ACCESS POLICY` for the given row access policy.
|
|
370
391
|
"""
|
|
371
392
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
372
393
|
|
|
373
394
|
__props__ = _RowAccessPolicyState.__new__(_RowAccessPolicyState)
|
|
374
395
|
|
|
396
|
+
__props__.__dict__["arguments"] = arguments
|
|
397
|
+
__props__.__dict__["body"] = body
|
|
375
398
|
__props__.__dict__["comment"] = comment
|
|
376
399
|
__props__.__dict__["database"] = database
|
|
400
|
+
__props__.__dict__["describe_outputs"] = describe_outputs
|
|
401
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
377
402
|
__props__.__dict__["name"] = name
|
|
378
|
-
__props__.__dict__["row_access_expression"] = row_access_expression
|
|
379
403
|
__props__.__dict__["schema"] = schema
|
|
380
|
-
__props__.__dict__["
|
|
404
|
+
__props__.__dict__["show_outputs"] = show_outputs
|
|
381
405
|
return RowAccessPolicy(resource_name, opts=opts, __props__=__props__)
|
|
382
406
|
|
|
407
|
+
@property
|
|
408
|
+
@pulumi.getter
|
|
409
|
+
def arguments(self) -> pulumi.Output[Sequence['outputs.RowAccessPolicyArgument']]:
|
|
410
|
+
"""
|
|
411
|
+
List of the arguments for the row access policy. A signature specifies a set of attributes that must be considered to determine whether the row is accessible. The attribute values come from the database object (e.g. table or view) to be protected by the row access policy. If any argument name or type is changed, the resource is recreated.
|
|
412
|
+
"""
|
|
413
|
+
return pulumi.get(self, "arguments")
|
|
414
|
+
|
|
415
|
+
@property
|
|
416
|
+
@pulumi.getter
|
|
417
|
+
def body(self) -> pulumi.Output[str]:
|
|
418
|
+
"""
|
|
419
|
+
Specifies the SQL expression. The expression can be any boolean-valued SQL expression. To mitigate permadiff on this field, the provider replaces blank characters with a space. This can lead to false positives in cases where a change in case or run of whitespace is semantically significant.
|
|
420
|
+
"""
|
|
421
|
+
return pulumi.get(self, "body")
|
|
422
|
+
|
|
383
423
|
@property
|
|
384
424
|
@pulumi.getter
|
|
385
425
|
def comment(self) -> pulumi.Output[Optional[str]]:
|
|
@@ -392,39 +432,47 @@ class RowAccessPolicy(pulumi.CustomResource):
|
|
|
392
432
|
@pulumi.getter
|
|
393
433
|
def database(self) -> pulumi.Output[str]:
|
|
394
434
|
"""
|
|
395
|
-
The database in which to create the row access policy.
|
|
435
|
+
The database in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
396
436
|
"""
|
|
397
437
|
return pulumi.get(self, "database")
|
|
398
438
|
|
|
399
439
|
@property
|
|
400
|
-
@pulumi.getter
|
|
401
|
-
def
|
|
440
|
+
@pulumi.getter(name="describeOutputs")
|
|
441
|
+
def describe_outputs(self) -> pulumi.Output[Sequence['outputs.RowAccessPolicyDescribeOutput']]:
|
|
402
442
|
"""
|
|
403
|
-
|
|
443
|
+
Outputs the result of `DESCRIBE ROW ACCESS POLICY` for the given row access policy.
|
|
404
444
|
"""
|
|
405
|
-
return pulumi.get(self, "
|
|
445
|
+
return pulumi.get(self, "describe_outputs")
|
|
406
446
|
|
|
407
447
|
@property
|
|
408
|
-
@pulumi.getter(name="
|
|
409
|
-
def
|
|
448
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
449
|
+
def fully_qualified_name(self) -> pulumi.Output[str]:
|
|
410
450
|
"""
|
|
411
|
-
|
|
451
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
412
452
|
"""
|
|
413
|
-
return pulumi.get(self, "
|
|
453
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
454
|
+
|
|
455
|
+
@property
|
|
456
|
+
@pulumi.getter
|
|
457
|
+
def name(self) -> pulumi.Output[str]:
|
|
458
|
+
"""
|
|
459
|
+
Specifies the identifier for the row access policy; must be unique for the database and schema in which the row access policy is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
460
|
+
"""
|
|
461
|
+
return pulumi.get(self, "name")
|
|
414
462
|
|
|
415
463
|
@property
|
|
416
464
|
@pulumi.getter
|
|
417
465
|
def schema(self) -> pulumi.Output[str]:
|
|
418
466
|
"""
|
|
419
|
-
The schema in which to create the row access policy.
|
|
467
|
+
The schema in which to create the row access policy. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `(`, `)`, `"`
|
|
420
468
|
"""
|
|
421
469
|
return pulumi.get(self, "schema")
|
|
422
470
|
|
|
423
471
|
@property
|
|
424
|
-
@pulumi.getter
|
|
425
|
-
def
|
|
472
|
+
@pulumi.getter(name="showOutputs")
|
|
473
|
+
def show_outputs(self) -> pulumi.Output[Sequence['outputs.RowAccessPolicyShowOutput']]:
|
|
426
474
|
"""
|
|
427
|
-
|
|
475
|
+
Outputs the result of `SHOW ROW ACCESS POLICY` for the given row access policy.
|
|
428
476
|
"""
|
|
429
|
-
return pulumi.get(self, "
|
|
477
|
+
return pulumi.get(self, "show_outputs")
|
|
430
478
|
|