pulumi-alicloud 3.86.0a1758000634__py3-none-any.whl → 3.87.0a1758691004__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-alicloud might be problematic. Click here for more details.
- pulumi_alicloud/__init__.py +56 -0
- pulumi_alicloud/actiontrail/get_sasl_users.py +106 -21
- pulumi_alicloud/actiontrail/outputs.py +18 -0
- pulumi_alicloud/alikafka/instance.py +28 -28
- pulumi_alicloud/cen/transit_router_vpc_attachment.py +61 -29
- pulumi_alicloud/cloudfirewall/__init__.py +1 -0
- pulumi_alicloud/cloudfirewall/threat_intelligence_switch.py +257 -0
- pulumi_alicloud/cloudsso/__init__.py +1 -0
- pulumi_alicloud/cloudsso/_inputs.py +54 -0
- pulumi_alicloud/cloudsso/outputs.py +51 -0
- pulumi_alicloud/cloudsso/user_provisioning.py +723 -0
- pulumi_alicloud/dms/__init__.py +1 -0
- pulumi_alicloud/dms/airflow.py +990 -0
- pulumi_alicloud/ecs/ecs_launch_template.py +21 -7
- pulumi_alicloud/esa/__init__.py +2 -0
- pulumi_alicloud/esa/_inputs.py +189 -0
- pulumi_alicloud/esa/outputs.py +137 -0
- pulumi_alicloud/esa/transport_layer_application.py +459 -0
- pulumi_alicloud/esa/waf_ruleset.py +437 -0
- pulumi_alicloud/fc/_inputs.py +13 -0
- pulumi_alicloud/fc/function.py +0 -156
- pulumi_alicloud/fc/outputs.py +8 -0
- pulumi_alicloud/fc/v3_function.py +54 -7
- pulumi_alicloud/lindorm/__init__.py +2 -0
- pulumi_alicloud/lindorm/_inputs.py +459 -0
- pulumi_alicloud/lindorm/instance_v2.py +1119 -0
- pulumi_alicloud/lindorm/outputs.py +319 -0
- pulumi_alicloud/log/etl.py +6 -0
- pulumi_alicloud/mongodb/sharding_instance.py +235 -0
- pulumi_alicloud/pulumi-plugin.json +1 -1
- pulumi_alicloud/resourcemanager/control_policy_attachment.py +39 -7
- pulumi_alicloud/resourcemanager/handshake.py +118 -56
- pulumi_alicloud/sls/__init__.py +1 -0
- pulumi_alicloud/sls/_inputs.py +111 -0
- pulumi_alicloud/sls/index.py +646 -0
- pulumi_alicloud/sls/outputs.py +86 -0
- {pulumi_alicloud-3.86.0a1758000634.dist-info → pulumi_alicloud-3.87.0a1758691004.dist-info}/METADATA +1 -1
- {pulumi_alicloud-3.86.0a1758000634.dist-info → pulumi_alicloud-3.87.0a1758691004.dist-info}/RECORD +40 -32
- {pulumi_alicloud-3.86.0a1758000634.dist-info → pulumi_alicloud-3.87.0a1758691004.dist-info}/WHEEL +0 -0
- {pulumi_alicloud-3.86.0a1758000634.dist-info → pulumi_alicloud-3.87.0a1758691004.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,723 @@
|
|
|
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__ = ['UserProvisioningArgs', 'UserProvisioning']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class UserProvisioningArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
deletion_strategy: pulumi.Input[_builtins.str],
|
|
25
|
+
directory_id: pulumi.Input[_builtins.str],
|
|
26
|
+
duplication_strategy: pulumi.Input[_builtins.str],
|
|
27
|
+
principal_id: pulumi.Input[_builtins.str],
|
|
28
|
+
principal_type: pulumi.Input[_builtins.str],
|
|
29
|
+
target_id: pulumi.Input[_builtins.str],
|
|
30
|
+
target_type: pulumi.Input[_builtins.str],
|
|
31
|
+
description: Optional[pulumi.Input[_builtins.str]] = None):
|
|
32
|
+
"""
|
|
33
|
+
The set of arguments for constructing a UserProvisioning resource.
|
|
34
|
+
:param pulumi.Input[_builtins.str] deletion_strategy: The processing policy for users who have been synchronized when deleting synchronization
|
|
35
|
+
:param pulumi.Input[_builtins.str] directory_id: The ID of the directory to which the synchronization belongs
|
|
36
|
+
:param pulumi.Input[_builtins.str] duplication_strategy: Processing Policy for Synchronization Conflicts
|
|
37
|
+
:param pulumi.Input[_builtins.str] principal_id: The ID of the CloudSSO user/group associated with the synchronization.
|
|
38
|
+
:param pulumi.Input[_builtins.str] principal_type: The ID of the CloudSSO user/group associated with the synchronization.
|
|
39
|
+
:param pulumi.Input[_builtins.str] target_id: The ID of the destination associated with the synchronization.
|
|
40
|
+
:param pulumi.Input[_builtins.str] target_type: The target type associated with the synchronization
|
|
41
|
+
:param pulumi.Input[_builtins.str] description: Description of User Synchronization
|
|
42
|
+
"""
|
|
43
|
+
pulumi.set(__self__, "deletion_strategy", deletion_strategy)
|
|
44
|
+
pulumi.set(__self__, "directory_id", directory_id)
|
|
45
|
+
pulumi.set(__self__, "duplication_strategy", duplication_strategy)
|
|
46
|
+
pulumi.set(__self__, "principal_id", principal_id)
|
|
47
|
+
pulumi.set(__self__, "principal_type", principal_type)
|
|
48
|
+
pulumi.set(__self__, "target_id", target_id)
|
|
49
|
+
pulumi.set(__self__, "target_type", target_type)
|
|
50
|
+
if description is not None:
|
|
51
|
+
pulumi.set(__self__, "description", description)
|
|
52
|
+
|
|
53
|
+
@_builtins.property
|
|
54
|
+
@pulumi.getter(name="deletionStrategy")
|
|
55
|
+
def deletion_strategy(self) -> pulumi.Input[_builtins.str]:
|
|
56
|
+
"""
|
|
57
|
+
The processing policy for users who have been synchronized when deleting synchronization
|
|
58
|
+
"""
|
|
59
|
+
return pulumi.get(self, "deletion_strategy")
|
|
60
|
+
|
|
61
|
+
@deletion_strategy.setter
|
|
62
|
+
def deletion_strategy(self, value: pulumi.Input[_builtins.str]):
|
|
63
|
+
pulumi.set(self, "deletion_strategy", value)
|
|
64
|
+
|
|
65
|
+
@_builtins.property
|
|
66
|
+
@pulumi.getter(name="directoryId")
|
|
67
|
+
def directory_id(self) -> pulumi.Input[_builtins.str]:
|
|
68
|
+
"""
|
|
69
|
+
The ID of the directory to which the synchronization belongs
|
|
70
|
+
"""
|
|
71
|
+
return pulumi.get(self, "directory_id")
|
|
72
|
+
|
|
73
|
+
@directory_id.setter
|
|
74
|
+
def directory_id(self, value: pulumi.Input[_builtins.str]):
|
|
75
|
+
pulumi.set(self, "directory_id", value)
|
|
76
|
+
|
|
77
|
+
@_builtins.property
|
|
78
|
+
@pulumi.getter(name="duplicationStrategy")
|
|
79
|
+
def duplication_strategy(self) -> pulumi.Input[_builtins.str]:
|
|
80
|
+
"""
|
|
81
|
+
Processing Policy for Synchronization Conflicts
|
|
82
|
+
"""
|
|
83
|
+
return pulumi.get(self, "duplication_strategy")
|
|
84
|
+
|
|
85
|
+
@duplication_strategy.setter
|
|
86
|
+
def duplication_strategy(self, value: pulumi.Input[_builtins.str]):
|
|
87
|
+
pulumi.set(self, "duplication_strategy", value)
|
|
88
|
+
|
|
89
|
+
@_builtins.property
|
|
90
|
+
@pulumi.getter(name="principalId")
|
|
91
|
+
def principal_id(self) -> pulumi.Input[_builtins.str]:
|
|
92
|
+
"""
|
|
93
|
+
The ID of the CloudSSO user/group associated with the synchronization.
|
|
94
|
+
"""
|
|
95
|
+
return pulumi.get(self, "principal_id")
|
|
96
|
+
|
|
97
|
+
@principal_id.setter
|
|
98
|
+
def principal_id(self, value: pulumi.Input[_builtins.str]):
|
|
99
|
+
pulumi.set(self, "principal_id", value)
|
|
100
|
+
|
|
101
|
+
@_builtins.property
|
|
102
|
+
@pulumi.getter(name="principalType")
|
|
103
|
+
def principal_type(self) -> pulumi.Input[_builtins.str]:
|
|
104
|
+
"""
|
|
105
|
+
The ID of the CloudSSO user/group associated with the synchronization.
|
|
106
|
+
"""
|
|
107
|
+
return pulumi.get(self, "principal_type")
|
|
108
|
+
|
|
109
|
+
@principal_type.setter
|
|
110
|
+
def principal_type(self, value: pulumi.Input[_builtins.str]):
|
|
111
|
+
pulumi.set(self, "principal_type", value)
|
|
112
|
+
|
|
113
|
+
@_builtins.property
|
|
114
|
+
@pulumi.getter(name="targetId")
|
|
115
|
+
def target_id(self) -> pulumi.Input[_builtins.str]:
|
|
116
|
+
"""
|
|
117
|
+
The ID of the destination associated with the synchronization.
|
|
118
|
+
"""
|
|
119
|
+
return pulumi.get(self, "target_id")
|
|
120
|
+
|
|
121
|
+
@target_id.setter
|
|
122
|
+
def target_id(self, value: pulumi.Input[_builtins.str]):
|
|
123
|
+
pulumi.set(self, "target_id", value)
|
|
124
|
+
|
|
125
|
+
@_builtins.property
|
|
126
|
+
@pulumi.getter(name="targetType")
|
|
127
|
+
def target_type(self) -> pulumi.Input[_builtins.str]:
|
|
128
|
+
"""
|
|
129
|
+
The target type associated with the synchronization
|
|
130
|
+
"""
|
|
131
|
+
return pulumi.get(self, "target_type")
|
|
132
|
+
|
|
133
|
+
@target_type.setter
|
|
134
|
+
def target_type(self, value: pulumi.Input[_builtins.str]):
|
|
135
|
+
pulumi.set(self, "target_type", value)
|
|
136
|
+
|
|
137
|
+
@_builtins.property
|
|
138
|
+
@pulumi.getter
|
|
139
|
+
def description(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
140
|
+
"""
|
|
141
|
+
Description of User Synchronization
|
|
142
|
+
"""
|
|
143
|
+
return pulumi.get(self, "description")
|
|
144
|
+
|
|
145
|
+
@description.setter
|
|
146
|
+
def description(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
147
|
+
pulumi.set(self, "description", value)
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
@pulumi.input_type
|
|
151
|
+
class _UserProvisioningState:
|
|
152
|
+
def __init__(__self__, *,
|
|
153
|
+
create_time: Optional[pulumi.Input[_builtins.str]] = None,
|
|
154
|
+
deletion_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
155
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
156
|
+
directory_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
157
|
+
duplication_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
158
|
+
principal_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
159
|
+
principal_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
160
|
+
status: Optional[pulumi.Input[_builtins.str]] = None,
|
|
161
|
+
target_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
162
|
+
target_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
163
|
+
user_provisioning_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
164
|
+
user_provisioning_statistics: Optional[pulumi.Input[Sequence[pulumi.Input['UserProvisioningUserProvisioningStatisticArgs']]]] = None):
|
|
165
|
+
"""
|
|
166
|
+
Input properties used for looking up and filtering UserProvisioning resources.
|
|
167
|
+
:param pulumi.Input[_builtins.str] create_time: The creation time of the synchronization
|
|
168
|
+
:param pulumi.Input[_builtins.str] deletion_strategy: The processing policy for users who have been synchronized when deleting synchronization
|
|
169
|
+
:param pulumi.Input[_builtins.str] description: Description of User Synchronization
|
|
170
|
+
:param pulumi.Input[_builtins.str] directory_id: The ID of the directory to which the synchronization belongs
|
|
171
|
+
:param pulumi.Input[_builtins.str] duplication_strategy: Processing Policy for Synchronization Conflicts
|
|
172
|
+
:param pulumi.Input[_builtins.str] principal_id: The ID of the CloudSSO user/group associated with the synchronization.
|
|
173
|
+
:param pulumi.Input[_builtins.str] principal_type: The ID of the CloudSSO user/group associated with the synchronization.
|
|
174
|
+
:param pulumi.Input[_builtins.str] status: The status of the resource
|
|
175
|
+
:param pulumi.Input[_builtins.str] target_id: The ID of the destination associated with the synchronization.
|
|
176
|
+
:param pulumi.Input[_builtins.str] target_type: The target type associated with the synchronization
|
|
177
|
+
:param pulumi.Input[_builtins.str] user_provisioning_id: The first ID of the resource
|
|
178
|
+
:param pulumi.Input[Sequence[pulumi.Input['UserProvisioningUserProvisioningStatisticArgs']]] user_provisioning_statistics: User Provisioning statistics
|
|
179
|
+
"""
|
|
180
|
+
if create_time is not None:
|
|
181
|
+
pulumi.set(__self__, "create_time", create_time)
|
|
182
|
+
if deletion_strategy is not None:
|
|
183
|
+
pulumi.set(__self__, "deletion_strategy", deletion_strategy)
|
|
184
|
+
if description is not None:
|
|
185
|
+
pulumi.set(__self__, "description", description)
|
|
186
|
+
if directory_id is not None:
|
|
187
|
+
pulumi.set(__self__, "directory_id", directory_id)
|
|
188
|
+
if duplication_strategy is not None:
|
|
189
|
+
pulumi.set(__self__, "duplication_strategy", duplication_strategy)
|
|
190
|
+
if principal_id is not None:
|
|
191
|
+
pulumi.set(__self__, "principal_id", principal_id)
|
|
192
|
+
if principal_type is not None:
|
|
193
|
+
pulumi.set(__self__, "principal_type", principal_type)
|
|
194
|
+
if status is not None:
|
|
195
|
+
pulumi.set(__self__, "status", status)
|
|
196
|
+
if target_id is not None:
|
|
197
|
+
pulumi.set(__self__, "target_id", target_id)
|
|
198
|
+
if target_type is not None:
|
|
199
|
+
pulumi.set(__self__, "target_type", target_type)
|
|
200
|
+
if user_provisioning_id is not None:
|
|
201
|
+
pulumi.set(__self__, "user_provisioning_id", user_provisioning_id)
|
|
202
|
+
if user_provisioning_statistics is not None:
|
|
203
|
+
pulumi.set(__self__, "user_provisioning_statistics", user_provisioning_statistics)
|
|
204
|
+
|
|
205
|
+
@_builtins.property
|
|
206
|
+
@pulumi.getter(name="createTime")
|
|
207
|
+
def create_time(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
208
|
+
"""
|
|
209
|
+
The creation time of the synchronization
|
|
210
|
+
"""
|
|
211
|
+
return pulumi.get(self, "create_time")
|
|
212
|
+
|
|
213
|
+
@create_time.setter
|
|
214
|
+
def create_time(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
215
|
+
pulumi.set(self, "create_time", value)
|
|
216
|
+
|
|
217
|
+
@_builtins.property
|
|
218
|
+
@pulumi.getter(name="deletionStrategy")
|
|
219
|
+
def deletion_strategy(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
220
|
+
"""
|
|
221
|
+
The processing policy for users who have been synchronized when deleting synchronization
|
|
222
|
+
"""
|
|
223
|
+
return pulumi.get(self, "deletion_strategy")
|
|
224
|
+
|
|
225
|
+
@deletion_strategy.setter
|
|
226
|
+
def deletion_strategy(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
227
|
+
pulumi.set(self, "deletion_strategy", value)
|
|
228
|
+
|
|
229
|
+
@_builtins.property
|
|
230
|
+
@pulumi.getter
|
|
231
|
+
def description(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
232
|
+
"""
|
|
233
|
+
Description of User Synchronization
|
|
234
|
+
"""
|
|
235
|
+
return pulumi.get(self, "description")
|
|
236
|
+
|
|
237
|
+
@description.setter
|
|
238
|
+
def description(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
239
|
+
pulumi.set(self, "description", value)
|
|
240
|
+
|
|
241
|
+
@_builtins.property
|
|
242
|
+
@pulumi.getter(name="directoryId")
|
|
243
|
+
def directory_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
244
|
+
"""
|
|
245
|
+
The ID of the directory to which the synchronization belongs
|
|
246
|
+
"""
|
|
247
|
+
return pulumi.get(self, "directory_id")
|
|
248
|
+
|
|
249
|
+
@directory_id.setter
|
|
250
|
+
def directory_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
251
|
+
pulumi.set(self, "directory_id", value)
|
|
252
|
+
|
|
253
|
+
@_builtins.property
|
|
254
|
+
@pulumi.getter(name="duplicationStrategy")
|
|
255
|
+
def duplication_strategy(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
256
|
+
"""
|
|
257
|
+
Processing Policy for Synchronization Conflicts
|
|
258
|
+
"""
|
|
259
|
+
return pulumi.get(self, "duplication_strategy")
|
|
260
|
+
|
|
261
|
+
@duplication_strategy.setter
|
|
262
|
+
def duplication_strategy(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
263
|
+
pulumi.set(self, "duplication_strategy", value)
|
|
264
|
+
|
|
265
|
+
@_builtins.property
|
|
266
|
+
@pulumi.getter(name="principalId")
|
|
267
|
+
def principal_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
268
|
+
"""
|
|
269
|
+
The ID of the CloudSSO user/group associated with the synchronization.
|
|
270
|
+
"""
|
|
271
|
+
return pulumi.get(self, "principal_id")
|
|
272
|
+
|
|
273
|
+
@principal_id.setter
|
|
274
|
+
def principal_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
275
|
+
pulumi.set(self, "principal_id", value)
|
|
276
|
+
|
|
277
|
+
@_builtins.property
|
|
278
|
+
@pulumi.getter(name="principalType")
|
|
279
|
+
def principal_type(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
280
|
+
"""
|
|
281
|
+
The ID of the CloudSSO user/group associated with the synchronization.
|
|
282
|
+
"""
|
|
283
|
+
return pulumi.get(self, "principal_type")
|
|
284
|
+
|
|
285
|
+
@principal_type.setter
|
|
286
|
+
def principal_type(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
287
|
+
pulumi.set(self, "principal_type", value)
|
|
288
|
+
|
|
289
|
+
@_builtins.property
|
|
290
|
+
@pulumi.getter
|
|
291
|
+
def status(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
292
|
+
"""
|
|
293
|
+
The status of the resource
|
|
294
|
+
"""
|
|
295
|
+
return pulumi.get(self, "status")
|
|
296
|
+
|
|
297
|
+
@status.setter
|
|
298
|
+
def status(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
299
|
+
pulumi.set(self, "status", value)
|
|
300
|
+
|
|
301
|
+
@_builtins.property
|
|
302
|
+
@pulumi.getter(name="targetId")
|
|
303
|
+
def target_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
304
|
+
"""
|
|
305
|
+
The ID of the destination associated with the synchronization.
|
|
306
|
+
"""
|
|
307
|
+
return pulumi.get(self, "target_id")
|
|
308
|
+
|
|
309
|
+
@target_id.setter
|
|
310
|
+
def target_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
311
|
+
pulumi.set(self, "target_id", value)
|
|
312
|
+
|
|
313
|
+
@_builtins.property
|
|
314
|
+
@pulumi.getter(name="targetType")
|
|
315
|
+
def target_type(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
316
|
+
"""
|
|
317
|
+
The target type associated with the synchronization
|
|
318
|
+
"""
|
|
319
|
+
return pulumi.get(self, "target_type")
|
|
320
|
+
|
|
321
|
+
@target_type.setter
|
|
322
|
+
def target_type(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
323
|
+
pulumi.set(self, "target_type", value)
|
|
324
|
+
|
|
325
|
+
@_builtins.property
|
|
326
|
+
@pulumi.getter(name="userProvisioningId")
|
|
327
|
+
def user_provisioning_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
328
|
+
"""
|
|
329
|
+
The first ID of the resource
|
|
330
|
+
"""
|
|
331
|
+
return pulumi.get(self, "user_provisioning_id")
|
|
332
|
+
|
|
333
|
+
@user_provisioning_id.setter
|
|
334
|
+
def user_provisioning_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
335
|
+
pulumi.set(self, "user_provisioning_id", value)
|
|
336
|
+
|
|
337
|
+
@_builtins.property
|
|
338
|
+
@pulumi.getter(name="userProvisioningStatistics")
|
|
339
|
+
def user_provisioning_statistics(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserProvisioningUserProvisioningStatisticArgs']]]]:
|
|
340
|
+
"""
|
|
341
|
+
User Provisioning statistics
|
|
342
|
+
"""
|
|
343
|
+
return pulumi.get(self, "user_provisioning_statistics")
|
|
344
|
+
|
|
345
|
+
@user_provisioning_statistics.setter
|
|
346
|
+
def user_provisioning_statistics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserProvisioningUserProvisioningStatisticArgs']]]]):
|
|
347
|
+
pulumi.set(self, "user_provisioning_statistics", value)
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
@pulumi.type_token("alicloud:cloudsso/userProvisioning:UserProvisioning")
|
|
351
|
+
class UserProvisioning(pulumi.CustomResource):
|
|
352
|
+
@overload
|
|
353
|
+
def __init__(__self__,
|
|
354
|
+
resource_name: str,
|
|
355
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
356
|
+
deletion_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
357
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
358
|
+
directory_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
359
|
+
duplication_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
360
|
+
principal_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
361
|
+
principal_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
362
|
+
target_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
363
|
+
target_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
364
|
+
__props__=None):
|
|
365
|
+
"""
|
|
366
|
+
Provides a Cloud SSO User Provisioning resource.
|
|
367
|
+
|
|
368
|
+
RAM user synchronization.
|
|
369
|
+
|
|
370
|
+
For information about Cloud SSO User Provisioning and how to use it, see [What is User Provisioning](https://next.api.alibabacloud.com/document/cloudsso/2021-05-15/CreateUserProvisioning).
|
|
371
|
+
|
|
372
|
+
> **NOTE:** Available since v1.260.0.
|
|
373
|
+
|
|
374
|
+
## Example Usage
|
|
375
|
+
|
|
376
|
+
Basic Usage
|
|
377
|
+
|
|
378
|
+
```python
|
|
379
|
+
import pulumi
|
|
380
|
+
import pulumi_alicloud as alicloud
|
|
381
|
+
import pulumi_random as random
|
|
382
|
+
import pulumi_std as std
|
|
383
|
+
|
|
384
|
+
config = pulumi.Config()
|
|
385
|
+
name = config.get("name")
|
|
386
|
+
if name is None:
|
|
387
|
+
name = "terraform-example"
|
|
388
|
+
default = alicloud.get_account()
|
|
389
|
+
default_get_directories = alicloud.cloudsso.get_directories()
|
|
390
|
+
default_integer = random.index.Integer("default",
|
|
391
|
+
min=10000,
|
|
392
|
+
max=99999)
|
|
393
|
+
default_directory = []
|
|
394
|
+
def create_default(range_body):
|
|
395
|
+
for range in [{"value": i} for i in range(0, range_body)]:
|
|
396
|
+
default_directory.append(alicloud.cloudsso.Directory(f"default-{range['value']}", directory_name=name))
|
|
397
|
+
|
|
398
|
+
len(default_get_directories.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] > 0 else 1))
|
|
399
|
+
directory_id = len(default_get_directories.ids).apply(lambda length: default_get_directories.ids[0] if length > 0 else std.concat(input=[
|
|
400
|
+
[__item.id for __item in default_directory],
|
|
401
|
+
[""],
|
|
402
|
+
]).result[0])
|
|
403
|
+
default_user = alicloud.cloudsso.User("default",
|
|
404
|
+
directory_id=directory_id,
|
|
405
|
+
user_name=f"{name}-{default_integer['result']}")
|
|
406
|
+
default_group = alicloud.cloudsso.Group("default",
|
|
407
|
+
directory_id=directory_id,
|
|
408
|
+
group_name=name,
|
|
409
|
+
description=name)
|
|
410
|
+
default_user_provisioning = alicloud.cloudsso.UserProvisioning("default",
|
|
411
|
+
description="description",
|
|
412
|
+
principal_id=default_user.user_id,
|
|
413
|
+
target_type="RD-Account",
|
|
414
|
+
deletion_strategy="Keep",
|
|
415
|
+
duplication_strategy="KeepBoth",
|
|
416
|
+
principal_type="User",
|
|
417
|
+
target_id=default.id,
|
|
418
|
+
directory_id=default_user.directory_id)
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
## Import
|
|
422
|
+
|
|
423
|
+
Cloud SSO User Provisioning can be imported using the id, e.g.
|
|
424
|
+
|
|
425
|
+
```sh
|
|
426
|
+
$ pulumi import alicloud:cloudsso/userProvisioning:UserProvisioning example <directory_id>:<user_provisioning_id>
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
:param str resource_name: The name of the resource.
|
|
430
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
431
|
+
:param pulumi.Input[_builtins.str] deletion_strategy: The processing policy for users who have been synchronized when deleting synchronization
|
|
432
|
+
:param pulumi.Input[_builtins.str] description: Description of User Synchronization
|
|
433
|
+
:param pulumi.Input[_builtins.str] directory_id: The ID of the directory to which the synchronization belongs
|
|
434
|
+
:param pulumi.Input[_builtins.str] duplication_strategy: Processing Policy for Synchronization Conflicts
|
|
435
|
+
:param pulumi.Input[_builtins.str] principal_id: The ID of the CloudSSO user/group associated with the synchronization.
|
|
436
|
+
:param pulumi.Input[_builtins.str] principal_type: The ID of the CloudSSO user/group associated with the synchronization.
|
|
437
|
+
:param pulumi.Input[_builtins.str] target_id: The ID of the destination associated with the synchronization.
|
|
438
|
+
:param pulumi.Input[_builtins.str] target_type: The target type associated with the synchronization
|
|
439
|
+
"""
|
|
440
|
+
...
|
|
441
|
+
@overload
|
|
442
|
+
def __init__(__self__,
|
|
443
|
+
resource_name: str,
|
|
444
|
+
args: UserProvisioningArgs,
|
|
445
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
446
|
+
"""
|
|
447
|
+
Provides a Cloud SSO User Provisioning resource.
|
|
448
|
+
|
|
449
|
+
RAM user synchronization.
|
|
450
|
+
|
|
451
|
+
For information about Cloud SSO User Provisioning and how to use it, see [What is User Provisioning](https://next.api.alibabacloud.com/document/cloudsso/2021-05-15/CreateUserProvisioning).
|
|
452
|
+
|
|
453
|
+
> **NOTE:** Available since v1.260.0.
|
|
454
|
+
|
|
455
|
+
## Example Usage
|
|
456
|
+
|
|
457
|
+
Basic Usage
|
|
458
|
+
|
|
459
|
+
```python
|
|
460
|
+
import pulumi
|
|
461
|
+
import pulumi_alicloud as alicloud
|
|
462
|
+
import pulumi_random as random
|
|
463
|
+
import pulumi_std as std
|
|
464
|
+
|
|
465
|
+
config = pulumi.Config()
|
|
466
|
+
name = config.get("name")
|
|
467
|
+
if name is None:
|
|
468
|
+
name = "terraform-example"
|
|
469
|
+
default = alicloud.get_account()
|
|
470
|
+
default_get_directories = alicloud.cloudsso.get_directories()
|
|
471
|
+
default_integer = random.index.Integer("default",
|
|
472
|
+
min=10000,
|
|
473
|
+
max=99999)
|
|
474
|
+
default_directory = []
|
|
475
|
+
def create_default(range_body):
|
|
476
|
+
for range in [{"value": i} for i in range(0, range_body)]:
|
|
477
|
+
default_directory.append(alicloud.cloudsso.Directory(f"default-{range['value']}", directory_name=name))
|
|
478
|
+
|
|
479
|
+
len(default_get_directories.ids).apply(lambda resolved_outputs: create_default(0 if resolved_outputs['length'] > 0 else 1))
|
|
480
|
+
directory_id = len(default_get_directories.ids).apply(lambda length: default_get_directories.ids[0] if length > 0 else std.concat(input=[
|
|
481
|
+
[__item.id for __item in default_directory],
|
|
482
|
+
[""],
|
|
483
|
+
]).result[0])
|
|
484
|
+
default_user = alicloud.cloudsso.User("default",
|
|
485
|
+
directory_id=directory_id,
|
|
486
|
+
user_name=f"{name}-{default_integer['result']}")
|
|
487
|
+
default_group = alicloud.cloudsso.Group("default",
|
|
488
|
+
directory_id=directory_id,
|
|
489
|
+
group_name=name,
|
|
490
|
+
description=name)
|
|
491
|
+
default_user_provisioning = alicloud.cloudsso.UserProvisioning("default",
|
|
492
|
+
description="description",
|
|
493
|
+
principal_id=default_user.user_id,
|
|
494
|
+
target_type="RD-Account",
|
|
495
|
+
deletion_strategy="Keep",
|
|
496
|
+
duplication_strategy="KeepBoth",
|
|
497
|
+
principal_type="User",
|
|
498
|
+
target_id=default.id,
|
|
499
|
+
directory_id=default_user.directory_id)
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
## Import
|
|
503
|
+
|
|
504
|
+
Cloud SSO User Provisioning can be imported using the id, e.g.
|
|
505
|
+
|
|
506
|
+
```sh
|
|
507
|
+
$ pulumi import alicloud:cloudsso/userProvisioning:UserProvisioning example <directory_id>:<user_provisioning_id>
|
|
508
|
+
```
|
|
509
|
+
|
|
510
|
+
:param str resource_name: The name of the resource.
|
|
511
|
+
:param UserProvisioningArgs args: The arguments to use to populate this resource's properties.
|
|
512
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
513
|
+
"""
|
|
514
|
+
...
|
|
515
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
516
|
+
resource_args, opts = _utilities.get_resource_args_opts(UserProvisioningArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
517
|
+
if resource_args is not None:
|
|
518
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
519
|
+
else:
|
|
520
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
521
|
+
|
|
522
|
+
def _internal_init(__self__,
|
|
523
|
+
resource_name: str,
|
|
524
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
525
|
+
deletion_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
526
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
527
|
+
directory_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
528
|
+
duplication_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
529
|
+
principal_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
530
|
+
principal_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
531
|
+
target_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
532
|
+
target_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
533
|
+
__props__=None):
|
|
534
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
535
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
536
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
537
|
+
if opts.id is None:
|
|
538
|
+
if __props__ is not None:
|
|
539
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
540
|
+
__props__ = UserProvisioningArgs.__new__(UserProvisioningArgs)
|
|
541
|
+
|
|
542
|
+
if deletion_strategy is None and not opts.urn:
|
|
543
|
+
raise TypeError("Missing required property 'deletion_strategy'")
|
|
544
|
+
__props__.__dict__["deletion_strategy"] = deletion_strategy
|
|
545
|
+
__props__.__dict__["description"] = description
|
|
546
|
+
if directory_id is None and not opts.urn:
|
|
547
|
+
raise TypeError("Missing required property 'directory_id'")
|
|
548
|
+
__props__.__dict__["directory_id"] = directory_id
|
|
549
|
+
if duplication_strategy is None and not opts.urn:
|
|
550
|
+
raise TypeError("Missing required property 'duplication_strategy'")
|
|
551
|
+
__props__.__dict__["duplication_strategy"] = duplication_strategy
|
|
552
|
+
if principal_id is None and not opts.urn:
|
|
553
|
+
raise TypeError("Missing required property 'principal_id'")
|
|
554
|
+
__props__.__dict__["principal_id"] = principal_id
|
|
555
|
+
if principal_type is None and not opts.urn:
|
|
556
|
+
raise TypeError("Missing required property 'principal_type'")
|
|
557
|
+
__props__.__dict__["principal_type"] = principal_type
|
|
558
|
+
if target_id is None and not opts.urn:
|
|
559
|
+
raise TypeError("Missing required property 'target_id'")
|
|
560
|
+
__props__.__dict__["target_id"] = target_id
|
|
561
|
+
if target_type is None and not opts.urn:
|
|
562
|
+
raise TypeError("Missing required property 'target_type'")
|
|
563
|
+
__props__.__dict__["target_type"] = target_type
|
|
564
|
+
__props__.__dict__["create_time"] = None
|
|
565
|
+
__props__.__dict__["status"] = None
|
|
566
|
+
__props__.__dict__["user_provisioning_id"] = None
|
|
567
|
+
__props__.__dict__["user_provisioning_statistics"] = None
|
|
568
|
+
super(UserProvisioning, __self__).__init__(
|
|
569
|
+
'alicloud:cloudsso/userProvisioning:UserProvisioning',
|
|
570
|
+
resource_name,
|
|
571
|
+
__props__,
|
|
572
|
+
opts)
|
|
573
|
+
|
|
574
|
+
@staticmethod
|
|
575
|
+
def get(resource_name: str,
|
|
576
|
+
id: pulumi.Input[str],
|
|
577
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
578
|
+
create_time: Optional[pulumi.Input[_builtins.str]] = None,
|
|
579
|
+
deletion_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
580
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
581
|
+
directory_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
582
|
+
duplication_strategy: Optional[pulumi.Input[_builtins.str]] = None,
|
|
583
|
+
principal_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
584
|
+
principal_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
585
|
+
status: Optional[pulumi.Input[_builtins.str]] = None,
|
|
586
|
+
target_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
587
|
+
target_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
588
|
+
user_provisioning_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
589
|
+
user_provisioning_statistics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserProvisioningUserProvisioningStatisticArgs', 'UserProvisioningUserProvisioningStatisticArgsDict']]]]] = None) -> 'UserProvisioning':
|
|
590
|
+
"""
|
|
591
|
+
Get an existing UserProvisioning resource's state with the given name, id, and optional extra
|
|
592
|
+
properties used to qualify the lookup.
|
|
593
|
+
|
|
594
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
595
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
596
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
597
|
+
:param pulumi.Input[_builtins.str] create_time: The creation time of the synchronization
|
|
598
|
+
:param pulumi.Input[_builtins.str] deletion_strategy: The processing policy for users who have been synchronized when deleting synchronization
|
|
599
|
+
:param pulumi.Input[_builtins.str] description: Description of User Synchronization
|
|
600
|
+
:param pulumi.Input[_builtins.str] directory_id: The ID of the directory to which the synchronization belongs
|
|
601
|
+
:param pulumi.Input[_builtins.str] duplication_strategy: Processing Policy for Synchronization Conflicts
|
|
602
|
+
:param pulumi.Input[_builtins.str] principal_id: The ID of the CloudSSO user/group associated with the synchronization.
|
|
603
|
+
:param pulumi.Input[_builtins.str] principal_type: The ID of the CloudSSO user/group associated with the synchronization.
|
|
604
|
+
:param pulumi.Input[_builtins.str] status: The status of the resource
|
|
605
|
+
:param pulumi.Input[_builtins.str] target_id: The ID of the destination associated with the synchronization.
|
|
606
|
+
:param pulumi.Input[_builtins.str] target_type: The target type associated with the synchronization
|
|
607
|
+
:param pulumi.Input[_builtins.str] user_provisioning_id: The first ID of the resource
|
|
608
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['UserProvisioningUserProvisioningStatisticArgs', 'UserProvisioningUserProvisioningStatisticArgsDict']]]] user_provisioning_statistics: User Provisioning statistics
|
|
609
|
+
"""
|
|
610
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
611
|
+
|
|
612
|
+
__props__ = _UserProvisioningState.__new__(_UserProvisioningState)
|
|
613
|
+
|
|
614
|
+
__props__.__dict__["create_time"] = create_time
|
|
615
|
+
__props__.__dict__["deletion_strategy"] = deletion_strategy
|
|
616
|
+
__props__.__dict__["description"] = description
|
|
617
|
+
__props__.__dict__["directory_id"] = directory_id
|
|
618
|
+
__props__.__dict__["duplication_strategy"] = duplication_strategy
|
|
619
|
+
__props__.__dict__["principal_id"] = principal_id
|
|
620
|
+
__props__.__dict__["principal_type"] = principal_type
|
|
621
|
+
__props__.__dict__["status"] = status
|
|
622
|
+
__props__.__dict__["target_id"] = target_id
|
|
623
|
+
__props__.__dict__["target_type"] = target_type
|
|
624
|
+
__props__.__dict__["user_provisioning_id"] = user_provisioning_id
|
|
625
|
+
__props__.__dict__["user_provisioning_statistics"] = user_provisioning_statistics
|
|
626
|
+
return UserProvisioning(resource_name, opts=opts, __props__=__props__)
|
|
627
|
+
|
|
628
|
+
@_builtins.property
|
|
629
|
+
@pulumi.getter(name="createTime")
|
|
630
|
+
def create_time(self) -> pulumi.Output[_builtins.str]:
|
|
631
|
+
"""
|
|
632
|
+
The creation time of the synchronization
|
|
633
|
+
"""
|
|
634
|
+
return pulumi.get(self, "create_time")
|
|
635
|
+
|
|
636
|
+
@_builtins.property
|
|
637
|
+
@pulumi.getter(name="deletionStrategy")
|
|
638
|
+
def deletion_strategy(self) -> pulumi.Output[_builtins.str]:
|
|
639
|
+
"""
|
|
640
|
+
The processing policy for users who have been synchronized when deleting synchronization
|
|
641
|
+
"""
|
|
642
|
+
return pulumi.get(self, "deletion_strategy")
|
|
643
|
+
|
|
644
|
+
@_builtins.property
|
|
645
|
+
@pulumi.getter
|
|
646
|
+
def description(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
647
|
+
"""
|
|
648
|
+
Description of User Synchronization
|
|
649
|
+
"""
|
|
650
|
+
return pulumi.get(self, "description")
|
|
651
|
+
|
|
652
|
+
@_builtins.property
|
|
653
|
+
@pulumi.getter(name="directoryId")
|
|
654
|
+
def directory_id(self) -> pulumi.Output[_builtins.str]:
|
|
655
|
+
"""
|
|
656
|
+
The ID of the directory to which the synchronization belongs
|
|
657
|
+
"""
|
|
658
|
+
return pulumi.get(self, "directory_id")
|
|
659
|
+
|
|
660
|
+
@_builtins.property
|
|
661
|
+
@pulumi.getter(name="duplicationStrategy")
|
|
662
|
+
def duplication_strategy(self) -> pulumi.Output[_builtins.str]:
|
|
663
|
+
"""
|
|
664
|
+
Processing Policy for Synchronization Conflicts
|
|
665
|
+
"""
|
|
666
|
+
return pulumi.get(self, "duplication_strategy")
|
|
667
|
+
|
|
668
|
+
@_builtins.property
|
|
669
|
+
@pulumi.getter(name="principalId")
|
|
670
|
+
def principal_id(self) -> pulumi.Output[_builtins.str]:
|
|
671
|
+
"""
|
|
672
|
+
The ID of the CloudSSO user/group associated with the synchronization.
|
|
673
|
+
"""
|
|
674
|
+
return pulumi.get(self, "principal_id")
|
|
675
|
+
|
|
676
|
+
@_builtins.property
|
|
677
|
+
@pulumi.getter(name="principalType")
|
|
678
|
+
def principal_type(self) -> pulumi.Output[_builtins.str]:
|
|
679
|
+
"""
|
|
680
|
+
The ID of the CloudSSO user/group associated with the synchronization.
|
|
681
|
+
"""
|
|
682
|
+
return pulumi.get(self, "principal_type")
|
|
683
|
+
|
|
684
|
+
@_builtins.property
|
|
685
|
+
@pulumi.getter
|
|
686
|
+
def status(self) -> pulumi.Output[_builtins.str]:
|
|
687
|
+
"""
|
|
688
|
+
The status of the resource
|
|
689
|
+
"""
|
|
690
|
+
return pulumi.get(self, "status")
|
|
691
|
+
|
|
692
|
+
@_builtins.property
|
|
693
|
+
@pulumi.getter(name="targetId")
|
|
694
|
+
def target_id(self) -> pulumi.Output[_builtins.str]:
|
|
695
|
+
"""
|
|
696
|
+
The ID of the destination associated with the synchronization.
|
|
697
|
+
"""
|
|
698
|
+
return pulumi.get(self, "target_id")
|
|
699
|
+
|
|
700
|
+
@_builtins.property
|
|
701
|
+
@pulumi.getter(name="targetType")
|
|
702
|
+
def target_type(self) -> pulumi.Output[_builtins.str]:
|
|
703
|
+
"""
|
|
704
|
+
The target type associated with the synchronization
|
|
705
|
+
"""
|
|
706
|
+
return pulumi.get(self, "target_type")
|
|
707
|
+
|
|
708
|
+
@_builtins.property
|
|
709
|
+
@pulumi.getter(name="userProvisioningId")
|
|
710
|
+
def user_provisioning_id(self) -> pulumi.Output[_builtins.str]:
|
|
711
|
+
"""
|
|
712
|
+
The first ID of the resource
|
|
713
|
+
"""
|
|
714
|
+
return pulumi.get(self, "user_provisioning_id")
|
|
715
|
+
|
|
716
|
+
@_builtins.property
|
|
717
|
+
@pulumi.getter(name="userProvisioningStatistics")
|
|
718
|
+
def user_provisioning_statistics(self) -> pulumi.Output[Sequence['outputs.UserProvisioningUserProvisioningStatistic']]:
|
|
719
|
+
"""
|
|
720
|
+
User Provisioning statistics
|
|
721
|
+
"""
|
|
722
|
+
return pulumi.get(self, "user_provisioning_statistics")
|
|
723
|
+
|