pulumi-snowflake 0.50.2a1709892015__py3-none-any.whl → 1.2.0a1736835738__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-snowflake might be problematic. Click here for more details.

Files changed (182) hide show
  1. pulumi_snowflake/__init__.py +224 -172
  2. pulumi_snowflake/_inputs.py +52854 -1662
  3. pulumi_snowflake/_utilities.py +41 -5
  4. pulumi_snowflake/account.py +188 -214
  5. pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
  6. pulumi_snowflake/account_parameter.py +21 -44
  7. pulumi_snowflake/account_password_policy_attachment.py +7 -28
  8. pulumi_snowflake/account_role.py +250 -0
  9. pulumi_snowflake/alert.py +38 -43
  10. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
  11. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
  12. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
  13. pulumi_snowflake/api_integration.py +35 -50
  14. pulumi_snowflake/authentication_policy.py +622 -0
  15. pulumi_snowflake/config/__init__.pyi +76 -99
  16. pulumi_snowflake/config/outputs.py +5 -0
  17. pulumi_snowflake/config/vars.py +93 -124
  18. pulumi_snowflake/cortex_search_service.py +596 -0
  19. pulumi_snowflake/database.py +819 -209
  20. pulumi_snowflake/database_role.py +81 -40
  21. pulumi_snowflake/dynamic_table.py +44 -47
  22. pulumi_snowflake/email_notification_integration.py +35 -26
  23. pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -139
  24. pulumi_snowflake/external_function.py +54 -71
  25. pulumi_snowflake/external_oauth_integration.py +593 -538
  26. pulumi_snowflake/external_table.py +67 -86
  27. pulumi_snowflake/external_volume.py +382 -0
  28. pulumi_snowflake/failover_group.py +59 -96
  29. pulumi_snowflake/file_format.py +33 -24
  30. pulumi_snowflake/function_java.py +1211 -0
  31. pulumi_snowflake/function_javascript.py +882 -0
  32. pulumi_snowflake/function_python.py +1212 -0
  33. pulumi_snowflake/function_scala.py +1212 -0
  34. pulumi_snowflake/function_sql.py +835 -0
  35. pulumi_snowflake/get_account_roles.py +129 -0
  36. pulumi_snowflake/get_accounts.py +53 -22
  37. pulumi_snowflake/get_alerts.py +22 -5
  38. pulumi_snowflake/get_connections.py +109 -0
  39. pulumi_snowflake/get_cortex_search_services.py +216 -0
  40. pulumi_snowflake/get_current_account.py +24 -9
  41. pulumi_snowflake/get_current_role.py +14 -7
  42. pulumi_snowflake/get_database.py +25 -5
  43. pulumi_snowflake/get_database_role.py +162 -0
  44. pulumi_snowflake/get_database_roles.py +79 -43
  45. pulumi_snowflake/get_databases.py +91 -69
  46. pulumi_snowflake/get_dynamic_tables.py +36 -19
  47. pulumi_snowflake/get_external_functions.py +28 -5
  48. pulumi_snowflake/get_external_tables.py +28 -5
  49. pulumi_snowflake/get_failover_groups.py +18 -7
  50. pulumi_snowflake/get_file_formats.py +28 -5
  51. pulumi_snowflake/get_functions.py +28 -5
  52. pulumi_snowflake/get_grants.py +207 -80
  53. pulumi_snowflake/get_masking_policies.py +91 -47
  54. pulumi_snowflake/get_materialized_views.py +28 -5
  55. pulumi_snowflake/get_network_policies.py +129 -0
  56. pulumi_snowflake/get_parameters.py +38 -11
  57. pulumi_snowflake/get_pipes.py +28 -5
  58. pulumi_snowflake/get_procedures.py +28 -5
  59. pulumi_snowflake/get_resource_monitors.py +37 -20
  60. pulumi_snowflake/get_row_access_policies.py +91 -47
  61. pulumi_snowflake/get_schemas.py +145 -37
  62. pulumi_snowflake/get_secrets.py +200 -0
  63. pulumi_snowflake/get_security_integrations.py +129 -0
  64. pulumi_snowflake/get_sequences.py +28 -5
  65. pulumi_snowflake/get_shares.py +18 -5
  66. pulumi_snowflake/get_stages.py +28 -5
  67. pulumi_snowflake/get_storage_integrations.py +16 -5
  68. pulumi_snowflake/get_streamlits.py +170 -0
  69. pulumi_snowflake/get_streams.py +114 -50
  70. pulumi_snowflake/get_system_generate_scim_access_token.py +18 -5
  71. pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
  72. pulumi_snowflake/get_system_get_private_link_config.py +121 -6
  73. pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
  74. pulumi_snowflake/get_tables.py +28 -5
  75. pulumi_snowflake/get_tags.py +130 -0
  76. pulumi_snowflake/get_tasks.py +134 -50
  77. pulumi_snowflake/get_users.py +116 -40
  78. pulumi_snowflake/get_views.py +114 -50
  79. pulumi_snowflake/get_warehouses.py +79 -22
  80. pulumi_snowflake/grant_account_role.py +28 -61
  81. pulumi_snowflake/grant_application_role.py +257 -0
  82. pulumi_snowflake/grant_database_role.py +35 -108
  83. pulumi_snowflake/grant_ownership.py +382 -0
  84. pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
  85. pulumi_snowflake/grant_privileges_to_database_role.py +37 -223
  86. pulumi_snowflake/grant_privileges_to_share.py +96 -44
  87. pulumi_snowflake/legacy_service_user.py +3670 -0
  88. pulumi_snowflake/managed_account.py +42 -9
  89. pulumi_snowflake/masking_policy.py +213 -306
  90. pulumi_snowflake/materialized_view.py +62 -67
  91. pulumi_snowflake/network_policy.py +217 -57
  92. pulumi_snowflake/network_policy_attachment.py +7 -32
  93. pulumi_snowflake/network_rule.py +473 -0
  94. pulumi_snowflake/notification_integration.py +51 -82
  95. pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
  96. pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -188
  97. pulumi_snowflake/object_parameter.py +12 -99
  98. pulumi_snowflake/outputs.py +49200 -2928
  99. pulumi_snowflake/password_policy.py +41 -28
  100. pulumi_snowflake/pipe.py +33 -0
  101. pulumi_snowflake/primary_connection.py +330 -0
  102. pulumi_snowflake/procedure_java.py +1273 -0
  103. pulumi_snowflake/procedure_javascript.py +895 -0
  104. pulumi_snowflake/procedure_python.py +1226 -0
  105. pulumi_snowflake/procedure_scala.py +1273 -0
  106. pulumi_snowflake/procedure_sql.py +895 -0
  107. pulumi_snowflake/provider.py +378 -613
  108. pulumi_snowflake/pulumi-plugin.json +2 -1
  109. pulumi_snowflake/resource_monitor.py +118 -323
  110. pulumi_snowflake/row_access_policy.py +200 -145
  111. pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -295
  112. pulumi_snowflake/schema.py +949 -174
  113. pulumi_snowflake/scim_integration.py +286 -105
  114. pulumi_snowflake/secondary_connection.py +339 -0
  115. pulumi_snowflake/secondary_database.py +1080 -0
  116. pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
  117. pulumi_snowflake/secret_with_basic_authentication.py +500 -0
  118. pulumi_snowflake/secret_with_client_credentials.py +511 -0
  119. pulumi_snowflake/secret_with_generic_string.py +452 -0
  120. pulumi_snowflake/sequence.py +9 -30
  121. pulumi_snowflake/service_user.py +3585 -0
  122. pulumi_snowflake/share.py +35 -26
  123. pulumi_snowflake/shared_database.py +939 -0
  124. pulumi_snowflake/stage.py +95 -80
  125. pulumi_snowflake/storage_integration.py +48 -2
  126. pulumi_snowflake/stream_on_directory_table.py +517 -0
  127. pulumi_snowflake/stream_on_external_table.py +632 -0
  128. pulumi_snowflake/stream_on_table.py +666 -0
  129. pulumi_snowflake/stream_on_view.py +666 -0
  130. pulumi_snowflake/streamlit.py +671 -0
  131. pulumi_snowflake/table.py +86 -93
  132. pulumi_snowflake/table_column_masking_policy_application.py +7 -14
  133. pulumi_snowflake/table_constraint.py +29 -168
  134. pulumi_snowflake/tag.py +142 -70
  135. pulumi_snowflake/tag_association.py +40 -211
  136. pulumi_snowflake/task.py +3048 -414
  137. pulumi_snowflake/user.py +3351 -380
  138. pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
  139. pulumi_snowflake/user_password_policy_attachment.py +7 -6
  140. pulumi_snowflake/user_public_keys.py +5 -0
  141. pulumi_snowflake/view.py +466 -211
  142. pulumi_snowflake/warehouse.py +184 -164
  143. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
  144. pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
  145. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
  146. pulumi_snowflake/account_grant.py +0 -339
  147. pulumi_snowflake/database_grant.py +0 -491
  148. pulumi_snowflake/external_table_grant.py +0 -686
  149. pulumi_snowflake/failover_group_grant.py +0 -388
  150. pulumi_snowflake/file_format_grant.py +0 -631
  151. pulumi_snowflake/function.py +0 -868
  152. pulumi_snowflake/function_grant.py +0 -741
  153. pulumi_snowflake/get_role.py +0 -117
  154. pulumi_snowflake/get_roles.py +0 -116
  155. pulumi_snowflake/grant_privileges_to_role.py +0 -667
  156. pulumi_snowflake/integration_grant.py +0 -436
  157. pulumi_snowflake/masking_policy_grant.py +0 -538
  158. pulumi_snowflake/materialized_view_grant.py +0 -685
  159. pulumi_snowflake/pipe_grant.py +0 -583
  160. pulumi_snowflake/procedure.py +0 -883
  161. pulumi_snowflake/procedure_grant.py +0 -741
  162. pulumi_snowflake/resource_monitor_grant.py +0 -383
  163. pulumi_snowflake/role.py +0 -269
  164. pulumi_snowflake/role_grants.py +0 -348
  165. pulumi_snowflake/role_ownership_grant.py +0 -334
  166. pulumi_snowflake/row_access_policy_grant.py +0 -536
  167. pulumi_snowflake/schema_grant.py +0 -643
  168. pulumi_snowflake/sequence_grant.py +0 -631
  169. pulumi_snowflake/session_parameter.py +0 -328
  170. pulumi_snowflake/stage_grant.py +0 -631
  171. pulumi_snowflake/stream.py +0 -610
  172. pulumi_snowflake/stream_grant.py +0 -631
  173. pulumi_snowflake/table_grant.py +0 -673
  174. pulumi_snowflake/tag_grant.py +0 -528
  175. pulumi_snowflake/tag_masking_policy_association.py +0 -210
  176. pulumi_snowflake/task_grant.py +0 -631
  177. pulumi_snowflake/user_grant.py +0 -390
  178. pulumi_snowflake/user_ownership_grant.py +0 -286
  179. pulumi_snowflake/view_grant.py +0 -701
  180. pulumi_snowflake/warehouse_grant.py +0 -436
  181. pulumi_snowflake-0.50.2a1709892015.dist-info/RECORD +0 -136
  182. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,548 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['SecretWithAuthorizationCodeGrantArgs', 'SecretWithAuthorizationCodeGrant']
