alibabacloud-ecd20201002 1.2.8__py3-none-any.whl → 1.2.10__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. alibabacloud_ecd20201002/__init__.py +1 -1
  2. alibabacloud_ecd20201002/client.py +1981 -2704
  3. alibabacloud_ecd20201002/models/__init__.py +245 -0
  4. alibabacloud_ecd20201002/models/_approve_fota_update_request.py +109 -0
  5. alibabacloud_ecd20201002/models/_approve_fota_update_response.py +54 -0
  6. alibabacloud_ecd20201002/models/_approve_fota_update_response_body.py +34 -0
  7. alibabacloud_ecd20201002/models/_change_password_request.py +111 -0
  8. alibabacloud_ecd20201002/models/_change_password_response.py +54 -0
  9. alibabacloud_ecd20201002/models/_change_password_response_body.py +43 -0
  10. alibabacloud_ecd20201002/models/_delete_finger_print_template_request.py +89 -0
  11. alibabacloud_ecd20201002/models/_delete_finger_print_template_response.py +54 -0
  12. alibabacloud_ecd20201002/models/_delete_finger_print_template_response_body.py +34 -0
  13. alibabacloud_ecd20201002/models/_describe_directories_request.py +58 -0
  14. alibabacloud_ecd20201002/models/_describe_directories_response.py +54 -0
  15. alibabacloud_ecd20201002/models/_describe_directories_response_body.py +126 -0
  16. alibabacloud_ecd20201002/models/_describe_finger_print_templates_request.py +69 -0
  17. alibabacloud_ecd20201002/models/_describe_finger_print_templates_response.py +54 -0
  18. alibabacloud_ecd20201002/models/_describe_finger_print_templates_response_body.py +136 -0
  19. alibabacloud_ecd20201002/models/_describe_global_desktops_request.py +252 -0
  20. alibabacloud_ecd20201002/models/_describe_global_desktops_response.py +54 -0
  21. alibabacloud_ecd20201002/models/_describe_global_desktops_response_body.py +885 -0
  22. alibabacloud_ecd20201002/models/_describe_office_sites_request.py +62 -0
  23. alibabacloud_ecd20201002/models/_describe_office_sites_response.py +54 -0
  24. alibabacloud_ecd20201002/models/_describe_office_sites_response_body.py +138 -0
  25. alibabacloud_ecd20201002/models/_describe_regions_request.py +45 -0
  26. alibabacloud_ecd20201002/models/_describe_regions_response.py +54 -0
  27. alibabacloud_ecd20201002/models/_describe_regions_response_body.py +91 -0
  28. alibabacloud_ecd20201002/models/_describe_snapshots_request.py +103 -0
  29. alibabacloud_ecd20201002/models/_describe_snapshots_response.py +54 -0
  30. alibabacloud_ecd20201002/models/_describe_snapshots_response_body.py +215 -0
  31. alibabacloud_ecd20201002/models/_describe_user_resources_request.py +332 -0
  32. alibabacloud_ecd20201002/models/_describe_user_resources_response.py +54 -0
  33. alibabacloud_ecd20201002/models/_describe_user_resources_response_body.py +1273 -0
  34. alibabacloud_ecd20201002/models/_encrypt_password_request.py +98 -0
  35. alibabacloud_ecd20201002/models/_encrypt_password_response.py +54 -0
  36. alibabacloud_ecd20201002/models/_encrypt_password_response_body.py +43 -0
  37. alibabacloud_ecd20201002/models/_get_cloud_drive_service_mount_token_request.py +65 -0
  38. alibabacloud_ecd20201002/models/_get_cloud_drive_service_mount_token_response.py +54 -0
  39. alibabacloud_ecd20201002/models/_get_cloud_drive_service_mount_token_response_body.py +114 -0
  40. alibabacloud_ecd20201002/models/_get_connection_ticket_request.py +228 -0
  41. alibabacloud_ecd20201002/models/_get_connection_ticket_response.py +54 -0
  42. alibabacloud_ecd20201002/models/_get_connection_ticket_response_body.py +91 -0
  43. alibabacloud_ecd20201002/models/_get_login_token_request.py +235 -0
  44. alibabacloud_ecd20201002/models/_get_login_token_response.py +54 -0
  45. alibabacloud_ecd20201002/models/_get_login_token_response_body.py +306 -0
  46. alibabacloud_ecd20201002/models/_get_login_token_shrink_request.py +233 -0
  47. alibabacloud_ecd20201002/models/_is_keep_alive_request.py +54 -0
  48. alibabacloud_ecd20201002/models/_is_keep_alive_response.py +54 -0
  49. alibabacloud_ecd20201002/models/_is_keep_alive_response_body.py +61 -0
  50. alibabacloud_ecd20201002/models/_oss_upload_credential.py +73 -0
  51. alibabacloud_ecd20201002/models/_query_eds_agent_report_config_request.py +49 -0
  52. alibabacloud_ecd20201002/models/_query_eds_agent_report_config_response.py +54 -0
  53. alibabacloud_ecd20201002/models/_query_eds_agent_report_config_response_body.py +71 -0
  54. alibabacloud_ecd20201002/models/_reboot_desktops_request.py +131 -0
  55. alibabacloud_ecd20201002/models/_reboot_desktops_response.py +54 -0
  56. alibabacloud_ecd20201002/models/_reboot_desktops_response_body.py +34 -0
  57. alibabacloud_ecd20201002/models/_refresh_login_token_request.py +85 -0
  58. alibabacloud_ecd20201002/models/_refresh_login_token_response.py +54 -0
  59. alibabacloud_ecd20201002/models/_refresh_login_token_response_body.py +41 -0
  60. alibabacloud_ecd20201002/models/_report_eds_agent_info_request.py +57 -0
  61. alibabacloud_ecd20201002/models/_report_eds_agent_info_response.py +54 -0
  62. alibabacloud_ecd20201002/models/_report_eds_agent_info_response_body.py +33 -0
  63. alibabacloud_ecd20201002/models/_report_session_status_request.py +78 -0
  64. alibabacloud_ecd20201002/models/_report_session_status_response.py +54 -0
  65. alibabacloud_ecd20201002/models/_report_session_status_response_body.py +33 -0
  66. alibabacloud_ecd20201002/models/_reset_password_request.py +96 -0
  67. alibabacloud_ecd20201002/models/_reset_password_response.py +54 -0
  68. alibabacloud_ecd20201002/models/_reset_password_response_body.py +34 -0
  69. alibabacloud_ecd20201002/models/_reset_snapshot_request.py +96 -0
  70. alibabacloud_ecd20201002/models/_reset_snapshot_response.py +54 -0
  71. alibabacloud_ecd20201002/models/_reset_snapshot_response_body.py +34 -0
  72. alibabacloud_ecd20201002/models/_send_token_code_request.py +99 -0
  73. alibabacloud_ecd20201002/models/_send_token_code_response.py +54 -0
  74. alibabacloud_ecd20201002/models/_send_token_code_response_body.py +34 -0
  75. alibabacloud_ecd20201002/models/_set_finger_print_template_description_request.py +100 -0
  76. alibabacloud_ecd20201002/models/_set_finger_print_template_description_response.py +54 -0
  77. alibabacloud_ecd20201002/models/_set_finger_print_template_description_response_body.py +34 -0
  78. alibabacloud_ecd20201002/models/_set_finger_print_template_request.py +125 -0
  79. alibabacloud_ecd20201002/models/_set_finger_print_template_response.py +54 -0
  80. alibabacloud_ecd20201002/models/_set_finger_print_template_response_body.py +52 -0
  81. alibabacloud_ecd20201002/models/_start_desktops_request.py +116 -0
  82. alibabacloud_ecd20201002/models/_start_desktops_response.py +54 -0
  83. alibabacloud_ecd20201002/models/_start_desktops_response_body.py +34 -0
  84. alibabacloud_ecd20201002/models/_start_record_content_request.py +94 -0
  85. alibabacloud_ecd20201002/models/_start_record_content_response.py +54 -0
  86. alibabacloud_ecd20201002/models/_start_record_content_response_body.py +33 -0
  87. alibabacloud_ecd20201002/models/_stop_desktops_request.py +130 -0
  88. alibabacloud_ecd20201002/models/_stop_desktops_response.py +54 -0
  89. alibabacloud_ecd20201002/models/_stop_desktops_response_body.py +34 -0
  90. alibabacloud_ecd20201002/models/_stop_record_content_request.py +86 -0
  91. alibabacloud_ecd20201002/models/_stop_record_content_response.py +54 -0
  92. alibabacloud_ecd20201002/models/_stop_record_content_response_body.py +33 -0
  93. alibabacloud_ecd20201002/models/_unbind_user_desktop_request.py +103 -0
  94. alibabacloud_ecd20201002/models/_unbind_user_desktop_response.py +54 -0
  95. alibabacloud_ecd20201002/models/_unbind_user_desktop_response_body.py +34 -0
  96. alibabacloud_ecd20201002/models/_verify_credential_request.py +113 -0
  97. alibabacloud_ecd20201002/models/_verify_credential_response.py +54 -0
  98. alibabacloud_ecd20201002/models/_verify_credential_response_body.py +34 -0
  99. {alibabacloud_ecd20201002-1.2.8.dist-info → alibabacloud_ecd20201002-1.2.10.dist-info}/METADATA +7 -7
  100. alibabacloud_ecd20201002-1.2.10.dist-info/RECORD +103 -0
  101. alibabacloud_ecd20201002/models.py +0 -7128
  102. alibabacloud_ecd20201002-1.2.8.dist-info/RECORD +0 -8
  103. {alibabacloud_ecd20201002-1.2.8.dist-info → alibabacloud_ecd20201002-1.2.10.dist-info}/LICENSE +0 -0
  104. {alibabacloud_ecd20201002-1.2.8.dist-info → alibabacloud_ecd20201002-1.2.10.dist-info}/WHEEL +0 -0
  105. {alibabacloud_ecd20201002-1.2.8.dist-info → alibabacloud_ecd20201002-1.2.10.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,306 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict, List
6
+
7
+ from alibabacloud_ecd20201002 import models as main_models
8
+ from darabonba.model import DaraModel
9
+
10
+ class GetLoginTokenResponseBody(DaraModel):
11
+ def __init__(
12
+ self,
13
+ email: str = None,
14
+ end_user_id: str = None,
15
+ industry: str = None,
16
+ keep_alive_token: str = None,
17
+ label: str = None,
18
+ login_token: str = None,
19
+ next_stage: str = None,
20
+ nick_name: str = None,
21
+ password_strategy: main_models.GetLoginTokenResponseBodyPasswordStrategy = None,
22
+ phone: str = None,
23
+ props: Dict[str, str] = None,
24
+ qr_code_png: str = None,
25
+ reason: str = None,
26
+ request_id: str = None,
27
+ risk_verify_info: main_models.GetLoginTokenResponseBodyRiskVerifyInfo = None,
28
+ secret: str = None,
29
+ session_id: str = None,
30
+ tenant_id: int = None,
31
+ window_display_mode: str = None,
32
+ ):
33
+ # The email address of the user. The system returns the email address in the return value of the LoginToken parameter after the user logs on to the client.
34
+ #
35
+ # * For a convenience user, the return value is the email address specified when the administrator creates the convenience user.
36
+ # * For an AD user, the return value is in the following format: `Username@Name of the AD domain`.
37
+ self.email = email
38
+ # The account of the convenience user or the AD user.
39
+ self.end_user_id = end_user_id
40
+ # > This is a parameter only for internal use.
41
+ self.industry = industry
42
+ # The token used to keep the user logged on. After the user logs on to the client and select the Keep Logon option, `KeepAliveToken` is returned when you call the operation. If the user does not select the Keep Logon option, null is returned.
43
+ self.keep_alive_token = keep_alive_token
44
+ # The attribute of the convenience user. For an AD user, null is returned.
45
+ self.label = label
46
+ # The logon token.
47
+ self.login_token = login_token
48
+ # The next stage that is expected to enter. For example, an administrator enables MFA in the EDS console. When an end user enters the password, that is, the end user completes the `ADPassword` stage, this parameter returns `MFAVerify`. This indicates that MFA is required.
49
+ #
50
+ # > For more information about the authentication stages, see the `CurrentStage` parameter.
51
+ self.next_stage = next_stage
52
+ self.nick_name = nick_name
53
+ # > This is a parameter only for internal use.
54
+ self.password_strategy = password_strategy
55
+ # Enter the mobile number of the convenience user. For an AD user, null is returned.
56
+ self.phone = phone
57
+ # > This is a parameter only for internal use.
58
+ self.props = props
59
+ # The QR code that is generated when the virtual MFA device is bound. The value is encoded in Base64. This parameter can be empty. This parameter is required only when the CurrentStage parameter is set to `MFABind`.
60
+ #
61
+ # > For more information about each authentication stage, see the parameter description of the request parameter `CurrentStage`.
62
+ self.qr_code_png = qr_code_png
63
+ # > This is a parameter only for internal use.
64
+ self.reason = reason
65
+ # The ID of the request.
66
+ self.request_id = request_id
67
+ # Risk identification information regarding the signin process.
68
+ self.risk_verify_info = risk_verify_info
69
+ # The key that is generated when you bind the virtual MFA device. This parameter is required when the CurrentStage parameter is set to `MFABind`.
70
+ #
71
+ # > For more information about each authentication stage, see the parameter description of the request parameter `CurrentStage`.
72
+ self.secret = secret
73
+ # The ID of the session. The ID is returned the first time you call the `GetLoginToken` operation in the session. If MFA is required, you must specify this parameter in subsequent stages.
74
+ #
75
+ # > For more information about each authentication stage, see the parameter description of the request parameter `CurrentStage`.
76
+ self.session_id = session_id
77
+ # The ID of the Alibaba Cloud account. The ID is used for hardware client authentication.
78
+ self.tenant_id = tenant_id
79
+ # > This is a parameter only for internal use.
80
+ self.window_display_mode = window_display_mode
81
+
82
+ def validate(self):
83
+ if self.password_strategy:
84
+ self.password_strategy.validate()
85
+ if self.risk_verify_info:
86
+ self.risk_verify_info.validate()
87
+
88
+ def to_map(self):
89
+ result = dict()
90
+ _map = super().to_map()
91
+ if _map is not None:
92
+ result = _map
93
+ if self.email is not None:
94
+ result['Email'] = self.email
95
+
96
+ if self.end_user_id is not None:
97
+ result['EndUserId'] = self.end_user_id
98
+
99
+ if self.industry is not None:
100
+ result['Industry'] = self.industry
101
+
102
+ if self.keep_alive_token is not None:
103
+ result['KeepAliveToken'] = self.keep_alive_token
104
+
105
+ if self.label is not None:
106
+ result['Label'] = self.label
107
+
108
+ if self.login_token is not None:
109
+ result['LoginToken'] = self.login_token
110
+
111
+ if self.next_stage is not None:
112
+ result['NextStage'] = self.next_stage
113
+
114
+ if self.nick_name is not None:
115
+ result['NickName'] = self.nick_name
116
+
117
+ if self.password_strategy is not None:
118
+ result['PasswordStrategy'] = self.password_strategy.to_map()
119
+
120
+ if self.phone is not None:
121
+ result['Phone'] = self.phone
122
+
123
+ if self.props is not None:
124
+ result['Props'] = self.props
125
+
126
+ if self.qr_code_png is not None:
127
+ result['QrCodePng'] = self.qr_code_png
128
+
129
+ if self.reason is not None:
130
+ result['Reason'] = self.reason
131
+
132
+ if self.request_id is not None:
133
+ result['RequestId'] = self.request_id
134
+
135
+ if self.risk_verify_info is not None:
136
+ result['RiskVerifyInfo'] = self.risk_verify_info.to_map()
137
+
138
+ if self.secret is not None:
139
+ result['Secret'] = self.secret
140
+
141
+ if self.session_id is not None:
142
+ result['SessionId'] = self.session_id
143
+
144
+ if self.tenant_id is not None:
145
+ result['TenantId'] = self.tenant_id
146
+
147
+ if self.window_display_mode is not None:
148
+ result['WindowDisplayMode'] = self.window_display_mode
149
+
150
+ return result
151
+
152
+ def from_map(self, m: dict = None):
153
+ m = m or dict()
154
+ if m.get('Email') is not None:
155
+ self.email = m.get('Email')
156
+
157
+ if m.get('EndUserId') is not None:
158
+ self.end_user_id = m.get('EndUserId')
159
+
160
+ if m.get('Industry') is not None:
161
+ self.industry = m.get('Industry')
162
+
163
+ if m.get('KeepAliveToken') is not None:
164
+ self.keep_alive_token = m.get('KeepAliveToken')
165
+
166
+ if m.get('Label') is not None:
167
+ self.label = m.get('Label')
168
+
169
+ if m.get('LoginToken') is not None:
170
+ self.login_token = m.get('LoginToken')
171
+
172
+ if m.get('NextStage') is not None:
173
+ self.next_stage = m.get('NextStage')
174
+
175
+ if m.get('NickName') is not None:
176
+ self.nick_name = m.get('NickName')
177
+
178
+ if m.get('PasswordStrategy') is not None:
179
+ temp_model = main_models.GetLoginTokenResponseBodyPasswordStrategy()
180
+ self.password_strategy = temp_model.from_map(m.get('PasswordStrategy'))
181
+
182
+ if m.get('Phone') is not None:
183
+ self.phone = m.get('Phone')
184
+
185
+ if m.get('Props') is not None:
186
+ self.props = m.get('Props')
187
+
188
+ if m.get('QrCodePng') is not None:
189
+ self.qr_code_png = m.get('QrCodePng')
190
+
191
+ if m.get('Reason') is not None:
192
+ self.reason = m.get('Reason')
193
+
194
+ if m.get('RequestId') is not None:
195
+ self.request_id = m.get('RequestId')
196
+
197
+ if m.get('RiskVerifyInfo') is not None:
198
+ temp_model = main_models.GetLoginTokenResponseBodyRiskVerifyInfo()
199
+ self.risk_verify_info = temp_model.from_map(m.get('RiskVerifyInfo'))
200
+
201
+ if m.get('Secret') is not None:
202
+ self.secret = m.get('Secret')
203
+
204
+ if m.get('SessionId') is not None:
205
+ self.session_id = m.get('SessionId')
206
+
207
+ if m.get('TenantId') is not None:
208
+ self.tenant_id = m.get('TenantId')
209
+
210
+ if m.get('WindowDisplayMode') is not None:
211
+ self.window_display_mode = m.get('WindowDisplayMode')
212
+
213
+ return self
214
+
215
+ class GetLoginTokenResponseBodyRiskVerifyInfo(DaraModel):
216
+ def __init__(
217
+ self,
218
+ email: str = None,
219
+ last_lock_duration: int = None,
220
+ locked: str = None,
221
+ phone: str = None,
222
+ ):
223
+ # The email used for authentication.
224
+ self.email = email
225
+ # The duration of the lock.
226
+ self.last_lock_duration = last_lock_duration
227
+ # Whether the account is locked or not.
228
+ self.locked = locked
229
+ # The mobile number used for authentication.
230
+ self.phone = phone
231
+
232
+ def validate(self):
233
+ pass
234
+
235
+ def to_map(self):
236
+ result = dict()
237
+ _map = super().to_map()
238
+ if _map is not None:
239
+ result = _map
240
+ if self.email is not None:
241
+ result['Email'] = self.email
242
+
243
+ if self.last_lock_duration is not None:
244
+ result['LastLockDuration'] = self.last_lock_duration
245
+
246
+ if self.locked is not None:
247
+ result['Locked'] = self.locked
248
+
249
+ if self.phone is not None:
250
+ result['Phone'] = self.phone
251
+
252
+ return result
253
+
254
+ def from_map(self, m: dict = None):
255
+ m = m or dict()
256
+ if m.get('Email') is not None:
257
+ self.email = m.get('Email')
258
+
259
+ if m.get('LastLockDuration') is not None:
260
+ self.last_lock_duration = m.get('LastLockDuration')
261
+
262
+ if m.get('Locked') is not None:
263
+ self.locked = m.get('Locked')
264
+
265
+ if m.get('Phone') is not None:
266
+ self.phone = m.get('Phone')
267
+
268
+ return self
269
+
270
+ class GetLoginTokenResponseBodyPasswordStrategy(DaraModel):
271
+ def __init__(
272
+ self,
273
+ tenant_alternative_chars: List[str] = None,
274
+ tenant_password_length: str = None,
275
+ ):
276
+ # > This is a parameter only for internal use.
277
+ self.tenant_alternative_chars = tenant_alternative_chars
278
+ # > This is a parameter only for internal use.
279
+ self.tenant_password_length = tenant_password_length
280
+
281
+ def validate(self):
282
+ pass
283
+
284
+ def to_map(self):
285
+ result = dict()
286
+ _map = super().to_map()
287
+ if _map is not None:
288
+ result = _map
289
+ if self.tenant_alternative_chars is not None:
290
+ result['TenantAlternativeChars'] = self.tenant_alternative_chars
291
+
292
+ if self.tenant_password_length is not None:
293
+ result['TenantPasswordLength'] = self.tenant_password_length
294
+
295
+ return result
296
+
297
+ def from_map(self, m: dict = None):
298
+ m = m or dict()
299
+ if m.get('TenantAlternativeChars') is not None:
300
+ self.tenant_alternative_chars = m.get('TenantAlternativeChars')
301
+
302
+ if m.get('TenantPasswordLength') is not None:
303
+ self.tenant_password_length = m.get('TenantPasswordLength')
304
+
305
+ return self
306
+
@@ -0,0 +1,233 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from darabonba.model import DaraModel
6
+
7
+ class GetLoginTokenShrinkRequest(DaraModel):
8
+ def __init__(
9
+ self,
10
+ authentication_code: str = None,
11
+ available_features_shrink: str = None,
12
+ client_id: str = None,
13
+ client_name: str = None,
14
+ client_os: str = None,
15
+ client_type: str = None,
16
+ client_version: str = None,
17
+ current_stage: str = None,
18
+ directory_id: str = None,
19
+ end_user_id: str = None,
20
+ keep_alive: bool = None,
21
+ keep_alive_token: str = None,
22
+ new_password: str = None,
23
+ office_site_id: str = None,
24
+ old_password: str = None,
25
+ password: str = None,
26
+ region_id: str = None,
27
+ session_id: str = None,
28
+ token_code: str = None,
29
+ uuid: str = None,
30
+ ):
31
+ # The verification code that is generated by the virtual MFA device. This parameter is required if you set `CurrentStage` to `MFAVerify`.
32
+ self.authentication_code = authentication_code
33
+ self.available_features_shrink = available_features_shrink
34
+ # The ID of the Alibaba Cloud Workspace client. The system generates a unique ID for each client.
35
+ #
36
+ # This parameter is required.
37
+ self.client_id = client_id
38
+ self.client_name = client_name
39
+ # The operating system (OS) of the device that runs an Alibaba Cloud Workspace client.
40
+ self.client_os = client_os
41
+ # The type of Alibaba Cloud Workspace clients.
42
+ #
43
+ # Valid values:
44
+ #
45
+ # * HTML5: web client.
46
+ #
47
+ # * WINDOWS: Windows client.
48
+ #
49
+ # * MACOS: macOS client.
50
+ #
51
+ # * IOS: iOS client.
52
+ #
53
+ # * ANDROID: Android client.
54
+ self.client_type = client_type
55
+ # The version of the client. When you use an Alibaba Cloud Workspace client, you can view the client version in the **About** dialog box on the client logon page.
56
+ self.client_version = client_version
57
+ # The logon authentication stage. Valid values:
58
+ #
59
+ # * `ADPassword`: the stage to verify the identity of the Active Directory (AD) user. You must specify the value when the system verifies the identity of a convenience account or an AD account.
60
+ # * `MFABind: the stage to bind a virtual multi-factor authentication (MFA) device.`
61
+ # * `MFAVerify: the stage to verify the verification code that is generated by the virtual MFA device.`
62
+ # * `TokenVerify`: the stage to perform two-factor authentication on an Alibaba Cloud Workspace client (hereinafter referred to as the client).
63
+ # * `ChangePassword`: the stage to change the password of the user.
64
+ # * `KeepAliveVerify`: the stage to obtain LoginToken if KeepAliveToken is valid.
65
+ self.current_stage = current_stage
66
+ # The office network ID. This parameter has the same meaning as `OfficeSiteId`. We recommend that you replace `DirectoryId` with `OfficeSiteId`. You can specify a value for `DirectoryId` or `OfficeSiteId`.
67
+ self.directory_id = directory_id
68
+ # The name of the convenience user or the AD user. This parameter is required if you set `CurrentStage` to `ADPassword`.
69
+ self.end_user_id = end_user_id
70
+ # Specifies whether to keep the user logged on to the client.
71
+ # Valid values:
72
+ # * null: Default value. Do not keep the user logged on to the client.
73
+ # * true: Keep the user logged on to the client.
74
+ # * false: Do not keep the user logged on to the client.
75
+ self.keep_alive = keep_alive
76
+ # The token to keep logging on to an Alibaba Cloud Workspace client. When an end user logs on to the Alibaba Cloud Workspace client and select Auto Sign-in, `KeepAliveToken` is returned after you call this operation. Within the valid period of the returned token``, you can call the `GetLoginToken` operation and set `CurrentStage` to `KeepAliveVerify`. Then, you can obtain LoginToken. If you set `CurrentStage` to `KeepAliveVerify`, `KeepAliveToken` is required.
77
+ self.keep_alive_token = keep_alive_token
78
+ # The new password. This parameter is required if you set `CurrentStage` to `ChangePassword`.
79
+ self.new_password = new_password
80
+ # The office network ID.
81
+ self.office_site_id = office_site_id
82
+ # The current password. This parameter is required if you set `CurrentStage` to `ChangePassword`.
83
+ self.old_password = old_password
84
+ # The password of the convenience user or the AD user. This parameter is required if you set `CurrentStage` to `ADPassword`.
85
+ self.password = password
86
+ # The region ID. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/196646.html) operation to query the regions supported by EDS.
87
+ #
88
+ # This parameter is required.
89
+ self.region_id = region_id
90
+ # The ID of the session.
91
+ #
92
+ # * If the virtual multi-factor authentication (MFA) device is not bound or two-factor authentication is not enabled for the client, you do not need to specify a value for `SessionId`.
93
+ # * If the virtual MFA device is not bound or two-factor authentication is enabled for the client, you must specify a value for `SessionId` to verify the user identity after you specify a value for `ADPassword`. The value of the `SessionId` parameter is returned only if the CurrentStage parameter is set to `ADPassword` when you call the `GetLoginToken` operation.
94
+ self.session_id = session_id
95
+ # If two-factor authentication is enabled for Alibaba Cloud Workspace terminals in the EDS console and the system detects that the current logon user is exposed to risks, the system sends a verification code to the email address of the user. This parameter is required if you set `CurrentStage` to `TokenVerify`.
96
+ self.token_code = token_code
97
+ # The unique identifier of the client. When you use an Alibaba Cloud Workspace client, you can view the client version in the **About** dialog box on the client logon page.
98
+ self.uuid = uuid
99
+
100
+ def validate(self):
101
+ pass
102
+
103
+ def to_map(self):
104
+ result = dict()
105
+ _map = super().to_map()
106
+ if _map is not None:
107
+ result = _map
108
+ if self.authentication_code is not None:
109
+ result['AuthenticationCode'] = self.authentication_code
110
+
111
+ if self.available_features_shrink is not None:
112
+ result['AvailableFeatures'] = self.available_features_shrink
113
+
114
+ if self.client_id is not None:
115
+ result['ClientId'] = self.client_id
116
+
117
+ if self.client_name is not None:
118
+ result['ClientName'] = self.client_name
119
+
120
+ if self.client_os is not None:
121
+ result['ClientOS'] = self.client_os
122
+
123
+ if self.client_type is not None:
124
+ result['ClientType'] = self.client_type
125
+
126
+ if self.client_version is not None:
127
+ result['ClientVersion'] = self.client_version
128
+
129
+ if self.current_stage is not None:
130
+ result['CurrentStage'] = self.current_stage
131
+
132
+ if self.directory_id is not None:
133
+ result['DirectoryId'] = self.directory_id
134
+
135
+ if self.end_user_id is not None:
136
+ result['EndUserId'] = self.end_user_id
137
+
138
+ if self.keep_alive is not None:
139
+ result['KeepAlive'] = self.keep_alive
140
+
141
+ if self.keep_alive_token is not None:
142
+ result['KeepAliveToken'] = self.keep_alive_token
143
+
144
+ if self.new_password is not None:
145
+ result['NewPassword'] = self.new_password
146
+
147
+ if self.office_site_id is not None:
148
+ result['OfficeSiteId'] = self.office_site_id
149
+
150
+ if self.old_password is not None:
151
+ result['OldPassword'] = self.old_password
152
+
153
+ if self.password is not None:
154
+ result['Password'] = self.password
155
+
156
+ if self.region_id is not None:
157
+ result['RegionId'] = self.region_id
158
+
159
+ if self.session_id is not None:
160
+ result['SessionId'] = self.session_id
161
+
162
+ if self.token_code is not None:
163
+ result['TokenCode'] = self.token_code
164
+
165
+ if self.uuid is not None:
166
+ result['Uuid'] = self.uuid
167
+
168
+ return result
169
+
170
+ def from_map(self, m: dict = None):
171
+ m = m or dict()
172
+ if m.get('AuthenticationCode') is not None:
173
+ self.authentication_code = m.get('AuthenticationCode')
174
+
175
+ if m.get('AvailableFeatures') is not None:
176
+ self.available_features_shrink = m.get('AvailableFeatures')
177
+
178
+ if m.get('ClientId') is not None:
179
+ self.client_id = m.get('ClientId')
180
+
181
+ if m.get('ClientName') is not None:
182
+ self.client_name = m.get('ClientName')
183
+
184
+ if m.get('ClientOS') is not None:
185
+ self.client_os = m.get('ClientOS')
186
+
187
+ if m.get('ClientType') is not None:
188
+ self.client_type = m.get('ClientType')
189
+
190
+ if m.get('ClientVersion') is not None:
191
+ self.client_version = m.get('ClientVersion')
192
+
193
+ if m.get('CurrentStage') is not None:
194
+ self.current_stage = m.get('CurrentStage')
195
+
196
+ if m.get('DirectoryId') is not None:
197
+ self.directory_id = m.get('DirectoryId')
198
+
199
+ if m.get('EndUserId') is not None:
200
+ self.end_user_id = m.get('EndUserId')
201
+
202
+ if m.get('KeepAlive') is not None:
203
+ self.keep_alive = m.get('KeepAlive')
204
+
205
+ if m.get('KeepAliveToken') is not None:
206
+ self.keep_alive_token = m.get('KeepAliveToken')
207
+
208
+ if m.get('NewPassword') is not None:
209
+ self.new_password = m.get('NewPassword')
210
+
211
+ if m.get('OfficeSiteId') is not None:
212
+ self.office_site_id = m.get('OfficeSiteId')
213
+
214
+ if m.get('OldPassword') is not None:
215
+ self.old_password = m.get('OldPassword')
216
+
217
+ if m.get('Password') is not None:
218
+ self.password = m.get('Password')
219
+
220
+ if m.get('RegionId') is not None:
221
+ self.region_id = m.get('RegionId')
222
+
223
+ if m.get('SessionId') is not None:
224
+ self.session_id = m.get('SessionId')
225
+
226
+ if m.get('TokenCode') is not None:
227
+ self.token_code = m.get('TokenCode')
228
+
229
+ if m.get('Uuid') is not None:
230
+ self.uuid = m.get('Uuid')
231
+
232
+ return self
233
+
@@ -0,0 +1,54 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from darabonba.model import DaraModel
6
+
7
+ class IsKeepAliveRequest(DaraModel):
8
+ def __init__(
9
+ self,
10
+ client_id: str = None,
11
+ office_site_id: str = None,
12
+ region_id: str = None,
13
+ ):
14
+ # The client ID. The system generates a unique ID for each client.
15
+ #
16
+ # This parameter is required.
17
+ self.client_id = client_id
18
+ # The office network ID.
19
+ self.office_site_id = office_site_id
20
+ # The region ID. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/196646.html) operation to query the list of regions where Elastic Desktop Service (EDS) Enterprise is available.
21
+ self.region_id = region_id
22
+
23
+ def validate(self):
24
+ pass
25
+
26
+ def to_map(self):
27
+ result = dict()
28
+ _map = super().to_map()
29
+ if _map is not None:
30
+ result = _map
31
+ if self.client_id is not None:
32
+ result['ClientId'] = self.client_id
33
+
34
+ if self.office_site_id is not None:
35
+ result['OfficeSiteId'] = self.office_site_id
36
+
37
+ if self.region_id is not None:
38
+ result['RegionId'] = self.region_id
39
+
40
+ return result
41
+
42
+ def from_map(self, m: dict = None):
43
+ m = m or dict()
44
+ if m.get('ClientId') is not None:
45
+ self.client_id = m.get('ClientId')
46
+
47
+ if m.get('OfficeSiteId') is not None:
48
+ self.office_site_id = m.get('OfficeSiteId')
49
+
50
+ if m.get('RegionId') is not None:
51
+ self.region_id = m.get('RegionId')
52
+
53
+ return self
54
+
@@ -0,0 +1,54 @@
1
+ # -*- coding: utf-8 -*-
2
+ # This file is auto-generated, don't edit it. Thanks.
3
+ from __future__ import annotations
4
+
5
+ from typing import Dict
6
+
7
+ from alibabacloud_ecd20201002 import models as main_models
8
+ from darabonba.model import DaraModel
9
+
10
+ class IsKeepAliveResponse(DaraModel):
11
+ def __init__(
12
+ self,
13
+ headers: Dict[str, str] = None,
14
+ status_code: int = None,
15
+ body: main_models.IsKeepAliveResponseBody = None,
16
+ ):
17
+ self.headers = headers
18
+ self.status_code = status_code
19
+ self.body = body
20
+
21
+ def validate(self):
22
+ if self.body:
23
+ self.body.validate()
24
+
25
+ def to_map(self):
26
+ result = dict()
27
+ _map = super().to_map()
28
+ if _map is not None:
29
+ result = _map
30
+ if self.headers is not None:
31
+ result['headers'] = self.headers
32
+
33
+ if self.status_code is not None:
34
+ result['statusCode'] = self.status_code
35
+
36
+ if self.body is not None:
37
+ result['body'] = self.body.to_map()
38
+
39
+ return result
40
+
41
+ def from_map(self, m: dict = None):
42
+ m = m or dict()
43
+ if m.get('headers') is not None:
44
+ self.headers = m.get('headers')
45
+
46
+ if m.get('statusCode') is not None:
47
+ self.status_code = m.get('statusCode')
48
+
49
+ if m.get('body') is not None:
50
+ temp_model = main_models.IsKeepAliveResponseBody()
51
+ self.body = temp_model.from_map(m.get('body'))
52
+
53
+ return self
54
+