pulumi-snowflake 2.3.0a1753398370__py3-none-any.whl → 2.4.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.
Potentially problematic release.
This version of pulumi-snowflake might be problematic. Click here for more details.
- pulumi_snowflake/__init__.py +28 -0
- pulumi_snowflake/_inputs.py +2164 -214
- pulumi_snowflake/config/__init__.pyi +3 -2
- pulumi_snowflake/config/vars.py +3 -2
- pulumi_snowflake/current_account.py +16 -16
- pulumi_snowflake/current_organization_account.py +5863 -0
- pulumi_snowflake/get_user_programmatic_access_tokens.py +113 -0
- pulumi_snowflake/listing.py +440 -0
- pulumi_snowflake/outputs.py +1476 -0
- pulumi_snowflake/provider.py +12 -8
- pulumi_snowflake/pulumi-plugin.json +1 -1
- pulumi_snowflake/storage_integration.py +51 -2
- pulumi_snowflake/user_programmatic_access_token.py +598 -0
- {pulumi_snowflake-2.3.0a1753398370.dist-info → pulumi_snowflake-2.4.0.dist-info}/METADATA +1 -1
- {pulumi_snowflake-2.3.0a1753398370.dist-info → pulumi_snowflake-2.4.0.dist-info}/RECORD +17 -13
- {pulumi_snowflake-2.3.0a1753398370.dist-info → pulumi_snowflake-2.4.0.dist-info}/WHEEL +0 -0
- {pulumi_snowflake-2.3.0a1753398370.dist-info → pulumi_snowflake-2.4.0.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,598 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
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__ = ['UserProgrammaticAccessTokenArgs', 'UserProgrammaticAccessToken']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class UserProgrammaticAccessTokenArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
user: pulumi.Input[_builtins.str],
|
|
25
|
+
comment: Optional[pulumi.Input[_builtins.str]] = None,
|
|
26
|
+
days_to_expiry: Optional[pulumi.Input[_builtins.int]] = None,
|
|
27
|
+
disabled: Optional[pulumi.Input[_builtins.str]] = None,
|
|
28
|
+
expire_rotated_token_after_hours: Optional[pulumi.Input[_builtins.int]] = None,
|
|
29
|
+
keeper: Optional[pulumi.Input[_builtins.str]] = None,
|
|
30
|
+
mins_to_bypass_network_policy_requirement: Optional[pulumi.Input[_builtins.int]] = None,
|
|
31
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
32
|
+
role_restriction: Optional[pulumi.Input[_builtins.str]] = None):
|
|
33
|
+
"""
|
|
34
|
+
The set of arguments for constructing a UserProgrammaticAccessToken resource.
|
|
35
|
+
:param pulumi.Input[_builtins.str] user: The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
36
|
+
:param pulumi.Input[_builtins.str] comment: Descriptive comment about the programmatic access token.
|
|
37
|
+
:param pulumi.Input[_builtins.str] disabled: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
38
|
+
:param pulumi.Input[_builtins.int] expire_rotated_token_after_hours: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
39
|
+
:param pulumi.Input[_builtins.str] keeper: Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
40
|
+
:param pulumi.Input[_builtins.str] name: Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
41
|
+
:param pulumi.Input[_builtins.str] role_restriction: The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
42
|
+
"""
|
|
43
|
+
pulumi.set(__self__, "user", user)
|
|
44
|
+
if comment is not None:
|
|
45
|
+
pulumi.set(__self__, "comment", comment)
|
|
46
|
+
if days_to_expiry is not None:
|
|
47
|
+
pulumi.set(__self__, "days_to_expiry", days_to_expiry)
|
|
48
|
+
if disabled is not None:
|
|
49
|
+
pulumi.set(__self__, "disabled", disabled)
|
|
50
|
+
if expire_rotated_token_after_hours is not None:
|
|
51
|
+
pulumi.set(__self__, "expire_rotated_token_after_hours", expire_rotated_token_after_hours)
|
|
52
|
+
if keeper is not None:
|
|
53
|
+
pulumi.set(__self__, "keeper", keeper)
|
|
54
|
+
if mins_to_bypass_network_policy_requirement is not None:
|
|
55
|
+
pulumi.set(__self__, "mins_to_bypass_network_policy_requirement", mins_to_bypass_network_policy_requirement)
|
|
56
|
+
if name is not None:
|
|
57
|
+
pulumi.set(__self__, "name", name)
|
|
58
|
+
if role_restriction is not None:
|
|
59
|
+
pulumi.set(__self__, "role_restriction", role_restriction)
|
|
60
|
+
|
|
61
|
+
@_builtins.property
|
|
62
|
+
@pulumi.getter
|
|
63
|
+
def user(self) -> pulumi.Input[_builtins.str]:
|
|
64
|
+
"""
|
|
65
|
+
The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
66
|
+
"""
|
|
67
|
+
return pulumi.get(self, "user")
|
|
68
|
+
|
|
69
|
+
@user.setter
|
|
70
|
+
def user(self, value: pulumi.Input[_builtins.str]):
|
|
71
|
+
pulumi.set(self, "user", value)
|
|
72
|
+
|
|
73
|
+
@_builtins.property
|
|
74
|
+
@pulumi.getter
|
|
75
|
+
def comment(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
76
|
+
"""
|
|
77
|
+
Descriptive comment about the programmatic access token.
|
|
78
|
+
"""
|
|
79
|
+
return pulumi.get(self, "comment")
|
|
80
|
+
|
|
81
|
+
@comment.setter
|
|
82
|
+
def comment(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
83
|
+
pulumi.set(self, "comment", value)
|
|
84
|
+
|
|
85
|
+
@_builtins.property
|
|
86
|
+
@pulumi.getter(name="daysToExpiry")
|
|
87
|
+
def days_to_expiry(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
88
|
+
return pulumi.get(self, "days_to_expiry")
|
|
89
|
+
|
|
90
|
+
@days_to_expiry.setter
|
|
91
|
+
def days_to_expiry(self, value: Optional[pulumi.Input[_builtins.int]]):
|
|
92
|
+
pulumi.set(self, "days_to_expiry", value)
|
|
93
|
+
|
|
94
|
+
@_builtins.property
|
|
95
|
+
@pulumi.getter
|
|
96
|
+
def disabled(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
97
|
+
"""
|
|
98
|
+
(Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
99
|
+
"""
|
|
100
|
+
return pulumi.get(self, "disabled")
|
|
101
|
+
|
|
102
|
+
@disabled.setter
|
|
103
|
+
def disabled(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
104
|
+
pulumi.set(self, "disabled", value)
|
|
105
|
+
|
|
106
|
+
@_builtins.property
|
|
107
|
+
@pulumi.getter(name="expireRotatedTokenAfterHours")
|
|
108
|
+
def expire_rotated_token_after_hours(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
109
|
+
"""
|
|
110
|
+
(Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
111
|
+
"""
|
|
112
|
+
return pulumi.get(self, "expire_rotated_token_after_hours")
|
|
113
|
+
|
|
114
|
+
@expire_rotated_token_after_hours.setter
|
|
115
|
+
def expire_rotated_token_after_hours(self, value: Optional[pulumi.Input[_builtins.int]]):
|
|
116
|
+
pulumi.set(self, "expire_rotated_token_after_hours", value)
|
|
117
|
+
|
|
118
|
+
@_builtins.property
|
|
119
|
+
@pulumi.getter
|
|
120
|
+
def keeper(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
121
|
+
"""
|
|
122
|
+
Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
123
|
+
"""
|
|
124
|
+
return pulumi.get(self, "keeper")
|
|
125
|
+
|
|
126
|
+
@keeper.setter
|
|
127
|
+
def keeper(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
128
|
+
pulumi.set(self, "keeper", value)
|
|
129
|
+
|
|
130
|
+
@_builtins.property
|
|
131
|
+
@pulumi.getter(name="minsToBypassNetworkPolicyRequirement")
|
|
132
|
+
def mins_to_bypass_network_policy_requirement(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
133
|
+
return pulumi.get(self, "mins_to_bypass_network_policy_requirement")
|
|
134
|
+
|
|
135
|
+
@mins_to_bypass_network_policy_requirement.setter
|
|
136
|
+
def mins_to_bypass_network_policy_requirement(self, value: Optional[pulumi.Input[_builtins.int]]):
|
|
137
|
+
pulumi.set(self, "mins_to_bypass_network_policy_requirement", value)
|
|
138
|
+
|
|
139
|
+
@_builtins.property
|
|
140
|
+
@pulumi.getter
|
|
141
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
142
|
+
"""
|
|
143
|
+
Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
144
|
+
"""
|
|
145
|
+
return pulumi.get(self, "name")
|
|
146
|
+
|
|
147
|
+
@name.setter
|
|
148
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
149
|
+
pulumi.set(self, "name", value)
|
|
150
|
+
|
|
151
|
+
@_builtins.property
|
|
152
|
+
@pulumi.getter(name="roleRestriction")
|
|
153
|
+
def role_restriction(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
154
|
+
"""
|
|
155
|
+
The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
156
|
+
"""
|
|
157
|
+
return pulumi.get(self, "role_restriction")
|
|
158
|
+
|
|
159
|
+
@role_restriction.setter
|
|
160
|
+
def role_restriction(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
161
|
+
pulumi.set(self, "role_restriction", value)
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
@pulumi.input_type
|
|
165
|
+
class _UserProgrammaticAccessTokenState:
|
|
166
|
+
def __init__(__self__, *,
|
|
167
|
+
comment: Optional[pulumi.Input[_builtins.str]] = None,
|
|
168
|
+
days_to_expiry: Optional[pulumi.Input[_builtins.int]] = None,
|
|
169
|
+
disabled: Optional[pulumi.Input[_builtins.str]] = None,
|
|
170
|
+
expire_rotated_token_after_hours: Optional[pulumi.Input[_builtins.int]] = None,
|
|
171
|
+
keeper: Optional[pulumi.Input[_builtins.str]] = None,
|
|
172
|
+
mins_to_bypass_network_policy_requirement: Optional[pulumi.Input[_builtins.int]] = None,
|
|
173
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
174
|
+
role_restriction: Optional[pulumi.Input[_builtins.str]] = None,
|
|
175
|
+
rotated_token_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
176
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['UserProgrammaticAccessTokenShowOutputArgs']]]] = None,
|
|
177
|
+
token: Optional[pulumi.Input[_builtins.str]] = None,
|
|
178
|
+
user: Optional[pulumi.Input[_builtins.str]] = None):
|
|
179
|
+
"""
|
|
180
|
+
Input properties used for looking up and filtering UserProgrammaticAccessToken resources.
|
|
181
|
+
:param pulumi.Input[_builtins.str] comment: Descriptive comment about the programmatic access token.
|
|
182
|
+
:param pulumi.Input[_builtins.str] disabled: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
183
|
+
:param pulumi.Input[_builtins.int] expire_rotated_token_after_hours: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
184
|
+
:param pulumi.Input[_builtins.str] keeper: Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
185
|
+
:param pulumi.Input[_builtins.str] name: Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
186
|
+
:param pulumi.Input[_builtins.str] role_restriction: The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
187
|
+
:param pulumi.Input[_builtins.str] rotated_token_name: Name of the token that represents the prior secret. This field is updated only when the token is rotated. In this case, the field is marked as computed.
|
|
188
|
+
:param pulumi.Input[Sequence[pulumi.Input['UserProgrammaticAccessTokenShowOutputArgs']]] show_outputs: Outputs the result of `SHOW USER PROGRAMMATIC ACCESS TOKENS` for the given user programmatic access token.
|
|
189
|
+
:param pulumi.Input[_builtins.str] token: The token itself. Use this to authenticate to an endpoint. The data in this field is updated only when the token is created or rotated. In this case, the field is marked as computed.
|
|
190
|
+
:param pulumi.Input[_builtins.str] user: The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
191
|
+
"""
|
|
192
|
+
if comment is not None:
|
|
193
|
+
pulumi.set(__self__, "comment", comment)
|
|
194
|
+
if days_to_expiry is not None:
|
|
195
|
+
pulumi.set(__self__, "days_to_expiry", days_to_expiry)
|
|
196
|
+
if disabled is not None:
|
|
197
|
+
pulumi.set(__self__, "disabled", disabled)
|
|
198
|
+
if expire_rotated_token_after_hours is not None:
|
|
199
|
+
pulumi.set(__self__, "expire_rotated_token_after_hours", expire_rotated_token_after_hours)
|
|
200
|
+
if keeper is not None:
|
|
201
|
+
pulumi.set(__self__, "keeper", keeper)
|
|
202
|
+
if mins_to_bypass_network_policy_requirement is not None:
|
|
203
|
+
pulumi.set(__self__, "mins_to_bypass_network_policy_requirement", mins_to_bypass_network_policy_requirement)
|
|
204
|
+
if name is not None:
|
|
205
|
+
pulumi.set(__self__, "name", name)
|
|
206
|
+
if role_restriction is not None:
|
|
207
|
+
pulumi.set(__self__, "role_restriction", role_restriction)
|
|
208
|
+
if rotated_token_name is not None:
|
|
209
|
+
pulumi.set(__self__, "rotated_token_name", rotated_token_name)
|
|
210
|
+
if show_outputs is not None:
|
|
211
|
+
pulumi.set(__self__, "show_outputs", show_outputs)
|
|
212
|
+
if token is not None:
|
|
213
|
+
pulumi.set(__self__, "token", token)
|
|
214
|
+
if user is not None:
|
|
215
|
+
pulumi.set(__self__, "user", user)
|
|
216
|
+
|
|
217
|
+
@_builtins.property
|
|
218
|
+
@pulumi.getter
|
|
219
|
+
def comment(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
220
|
+
"""
|
|
221
|
+
Descriptive comment about the programmatic access token.
|
|
222
|
+
"""
|
|
223
|
+
return pulumi.get(self, "comment")
|
|
224
|
+
|
|
225
|
+
@comment.setter
|
|
226
|
+
def comment(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
227
|
+
pulumi.set(self, "comment", value)
|
|
228
|
+
|
|
229
|
+
@_builtins.property
|
|
230
|
+
@pulumi.getter(name="daysToExpiry")
|
|
231
|
+
def days_to_expiry(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
232
|
+
return pulumi.get(self, "days_to_expiry")
|
|
233
|
+
|
|
234
|
+
@days_to_expiry.setter
|
|
235
|
+
def days_to_expiry(self, value: Optional[pulumi.Input[_builtins.int]]):
|
|
236
|
+
pulumi.set(self, "days_to_expiry", value)
|
|
237
|
+
|
|
238
|
+
@_builtins.property
|
|
239
|
+
@pulumi.getter
|
|
240
|
+
def disabled(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
241
|
+
"""
|
|
242
|
+
(Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
243
|
+
"""
|
|
244
|
+
return pulumi.get(self, "disabled")
|
|
245
|
+
|
|
246
|
+
@disabled.setter
|
|
247
|
+
def disabled(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
248
|
+
pulumi.set(self, "disabled", value)
|
|
249
|
+
|
|
250
|
+
@_builtins.property
|
|
251
|
+
@pulumi.getter(name="expireRotatedTokenAfterHours")
|
|
252
|
+
def expire_rotated_token_after_hours(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
253
|
+
"""
|
|
254
|
+
(Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
255
|
+
"""
|
|
256
|
+
return pulumi.get(self, "expire_rotated_token_after_hours")
|
|
257
|
+
|
|
258
|
+
@expire_rotated_token_after_hours.setter
|
|
259
|
+
def expire_rotated_token_after_hours(self, value: Optional[pulumi.Input[_builtins.int]]):
|
|
260
|
+
pulumi.set(self, "expire_rotated_token_after_hours", value)
|
|
261
|
+
|
|
262
|
+
@_builtins.property
|
|
263
|
+
@pulumi.getter
|
|
264
|
+
def keeper(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
265
|
+
"""
|
|
266
|
+
Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
267
|
+
"""
|
|
268
|
+
return pulumi.get(self, "keeper")
|
|
269
|
+
|
|
270
|
+
@keeper.setter
|
|
271
|
+
def keeper(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
272
|
+
pulumi.set(self, "keeper", value)
|
|
273
|
+
|
|
274
|
+
@_builtins.property
|
|
275
|
+
@pulumi.getter(name="minsToBypassNetworkPolicyRequirement")
|
|
276
|
+
def mins_to_bypass_network_policy_requirement(self) -> Optional[pulumi.Input[_builtins.int]]:
|
|
277
|
+
return pulumi.get(self, "mins_to_bypass_network_policy_requirement")
|
|
278
|
+
|
|
279
|
+
@mins_to_bypass_network_policy_requirement.setter
|
|
280
|
+
def mins_to_bypass_network_policy_requirement(self, value: Optional[pulumi.Input[_builtins.int]]):
|
|
281
|
+
pulumi.set(self, "mins_to_bypass_network_policy_requirement", value)
|
|
282
|
+
|
|
283
|
+
@_builtins.property
|
|
284
|
+
@pulumi.getter
|
|
285
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
286
|
+
"""
|
|
287
|
+
Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
288
|
+
"""
|
|
289
|
+
return pulumi.get(self, "name")
|
|
290
|
+
|
|
291
|
+
@name.setter
|
|
292
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
293
|
+
pulumi.set(self, "name", value)
|
|
294
|
+
|
|
295
|
+
@_builtins.property
|
|
296
|
+
@pulumi.getter(name="roleRestriction")
|
|
297
|
+
def role_restriction(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
298
|
+
"""
|
|
299
|
+
The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
300
|
+
"""
|
|
301
|
+
return pulumi.get(self, "role_restriction")
|
|
302
|
+
|
|
303
|
+
@role_restriction.setter
|
|
304
|
+
def role_restriction(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
305
|
+
pulumi.set(self, "role_restriction", value)
|
|
306
|
+
|
|
307
|
+
@_builtins.property
|
|
308
|
+
@pulumi.getter(name="rotatedTokenName")
|
|
309
|
+
def rotated_token_name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
310
|
+
"""
|
|
311
|
+
Name of the token that represents the prior secret. This field is updated only when the token is rotated. In this case, the field is marked as computed.
|
|
312
|
+
"""
|
|
313
|
+
return pulumi.get(self, "rotated_token_name")
|
|
314
|
+
|
|
315
|
+
@rotated_token_name.setter
|
|
316
|
+
def rotated_token_name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
317
|
+
pulumi.set(self, "rotated_token_name", value)
|
|
318
|
+
|
|
319
|
+
@_builtins.property
|
|
320
|
+
@pulumi.getter(name="showOutputs")
|
|
321
|
+
def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserProgrammaticAccessTokenShowOutputArgs']]]]:
|
|
322
|
+
"""
|
|
323
|
+
Outputs the result of `SHOW USER PROGRAMMATIC ACCESS TOKENS` for the given user programmatic access token.
|
|
324
|
+
"""
|
|
325
|
+
return pulumi.get(self, "show_outputs")
|
|
326
|
+
|
|
327
|
+
@show_outputs.setter
|
|
328
|
+
def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserProgrammaticAccessTokenShowOutputArgs']]]]):
|
|
329
|
+
pulumi.set(self, "show_outputs", value)
|
|
330
|
+
|
|
331
|
+
@_builtins.property
|
|
332
|
+
@pulumi.getter
|
|
333
|
+
def token(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
334
|
+
"""
|
|
335
|
+
The token itself. Use this to authenticate to an endpoint. The data in this field is updated only when the token is created or rotated. In this case, the field is marked as computed.
|
|
336
|
+
"""
|
|
337
|
+
return pulumi.get(self, "token")
|
|
338
|
+
|
|
339
|
+
@token.setter
|
|
340
|
+
def token(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
341
|
+
pulumi.set(self, "token", value)
|
|
342
|
+
|
|
343
|
+
@_builtins.property
|
|
344
|
+
@pulumi.getter
|
|
345
|
+
def user(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
346
|
+
"""
|
|
347
|
+
The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
348
|
+
"""
|
|
349
|
+
return pulumi.get(self, "user")
|
|
350
|
+
|
|
351
|
+
@user.setter
|
|
352
|
+
def user(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
353
|
+
pulumi.set(self, "user", value)
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
@pulumi.type_token("snowflake:index/userProgrammaticAccessToken:UserProgrammaticAccessToken")
|
|
357
|
+
class UserProgrammaticAccessToken(pulumi.CustomResource):
|
|
358
|
+
@overload
|
|
359
|
+
def __init__(__self__,
|
|
360
|
+
resource_name: str,
|
|
361
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
362
|
+
comment: Optional[pulumi.Input[_builtins.str]] = None,
|
|
363
|
+
days_to_expiry: Optional[pulumi.Input[_builtins.int]] = None,
|
|
364
|
+
disabled: Optional[pulumi.Input[_builtins.str]] = None,
|
|
365
|
+
expire_rotated_token_after_hours: Optional[pulumi.Input[_builtins.int]] = None,
|
|
366
|
+
keeper: Optional[pulumi.Input[_builtins.str]] = None,
|
|
367
|
+
mins_to_bypass_network_policy_requirement: Optional[pulumi.Input[_builtins.int]] = None,
|
|
368
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
369
|
+
role_restriction: Optional[pulumi.Input[_builtins.str]] = None,
|
|
370
|
+
user: Optional[pulumi.Input[_builtins.str]] = None,
|
|
371
|
+
__props__=None):
|
|
372
|
+
"""
|
|
373
|
+
## Import
|
|
374
|
+
|
|
375
|
+
```sh
|
|
376
|
+
$ pulumi import snowflake:index/userProgrammaticAccessToken:UserProgrammaticAccessToken example '"<user_name>"|"<token_name>"'
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
:param str resource_name: The name of the resource.
|
|
380
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
381
|
+
:param pulumi.Input[_builtins.str] comment: Descriptive comment about the programmatic access token.
|
|
382
|
+
:param pulumi.Input[_builtins.str] disabled: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
383
|
+
:param pulumi.Input[_builtins.int] expire_rotated_token_after_hours: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
384
|
+
:param pulumi.Input[_builtins.str] keeper: Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
385
|
+
:param pulumi.Input[_builtins.str] name: Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
386
|
+
:param pulumi.Input[_builtins.str] role_restriction: The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
387
|
+
:param pulumi.Input[_builtins.str] user: The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
388
|
+
"""
|
|
389
|
+
...
|
|
390
|
+
@overload
|
|
391
|
+
def __init__(__self__,
|
|
392
|
+
resource_name: str,
|
|
393
|
+
args: UserProgrammaticAccessTokenArgs,
|
|
394
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
395
|
+
"""
|
|
396
|
+
## Import
|
|
397
|
+
|
|
398
|
+
```sh
|
|
399
|
+
$ pulumi import snowflake:index/userProgrammaticAccessToken:UserProgrammaticAccessToken example '"<user_name>"|"<token_name>"'
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
:param str resource_name: The name of the resource.
|
|
403
|
+
:param UserProgrammaticAccessTokenArgs args: The arguments to use to populate this resource's properties.
|
|
404
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
405
|
+
"""
|
|
406
|
+
...
|
|
407
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
408
|
+
resource_args, opts = _utilities.get_resource_args_opts(UserProgrammaticAccessTokenArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
409
|
+
if resource_args is not None:
|
|
410
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
411
|
+
else:
|
|
412
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
413
|
+
|
|
414
|
+
def _internal_init(__self__,
|
|
415
|
+
resource_name: str,
|
|
416
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
417
|
+
comment: Optional[pulumi.Input[_builtins.str]] = None,
|
|
418
|
+
days_to_expiry: Optional[pulumi.Input[_builtins.int]] = None,
|
|
419
|
+
disabled: Optional[pulumi.Input[_builtins.str]] = None,
|
|
420
|
+
expire_rotated_token_after_hours: Optional[pulumi.Input[_builtins.int]] = None,
|
|
421
|
+
keeper: Optional[pulumi.Input[_builtins.str]] = None,
|
|
422
|
+
mins_to_bypass_network_policy_requirement: Optional[pulumi.Input[_builtins.int]] = None,
|
|
423
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
424
|
+
role_restriction: Optional[pulumi.Input[_builtins.str]] = None,
|
|
425
|
+
user: Optional[pulumi.Input[_builtins.str]] = None,
|
|
426
|
+
__props__=None):
|
|
427
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
428
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
429
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
430
|
+
if opts.id is None:
|
|
431
|
+
if __props__ is not None:
|
|
432
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
433
|
+
__props__ = UserProgrammaticAccessTokenArgs.__new__(UserProgrammaticAccessTokenArgs)
|
|
434
|
+
|
|
435
|
+
__props__.__dict__["comment"] = comment
|
|
436
|
+
__props__.__dict__["days_to_expiry"] = days_to_expiry
|
|
437
|
+
__props__.__dict__["disabled"] = disabled
|
|
438
|
+
__props__.__dict__["expire_rotated_token_after_hours"] = expire_rotated_token_after_hours
|
|
439
|
+
__props__.__dict__["keeper"] = keeper
|
|
440
|
+
__props__.__dict__["mins_to_bypass_network_policy_requirement"] = mins_to_bypass_network_policy_requirement
|
|
441
|
+
__props__.__dict__["name"] = name
|
|
442
|
+
__props__.__dict__["role_restriction"] = role_restriction
|
|
443
|
+
if user is None and not opts.urn:
|
|
444
|
+
raise TypeError("Missing required property 'user'")
|
|
445
|
+
__props__.__dict__["user"] = user
|
|
446
|
+
__props__.__dict__["rotated_token_name"] = None
|
|
447
|
+
__props__.__dict__["show_outputs"] = None
|
|
448
|
+
__props__.__dict__["token"] = None
|
|
449
|
+
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["token"])
|
|
450
|
+
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
|
451
|
+
super(UserProgrammaticAccessToken, __self__).__init__(
|
|
452
|
+
'snowflake:index/userProgrammaticAccessToken:UserProgrammaticAccessToken',
|
|
453
|
+
resource_name,
|
|
454
|
+
__props__,
|
|
455
|
+
opts)
|
|
456
|
+
|
|
457
|
+
@staticmethod
|
|
458
|
+
def get(resource_name: str,
|
|
459
|
+
id: pulumi.Input[str],
|
|
460
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
461
|
+
comment: Optional[pulumi.Input[_builtins.str]] = None,
|
|
462
|
+
days_to_expiry: Optional[pulumi.Input[_builtins.int]] = None,
|
|
463
|
+
disabled: Optional[pulumi.Input[_builtins.str]] = None,
|
|
464
|
+
expire_rotated_token_after_hours: Optional[pulumi.Input[_builtins.int]] = None,
|
|
465
|
+
keeper: Optional[pulumi.Input[_builtins.str]] = None,
|
|
466
|
+
mins_to_bypass_network_policy_requirement: Optional[pulumi.Input[_builtins.int]] = None,
|
|
467
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
468
|
+
role_restriction: Optional[pulumi.Input[_builtins.str]] = None,
|
|
469
|
+
rotated_token_name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
470
|
+
show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserProgrammaticAccessTokenShowOutputArgs', 'UserProgrammaticAccessTokenShowOutputArgsDict']]]]] = None,
|
|
471
|
+
token: Optional[pulumi.Input[_builtins.str]] = None,
|
|
472
|
+
user: Optional[pulumi.Input[_builtins.str]] = None) -> 'UserProgrammaticAccessToken':
|
|
473
|
+
"""
|
|
474
|
+
Get an existing UserProgrammaticAccessToken resource's state with the given name, id, and optional extra
|
|
475
|
+
properties used to qualify the lookup.
|
|
476
|
+
|
|
477
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
478
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
479
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
480
|
+
:param pulumi.Input[_builtins.str] comment: Descriptive comment about the programmatic access token.
|
|
481
|
+
:param pulumi.Input[_builtins.str] disabled: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
482
|
+
:param pulumi.Input[_builtins.int] expire_rotated_token_after_hours: (Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
483
|
+
:param pulumi.Input[_builtins.str] keeper: Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
484
|
+
:param pulumi.Input[_builtins.str] name: Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
485
|
+
:param pulumi.Input[_builtins.str] role_restriction: The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
486
|
+
:param pulumi.Input[_builtins.str] rotated_token_name: Name of the token that represents the prior secret. This field is updated only when the token is rotated. In this case, the field is marked as computed.
|
|
487
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['UserProgrammaticAccessTokenShowOutputArgs', 'UserProgrammaticAccessTokenShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW USER PROGRAMMATIC ACCESS TOKENS` for the given user programmatic access token.
|
|
488
|
+
:param pulumi.Input[_builtins.str] token: The token itself. Use this to authenticate to an endpoint. The data in this field is updated only when the token is created or rotated. In this case, the field is marked as computed.
|
|
489
|
+
:param pulumi.Input[_builtins.str] user: The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
490
|
+
"""
|
|
491
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
492
|
+
|
|
493
|
+
__props__ = _UserProgrammaticAccessTokenState.__new__(_UserProgrammaticAccessTokenState)
|
|
494
|
+
|
|
495
|
+
__props__.__dict__["comment"] = comment
|
|
496
|
+
__props__.__dict__["days_to_expiry"] = days_to_expiry
|
|
497
|
+
__props__.__dict__["disabled"] = disabled
|
|
498
|
+
__props__.__dict__["expire_rotated_token_after_hours"] = expire_rotated_token_after_hours
|
|
499
|
+
__props__.__dict__["keeper"] = keeper
|
|
500
|
+
__props__.__dict__["mins_to_bypass_network_policy_requirement"] = mins_to_bypass_network_policy_requirement
|
|
501
|
+
__props__.__dict__["name"] = name
|
|
502
|
+
__props__.__dict__["role_restriction"] = role_restriction
|
|
503
|
+
__props__.__dict__["rotated_token_name"] = rotated_token_name
|
|
504
|
+
__props__.__dict__["show_outputs"] = show_outputs
|
|
505
|
+
__props__.__dict__["token"] = token
|
|
506
|
+
__props__.__dict__["user"] = user
|
|
507
|
+
return UserProgrammaticAccessToken(resource_name, opts=opts, __props__=__props__)
|
|
508
|
+
|
|
509
|
+
@_builtins.property
|
|
510
|
+
@pulumi.getter
|
|
511
|
+
def comment(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
512
|
+
"""
|
|
513
|
+
Descriptive comment about the programmatic access token.
|
|
514
|
+
"""
|
|
515
|
+
return pulumi.get(self, "comment")
|
|
516
|
+
|
|
517
|
+
@_builtins.property
|
|
518
|
+
@pulumi.getter(name="daysToExpiry")
|
|
519
|
+
def days_to_expiry(self) -> pulumi.Output[Optional[_builtins.int]]:
|
|
520
|
+
return pulumi.get(self, "days_to_expiry")
|
|
521
|
+
|
|
522
|
+
@_builtins.property
|
|
523
|
+
@pulumi.getter
|
|
524
|
+
def disabled(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
525
|
+
"""
|
|
526
|
+
(Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`default`)) Disables or enables the programmatic access token. 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.
|
|
527
|
+
"""
|
|
528
|
+
return pulumi.get(self, "disabled")
|
|
529
|
+
|
|
530
|
+
@_builtins.property
|
|
531
|
+
@pulumi.getter(name="expireRotatedTokenAfterHours")
|
|
532
|
+
def expire_rotated_token_after_hours(self) -> pulumi.Output[Optional[_builtins.int]]:
|
|
533
|
+
"""
|
|
534
|
+
(Default: fallback to Snowflake default - uses special value that cannot be set in the configuration manually (`-1`)) This field is only used when the token is rotated by changing the `keeper` field. Sets the expiration time of the existing token secret to expire after the specified number of hours. You can set this to a value of 0 to expire the current token secret immediately.
|
|
535
|
+
"""
|
|
536
|
+
return pulumi.get(self, "expire_rotated_token_after_hours")
|
|
537
|
+
|
|
538
|
+
@_builtins.property
|
|
539
|
+
@pulumi.getter
|
|
540
|
+
def keeper(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
541
|
+
"""
|
|
542
|
+
Arbitrary string that, if and only if, changed from a non-empty to a different non-empty value (or known after apply), will trigger a key to be rotated. When you add this field to the configuration, or remove it from the configuration, the rotation is not triggered. When the token is rotated, the `token` and `rotated_token_name` fields are marked as computed.
|
|
543
|
+
"""
|
|
544
|
+
return pulumi.get(self, "keeper")
|
|
545
|
+
|
|
546
|
+
@_builtins.property
|
|
547
|
+
@pulumi.getter(name="minsToBypassNetworkPolicyRequirement")
|
|
548
|
+
def mins_to_bypass_network_policy_requirement(self) -> pulumi.Output[Optional[_builtins.int]]:
|
|
549
|
+
return pulumi.get(self, "mins_to_bypass_network_policy_requirement")
|
|
550
|
+
|
|
551
|
+
@_builtins.property
|
|
552
|
+
@pulumi.getter
|
|
553
|
+
def name(self) -> pulumi.Output[_builtins.str]:
|
|
554
|
+
"""
|
|
555
|
+
Specifies the name for the programmatic access token; must be unique for the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
556
|
+
"""
|
|
557
|
+
return pulumi.get(self, "name")
|
|
558
|
+
|
|
559
|
+
@_builtins.property
|
|
560
|
+
@pulumi.getter(name="roleRestriction")
|
|
561
|
+
def role_restriction(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
562
|
+
"""
|
|
563
|
+
The name of the role used for privilege evaluation and object creation. This must be one of the roles that has already been granted to the user. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
564
|
+
"""
|
|
565
|
+
return pulumi.get(self, "role_restriction")
|
|
566
|
+
|
|
567
|
+
@_builtins.property
|
|
568
|
+
@pulumi.getter(name="rotatedTokenName")
|
|
569
|
+
def rotated_token_name(self) -> pulumi.Output[_builtins.str]:
|
|
570
|
+
"""
|
|
571
|
+
Name of the token that represents the prior secret. This field is updated only when the token is rotated. In this case, the field is marked as computed.
|
|
572
|
+
"""
|
|
573
|
+
return pulumi.get(self, "rotated_token_name")
|
|
574
|
+
|
|
575
|
+
@_builtins.property
|
|
576
|
+
@pulumi.getter(name="showOutputs")
|
|
577
|
+
def show_outputs(self) -> pulumi.Output[Sequence['outputs.UserProgrammaticAccessTokenShowOutput']]:
|
|
578
|
+
"""
|
|
579
|
+
Outputs the result of `SHOW USER PROGRAMMATIC ACCESS TOKENS` for the given user programmatic access token.
|
|
580
|
+
"""
|
|
581
|
+
return pulumi.get(self, "show_outputs")
|
|
582
|
+
|
|
583
|
+
@_builtins.property
|
|
584
|
+
@pulumi.getter
|
|
585
|
+
def token(self) -> pulumi.Output[_builtins.str]:
|
|
586
|
+
"""
|
|
587
|
+
The token itself. Use this to authenticate to an endpoint. The data in this field is updated only when the token is created or rotated. In this case, the field is marked as computed.
|
|
588
|
+
"""
|
|
589
|
+
return pulumi.get(self, "token")
|
|
590
|
+
|
|
591
|
+
@_builtins.property
|
|
592
|
+
@pulumi.getter
|
|
593
|
+
def user(self) -> pulumi.Output[_builtins.str]:
|
|
594
|
+
"""
|
|
595
|
+
The name of the user that the token is associated with. A user cannot use another user's programmatic access token to authenticate. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
|
|
596
|
+
"""
|
|
597
|
+
return pulumi.get(self, "user")
|
|
598
|
+
|