20
+
21
+ @pulumi.input_type
22
+ class SecretWithAuthorizationCodeGrantArgs:
23
+ def __init__(__self__, *,
24
+ api_authentication: pulumi.Input[str],
25
+ database: pulumi.Input[str],
26
+ oauth_refresh_token: pulumi.Input[str],
27
+ oauth_refresh_token_expiry_time: pulumi.Input[str],
28
+ schema: pulumi.Input[str],
29
+ comment: Optional[pulumi.Input[str]] = None,
30
+ name: Optional[pulumi.Input[str]] = None):
31
+ """
32
+ The set of arguments for constructing a SecretWithAuthorizationCodeGrant resource.
33
+ :param pulumi.Input[str] api_authentication: Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
34
+ :param pulumi.Input[str] database: The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
35
+ :param pulumi.Input[str] oauth_refresh_token_expiry_time: Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
36
+ :param pulumi.Input[str] schema: The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
37
+ :param pulumi.Input[str] comment: Specifies a comment for the secret.
38
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
39
+ """
40
+ pulumi.set(__self__, "api_authentication", api_authentication)
41
+ pulumi.set(__self__, "database", database)
42
+ pulumi.set(__self__, "oauth_refresh_token", oauth_refresh_token)
43
+ pulumi.set(__self__, "oauth_refresh_token_expiry_time", oauth_refresh_token_expiry_time)
44
+ pulumi.set(__self__, "schema", schema)
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
+
50
+ @property
51
+ @pulumi.getter(name="apiAuthentication")
52
+ def api_authentication(self) -> pulumi.Input[str]:
53
+ """
54
+ Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
55
+ """
56
+ return pulumi.get(self, "api_authentication")
57
+
58
+ @api_authentication.setter
59
+ def api_authentication(self, value: pulumi.Input[str]):
60
+ pulumi.set(self, "api_authentication", value)
61
+
62
+ @property
63
+ @pulumi.getter
64
+ def database(self) -> pulumi.Input[str]:
65
+ """
66
+ The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
67
+ """
68
+ return pulumi.get(self, "database")
69
+
70
+ @database.setter
71
+ def database(self, value: pulumi.Input[str]):
72
+ pulumi.set(self, "database", value)
73
+
74
+ @property
75
+ @pulumi.getter(name="oauthRefreshToken")
76
+ def oauth_refresh_token(self) -> pulumi.Input[str]:
77
+ return pulumi.get(self, "oauth_refresh_token")
78
+
79
+ @oauth_refresh_token.setter
80
+ def oauth_refresh_token(self, value: pulumi.Input[str]):
81
+ pulumi.set(self, "oauth_refresh_token", value)
82
+
83
+ @property
84
+ @pulumi.getter(name="oauthRefreshTokenExpiryTime")
85
+ def oauth_refresh_token_expiry_time(self) -> pulumi.Input[str]:
86
+ """
87
+ Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
88
+ """
89
+ return pulumi.get(self, "oauth_refresh_token_expiry_time")
90
+
91
+ @oauth_refresh_token_expiry_time.setter
92
+ def oauth_refresh_token_expiry_time(self, value: pulumi.Input[str]):
93
+ pulumi.set(self, "oauth_refresh_token_expiry_time", value)
94
+
95
+ @property
96
+ @pulumi.getter
97
+ def schema(self) -> pulumi.Input[str]:
98
+ """
99
+ The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
100
+ """
101
+ return pulumi.get(self, "schema")
102
+
103
+ @schema.setter
104
+ def schema(self, value: pulumi.Input[str]):
105
+ pulumi.set(self, "schema", value)
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def comment(self) -> Optional[pulumi.Input[str]]:
110
+ """
111
+ Specifies a comment for the secret.
112
+ """
113
+ return pulumi.get(self, "comment")
114
+
115
+ @comment.setter
116
+ def comment(self, value: Optional[pulumi.Input[str]]):
117
+ pulumi.set(self, "comment", value)
118
+
119
+ @property
120
+ @pulumi.getter
121
+ def name(self) -> Optional[pulumi.Input[str]]:
122
+ """
123
+ String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
124
+ """
125
+ return pulumi.get(self, "name")
126
+
127
+ @name.setter
128
+ def name(self, value: Optional[pulumi.Input[str]]):
129
+ pulumi.set(self, "name", value)
130
+
131
+
132
+ @pulumi.input_type
133
+ class _SecretWithAuthorizationCodeGrantState:
134
+ def __init__(__self__, *,
135
+ api_authentication: Optional[pulumi.Input[str]] = None,
136
+ comment: Optional[pulumi.Input[str]] = None,
137
+ database: Optional[pulumi.Input[str]] = None,
138
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantDescribeOutputArgs']]]] = None,
139
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
140
+ name: Optional[pulumi.Input[str]] = None,
141
+ oauth_refresh_token: Optional[pulumi.Input[str]] = None,
142
+ oauth_refresh_token_expiry_time: Optional[pulumi.Input[str]] = None,
143
+ schema: Optional[pulumi.Input[str]] = None,
144
+ secret_type: Optional[pulumi.Input[str]] = None,
145
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantShowOutputArgs']]]] = None):
146
+ """
147
+ Input properties used for looking up and filtering SecretWithAuthorizationCodeGrant resources.
148
+ :param pulumi.Input[str] api_authentication: Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
149
+ :param pulumi.Input[str] comment: Specifies a comment for the secret.
150
+ :param pulumi.Input[str] database: The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
151
+ :param pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE SECRET` for the given secret.
152
+ :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).
153
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
154
+ :param pulumi.Input[str] oauth_refresh_token_expiry_time: Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
155
+ :param pulumi.Input[str] schema: The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
156
+ :param pulumi.Input[str] secret_type: Specifies a type for the secret. This field is used for checking external changes and recreating the resources if needed.
157
+ :param pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantShowOutputArgs']]] show_outputs: Outputs the result of `SHOW SECRETS` for the given secret.
158
+ """
159
+ if api_authentication is not None:
160
+ pulumi.set(__self__, "api_authentication", api_authentication)
161
+ if comment is not None:
162
+ pulumi.set(__self__, "comment", comment)
163
+ if database is not None:
164
+ pulumi.set(__self__, "database", database)
165
+ if describe_outputs is not None:
166
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
167
+ if fully_qualified_name is not None:
168
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
169
+ if name is not None:
170
+ pulumi.set(__self__, "name", name)
171
+ if oauth_refresh_token is not None:
172
+ pulumi.set(__self__, "oauth_refresh_token", oauth_refresh_token)
173
+ if oauth_refresh_token_expiry_time is not None:
174
+ pulumi.set(__self__, "oauth_refresh_token_expiry_time", oauth_refresh_token_expiry_time)
175
+ if schema is not None:
176
+ pulumi.set(__self__, "schema", schema)
177
+ if secret_type is not None:
178
+ pulumi.set(__self__, "secret_type", secret_type)
179
+ if show_outputs is not None:
180
+ pulumi.set(__self__, "show_outputs", show_outputs)
181
+
182
+ @property
183
+ @pulumi.getter(name="apiAuthentication")
184
+ def api_authentication(self) -> Optional[pulumi.Input[str]]:
185
+ """
186
+ Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
187
+ """
188
+ return pulumi.get(self, "api_authentication")
189
+
190
+ @api_authentication.setter
191
+ def api_authentication(self, value: Optional[pulumi.Input[str]]):
192
+ pulumi.set(self, "api_authentication", value)
193
+
194
+ @property
195
+ @pulumi.getter
196
+ def comment(self) -> Optional[pulumi.Input[str]]:
197
+ """
198
+ Specifies a comment for the secret.
199
+ """
200
+ return pulumi.get(self, "comment")
201
+
202
+ @comment.setter
203
+ def comment(self, value: Optional[pulumi.Input[str]]):
204
+ pulumi.set(self, "comment", value)
205
+
206
+ @property
207
+ @pulumi.getter
208
+ def database(self) -> Optional[pulumi.Input[str]]:
209
+ """
210
+ The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
211
+ """
212
+ return pulumi.get(self, "database")
213
+
214
+ @database.setter
215
+ def database(self, value: Optional[pulumi.Input[str]]):
216
+ pulumi.set(self, "database", value)
217
+
218
+ @property
219
+ @pulumi.getter(name="describeOutputs")
220
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantDescribeOutputArgs']]]]:
221
+ """
222
+ Outputs the result of `DESCRIBE SECRET` for the given secret.
223
+ """
224
+ return pulumi.get(self, "describe_outputs")
225
+
226
+ @describe_outputs.setter
227
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantDescribeOutputArgs']]]]):
228
+ pulumi.set(self, "describe_outputs", value)
229
+
230
+ @property
231
+ @pulumi.getter(name="fullyQualifiedName")
232
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
233
+ """
234
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
235
+ """
236
+ return pulumi.get(self, "fully_qualified_name")
237
+
238
+ @fully_qualified_name.setter
239
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
240
+ pulumi.set(self, "fully_qualified_name", value)
241
+
242
+ @property
243
+ @pulumi.getter
244
+ def name(self) -> Optional[pulumi.Input[str]]:
245
+ """
246
+ String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
247
+ """
248
+ return pulumi.get(self, "name")
249
+
250
+ @name.setter
251
+ def name(self, value: Optional[pulumi.Input[str]]):
252
+ pulumi.set(self, "name", value)
253
+
254
+ @property
255
+ @pulumi.getter(name="oauthRefreshToken")
256
+ def oauth_refresh_token(self) -> Optional[pulumi.Input[str]]:
257
+ return pulumi.get(self, "oauth_refresh_token")
258
+
259
+ @oauth_refresh_token.setter
260
+ def oauth_refresh_token(self, value: Optional[pulumi.Input[str]]):
261
+ pulumi.set(self, "oauth_refresh_token", value)
262
+
263
+ @property
264
+ @pulumi.getter(name="oauthRefreshTokenExpiryTime")
265
+ def oauth_refresh_token_expiry_time(self) -> Optional[pulumi.Input[str]]:
266
+ """
267
+ Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
268
+ """
269
+ return pulumi.get(self, "oauth_refresh_token_expiry_time")
270
+
271
+ @oauth_refresh_token_expiry_time.setter
272
+ def oauth_refresh_token_expiry_time(self, value: Optional[pulumi.Input[str]]):
273
+ pulumi.set(self, "oauth_refresh_token_expiry_time", value)
274
+
275
+ @property
276
+ @pulumi.getter
277
+ def schema(self) -> Optional[pulumi.Input[str]]:
278
+ """
279
+ The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
280
+ """
281
+ return pulumi.get(self, "schema")
282
+
283
+ @schema.setter
284
+ def schema(self, value: Optional[pulumi.Input[str]]):
285
+ pulumi.set(self, "schema", value)
286
+
287
+ @property
288
+ @pulumi.getter(name="secretType")
289
+ def secret_type(self) -> Optional[pulumi.Input[str]]:
290
+ """
291
+ Specifies a type for the secret. This field is used for checking external changes and recreating the resources if needed.
292
+ """
293
+ return pulumi.get(self, "secret_type")
294
+
295
+ @secret_type.setter
296
+ def secret_type(self, value: Optional[pulumi.Input[str]]):
297
+ pulumi.set(self, "secret_type", value)
298
+
299
+ @property
300
+ @pulumi.getter(name="showOutputs")
301
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantShowOutputArgs']]]]:
302
+ """
303
+ Outputs the result of `SHOW SECRETS` for the given secret.
304
+ """
305
+ return pulumi.get(self, "show_outputs")
306
+
307
+ @show_outputs.setter
308
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SecretWithAuthorizationCodeGrantShowOutputArgs']]]]):
309
+ pulumi.set(self, "show_outputs", value)
310
+
311
+
312
+ class SecretWithAuthorizationCodeGrant(pulumi.CustomResource):
313
+ @overload
314
+ def __init__(__self__,
315
+ resource_name: str,
316
+ opts: Optional[pulumi.ResourceOptions] = None,
317
+ api_authentication: Optional[pulumi.Input[str]] = None,
318
+ comment: Optional[pulumi.Input[str]] = None,
319
+ database: Optional[pulumi.Input[str]] = None,
320
+ name: Optional[pulumi.Input[str]] = None,
321
+ oauth_refresh_token: Optional[pulumi.Input[str]] = None,
322
+ oauth_refresh_token_expiry_time: Optional[pulumi.Input[str]] = None,
323
+ schema: Optional[pulumi.Input[str]] = None,
324
+ __props__=None):
325
+ """
326
+ ## Import
327
+
328
+ ```sh
329
+ $ pulumi import snowflake:index/secretWithAuthorizationCodeGrant:SecretWithAuthorizationCodeGrant example '"<database_name>"."<schema_name>"."<secret_name>"'
330
+ ```
331
+
332
+ :param str resource_name: The name of the resource.
333
+ :param pulumi.ResourceOptions opts: Options for the resource.
334
+ :param pulumi.Input[str] api_authentication: Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
335
+ :param pulumi.Input[str] comment: Specifies a comment for the secret.
336
+ :param pulumi.Input[str] database: The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
337
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
338
+ :param pulumi.Input[str] oauth_refresh_token_expiry_time: Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
339
+ :param pulumi.Input[str] schema: The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
340
+ """
341
+ ...
342
+ @overload
343
+ def __init__(__self__,
344
+ resource_name: str,
345
+ args: SecretWithAuthorizationCodeGrantArgs,
346
+ opts: Optional[pulumi.ResourceOptions] = None):
347
+ """
348
+ ## Import
349
+
350
+ ```sh
351
+ $ pulumi import snowflake:index/secretWithAuthorizationCodeGrant:SecretWithAuthorizationCodeGrant example '"<database_name>"."<schema_name>"."<secret_name>"'
352
+ ```
353
+
354
+ :param str resource_name: The name of the resource.
355
+ :param SecretWithAuthorizationCodeGrantArgs args: The arguments to use to populate this resource's properties.
356
+ :param pulumi.ResourceOptions opts: Options for the resource.
357
+ """
358
+ ...
359
+ def __init__(__self__, resource_name: str, *args, **kwargs):
360
+ resource_args, opts = _utilities.get_resource_args_opts(SecretWithAuthorizationCodeGrantArgs, pulumi.ResourceOptions, *args, **kwargs)
361
+ if resource_args is not None:
362
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
363
+ else:
364
+ __self__._internal_init(resource_name, *args, **kwargs)
365
+
366
+ def _internal_init(__self__,
367
+ resource_name: str,
368
+ opts: Optional[pulumi.ResourceOptions] = None,
369
+ api_authentication: Optional[pulumi.Input[str]] = None,
370
+ comment: Optional[pulumi.Input[str]] = None,
371
+ database: Optional[pulumi.Input[str]] = None,
372
+ name: Optional[pulumi.Input[str]] = None,
373
+ oauth_refresh_token: Optional[pulumi.Input[str]] = None,
374
+ oauth_refresh_token_expiry_time: Optional[pulumi.Input[str]] = None,
375
+ schema: Optional[pulumi.Input[str]] = None,
376
+ __props__=None):
377
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
378
+ if not isinstance(opts, pulumi.ResourceOptions):
379
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
380
+ if opts.id is None:
381
+ if __props__ is not None:
382
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
383
+ __props__ = SecretWithAuthorizationCodeGrantArgs.__new__(SecretWithAuthorizationCodeGrantArgs)
384
+
385
+ if api_authentication is None and not opts.urn:
386
+ raise TypeError("Missing required property 'api_authentication'")
387
+ __props__.__dict__["api_authentication"] = api_authentication
388
+ __props__.__dict__["comment"] = comment
389
+ if database is None and not opts.urn:
390
+ raise TypeError("Missing required property 'database'")
391
+ __props__.__dict__["database"] = database
392
+ __props__.__dict__["name"] = name
393
+ if oauth_refresh_token is None and not opts.urn:
394
+ raise TypeError("Missing required property 'oauth_refresh_token'")
395
+ __props__.__dict__["oauth_refresh_token"] = None if oauth_refresh_token is None else pulumi.Output.secret(oauth_refresh_token)
396
+ if oauth_refresh_token_expiry_time is None and not opts.urn:
397
+ raise TypeError("Missing required property 'oauth_refresh_token_expiry_time'")
398
+ __props__.__dict__["oauth_refresh_token_expiry_time"] = oauth_refresh_token_expiry_time
399
+ if schema is None and not opts.urn:
400
+ raise TypeError("Missing required property 'schema'")
401
+ __props__.__dict__["schema"] = schema
402
+ __props__.__dict__["describe_outputs"] = None
403
+ __props__.__dict__["fully_qualified_name"] = None
404
+ __props__.__dict__["secret_type"] = None
405
+ __props__.__dict__["show_outputs"] = None
406
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["oauthRefreshToken"])
407
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
408
+ super(SecretWithAuthorizationCodeGrant, __self__).__init__(
409
+ 'snowflake:index/secretWithAuthorizationCodeGrant:SecretWithAuthorizationCodeGrant',
410
+ resource_name,
411
+ __props__,
412
+ opts)
413
+
414
+ @staticmethod
415
+ def get(resource_name: str,
416
+ id: pulumi.Input[str],
417
+ opts: Optional[pulumi.ResourceOptions] = None,
418
+ api_authentication: Optional[pulumi.Input[str]] = None,
419
+ comment: Optional[pulumi.Input[str]] = None,
420
+ database: Optional[pulumi.Input[str]] = None,
421
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretWithAuthorizationCodeGrantDescribeOutputArgs', 'SecretWithAuthorizationCodeGrantDescribeOutputArgsDict']]]]] = None,
422
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
423
+ name: Optional[pulumi.Input[str]] = None,
424
+ oauth_refresh_token: Optional[pulumi.Input[str]] = None,
425
+ oauth_refresh_token_expiry_time: Optional[pulumi.Input[str]] = None,
426
+ schema: Optional[pulumi.Input[str]] = None,
427
+ secret_type: Optional[pulumi.Input[str]] = None,
428
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['SecretWithAuthorizationCodeGrantShowOutputArgs', 'SecretWithAuthorizationCodeGrantShowOutputArgsDict']]]]] = None) -> 'SecretWithAuthorizationCodeGrant':
429
+ """
430
+ Get an existing SecretWithAuthorizationCodeGrant resource's state with the given name, id, and optional extra
431
+ properties used to qualify the lookup.
432
+
433
+ :param str resource_name: The unique name of the resulting resource.
434
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
435
+ :param pulumi.ResourceOptions opts: Options for the resource.
436
+ :param pulumi.Input[str] api_authentication: Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
437
+ :param pulumi.Input[str] comment: Specifies a comment for the secret.
438
+ :param pulumi.Input[str] database: The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
439
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretWithAuthorizationCodeGrantDescribeOutputArgs', 'SecretWithAuthorizationCodeGrantDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE SECRET` for the given secret.
440
+ :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).
441
+ :param pulumi.Input[str] name: String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
442
+ :param pulumi.Input[str] oauth_refresh_token_expiry_time: Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
443
+ :param pulumi.Input[str] schema: The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
444
+ :param pulumi.Input[str] secret_type: Specifies a type for the secret. This field is used for checking external changes and recreating the resources if needed.
445
+ :param pulumi.Input[Sequence[pulumi.Input[Union['SecretWithAuthorizationCodeGrantShowOutputArgs', 'SecretWithAuthorizationCodeGrantShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW SECRETS` for the given secret.
446
+ """
447
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
448
+
449
+ __props__ = _SecretWithAuthorizationCodeGrantState.__new__(_SecretWithAuthorizationCodeGrantState)
450
+
451
+ __props__.__dict__["api_authentication"] = api_authentication
452
+ __props__.__dict__["comment"] = comment
453
+ __props__.__dict__["database"] = database
454
+ __props__.__dict__["describe_outputs"] = describe_outputs
455
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
456
+ __props__.__dict__["name"] = name
457
+ __props__.__dict__["oauth_refresh_token"] = oauth_refresh_token
458
+ __props__.__dict__["oauth_refresh_token_expiry_time"] = oauth_refresh_token_expiry_time
459
+ __props__.__dict__["schema"] = schema
460
+ __props__.__dict__["secret_type"] = secret_type
461
+ __props__.__dict__["show_outputs"] = show_outputs
462
+ return SecretWithAuthorizationCodeGrant(resource_name, opts=opts, __props__=__props__)
463
+
464
+ @property
465
+ @pulumi.getter(name="apiAuthentication")
466
+ def api_authentication(self) -> pulumi.Output[str]:
467
+ """
468
+ Specifies the name value of the Snowflake security integration that connects Snowflake to an external service. For more information about this resource, see docs.
469
+ """
470
+ return pulumi.get(self, "api_authentication")
471
+
472
+ @property
473
+ @pulumi.getter
474
+ def comment(self) -> pulumi.Output[Optional[str]]:
475
+ """
476
+ Specifies a comment for the secret.
477
+ """
478
+ return pulumi.get(self, "comment")
479
+
480
+ @property
481
+ @pulumi.getter
482
+ def database(self) -> pulumi.Output[str]:
483
+ """
484
+ The database in which to create the secret Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
485
+ """
486
+ return pulumi.get(self, "database")
487
+
488
+ @property
489
+ @pulumi.getter(name="describeOutputs")
490
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.SecretWithAuthorizationCodeGrantDescribeOutput']]:
491
+ """
492
+ Outputs the result of `DESCRIBE SECRET` for the given secret.
493
+ """
494
+ return pulumi.get(self, "describe_outputs")
495
+
496
+ @property
497
+ @pulumi.getter(name="fullyQualifiedName")
498
+ def fully_qualified_name(self) -> pulumi.Output[str]:
499
+ """
500
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
501
+ """
502
+ return pulumi.get(self, "fully_qualified_name")
503
+
504
+ @property
505
+ @pulumi.getter
506
+ def name(self) -> pulumi.Output[str]:
507
+ """
508
+ String that specifies the identifier (i.e. name) for the secret, must be unique in your schema. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
509
+ """
510
+ return pulumi.get(self, "name")
511
+
512
+ @property
513
+ @pulumi.getter(name="oauthRefreshToken")
514
+ def oauth_refresh_token(self) -> pulumi.Output[str]:
515
+ return pulumi.get(self, "oauth_refresh_token")
516
+
517
+ @property
518
+ @pulumi.getter(name="oauthRefreshTokenExpiryTime")
519
+ def oauth_refresh_token_expiry_time(self) -> pulumi.Output[str]:
520
+ """
521
+ Specifies the timestamp as a string when the OAuth refresh token expires. Accepted string formats: YYYY-MM-DD, YYYY-MM-DD HH:MI, YYYY-MM-DD HH:MI:SS, YYYY-MM-DD HH:MI \\n\\n
522
+ """
523
+ return pulumi.get(self, "oauth_refresh_token_expiry_time")
524
+
525
+ @property
526
+ @pulumi.getter
527
+ def schema(self) -> pulumi.Output[str]:
528
+ """
529
+ The schema in which to create the secret. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
530
+ """
531
+ return pulumi.get(self, "schema")
532
+
533
+ @property
534
+ @pulumi.getter(name="secretType")
535
+ def secret_type(self) -> pulumi.Output[str]:
536
+ """
537
+ Specifies a type for the secret. This field is used for checking external changes and recreating the resources if needed.
538
+ """
539
+ return pulumi.get(self, "secret_type")
540
+
541
+ @property
542
+ @pulumi.getter(name="showOutputs")
543
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.SecretWithAuthorizationCodeGrantShowOutput']]:
544
+ """
545
+ Outputs the result of `SHOW SECRETS` for the given secret.
546
+ """
547
+ return pulumi.get(self, "show_outputs")
548
+