aws-sdk-directoryservicedata 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1743 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::DirectoryServiceData
11
+ module Types
12
+
13
+ # You don't have permission to perform the request or access the
14
+ # directory. It can also occur when the `DirectoryId` doesn't exist or
15
+ # the user, member, or group might be outside of your organizational
16
+ # unit (OU).
17
+ #
18
+ # Make sure that you have the authentication and authorization to
19
+ # perform the action. Review the directory information in the request,
20
+ # and make sure that the object isn't outside of your OU.
21
+ #
22
+ # @!attribute [rw] message
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] reason
26
+ # Reason the request was unauthorized.
27
+ # @return [String]
28
+ #
29
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/AccessDeniedException AWS API Documentation
30
+ #
31
+ class AccessDeniedException < Struct.new(
32
+ :message,
33
+ :reason)
34
+ SENSITIVE = []
35
+ include Aws::Structure
36
+ end
37
+
38
+ # @!attribute [rw] client_token
39
+ # A unique and case-sensitive identifier that you provide to make sure
40
+ # the idempotency of the request, so multiple identical calls have the
41
+ # same effect as one single call.
42
+ #
43
+ # A client token is valid for 8 hours after the first request that
44
+ # uses it completes. After 8 hours, any request with the same client
45
+ # token is treated as a new request. If the request succeeds, any
46
+ # future uses of that token will be idempotent for another 8 hours.
47
+ #
48
+ # If you submit a request with the same client token but change one of
49
+ # the other parameters within the 8-hour idempotency window, Directory
50
+ # Service Data returns an `ConflictException`.
51
+ #
52
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
53
+ #
54
+ # </note>
55
+ #
56
+ # **A suitable default value is auto-generated.** You should normally
57
+ # not need to pass this option.
58
+ # @return [String]
59
+ #
60
+ # @!attribute [rw] directory_id
61
+ # The identifier (ID) of the directory that's associated with the
62
+ # group.
63
+ # @return [String]
64
+ #
65
+ # @!attribute [rw] group_name
66
+ # The name of the group.
67
+ # @return [String]
68
+ #
69
+ # @!attribute [rw] member_name
70
+ # The `SAMAccountName` of the user, group, or computer to add as a
71
+ # group member.
72
+ # @return [String]
73
+ #
74
+ # @!attribute [rw] member_realm
75
+ # The domain name that's associated with the group member. This
76
+ # parameter is required only when adding a member outside of your
77
+ # Managed Microsoft AD domain to a group inside of your Managed
78
+ # Microsoft AD domain. This parameter defaults to the Managed
79
+ # Microsoft AD domain.
80
+ #
81
+ # <note markdown="1"> This parameter is case insensitive.
82
+ #
83
+ # </note>
84
+ # @return [String]
85
+ #
86
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/AddGroupMemberRequest AWS API Documentation
87
+ #
88
+ class AddGroupMemberRequest < Struct.new(
89
+ :client_token,
90
+ :directory_id,
91
+ :group_name,
92
+ :member_name,
93
+ :member_realm)
94
+ SENSITIVE = []
95
+ include Aws::Structure
96
+ end
97
+
98
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/AddGroupMemberResult AWS API Documentation
99
+ #
100
+ class AddGroupMemberResult < Aws::EmptyStructure; end
101
+
102
+ # The data type for an attribute. Each attribute value is described as a
103
+ # name-value pair. The name is the AD schema name, and the value is the
104
+ # data itself. For a list of supported attributes, see [Directory
105
+ # Service Data Attributes][1].
106
+ #
107
+ #
108
+ #
109
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
110
+ #
111
+ # @note AttributeValue is a union - when making an API calls you must set exactly one of the members.
112
+ #
113
+ # @note AttributeValue is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of AttributeValue corresponding to the set member.
114
+ #
115
+ # @!attribute [rw] bool
116
+ # Indicates that the attribute type value is a boolean. For example:
117
+ #
118
+ # `"BOOL": true`
119
+ # @return [Boolean]
120
+ #
121
+ # @!attribute [rw] n
122
+ # Indicates that the attribute type value is a number. For example:
123
+ #
124
+ # `"N": "16"`
125
+ # @return [Integer]
126
+ #
127
+ # @!attribute [rw] s
128
+ # Indicates that the attribute type value is a string. For example:
129
+ #
130
+ # `"S": "S Group"`
131
+ # @return [String]
132
+ #
133
+ # @!attribute [rw] ss
134
+ # Indicates that the attribute type value is a string set. For
135
+ # example:
136
+ #
137
+ # `"SS":
138
+ # ["sample_service_class/host.sample.com:1234/sample_service_name_1",
139
+ # "sample_service_class/host.sample.com:1234/sample_service_name_2"]`
140
+ # @return [Array<String>]
141
+ #
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/AttributeValue AWS API Documentation
143
+ #
144
+ class AttributeValue < Struct.new(
145
+ :bool,
146
+ :n,
147
+ :s,
148
+ :ss,
149
+ :unknown)
150
+ SENSITIVE = [:bool, :n, :s, :ss]
151
+ include Aws::Structure
152
+ include Aws::Structure::Union
153
+
154
+ class Bool < AttributeValue; end
155
+ class N < AttributeValue; end
156
+ class S < AttributeValue; end
157
+ class Ss < AttributeValue; end
158
+ class Unknown < AttributeValue; end
159
+ end
160
+
161
+ # This error will occur when you try to create a resource that conflicts
162
+ # with an existing object. It can also occur when adding a member to a
163
+ # group that the member is already in.
164
+ #
165
+ # This error can be caused by a request sent within the 8-hour
166
+ # idempotency window with the same client token but different input
167
+ # parameters. Client tokens should not be re-used across different
168
+ # requests. After 8 hours, any request with the same client token is
169
+ # treated as a new request.
170
+ #
171
+ # @!attribute [rw] message
172
+ # @return [String]
173
+ #
174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ConflictException AWS API Documentation
175
+ #
176
+ class ConflictException < Struct.new(
177
+ :message)
178
+ SENSITIVE = []
179
+ include Aws::Structure
180
+ end
181
+
182
+ # @!attribute [rw] client_token
183
+ # A unique and case-sensitive identifier that you provide to make sure
184
+ # the idempotency of the request, so multiple identical calls have the
185
+ # same effect as one single call.
186
+ #
187
+ # A client token is valid for 8 hours after the first request that
188
+ # uses it completes. After 8 hours, any request with the same client
189
+ # token is treated as a new request. If the request succeeds, any
190
+ # future uses of that token will be idempotent for another 8 hours.
191
+ #
192
+ # If you submit a request with the same client token but change one of
193
+ # the other parameters within the 8-hour idempotency window, Directory
194
+ # Service Data returns an `ConflictException`.
195
+ #
196
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
197
+ #
198
+ # </note>
199
+ #
200
+ # **A suitable default value is auto-generated.** You should normally
201
+ # not need to pass this option.
202
+ # @return [String]
203
+ #
204
+ # @!attribute [rw] directory_id
205
+ # The identifier (ID) of the directory that's associated with the
206
+ # group.
207
+ # @return [String]
208
+ #
209
+ # @!attribute [rw] group_scope
210
+ # The scope of the AD group. For details, see [Active Directory
211
+ # security group scope][1].
212
+ #
213
+ #
214
+ #
215
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#group-scope
216
+ # @return [String]
217
+ #
218
+ # @!attribute [rw] group_type
219
+ # The AD group type. For details, see [Active Directory security group
220
+ # type][1].
221
+ #
222
+ #
223
+ #
224
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#how-active-directory-security-groups-work
225
+ # @return [String]
226
+ #
227
+ # @!attribute [rw] other_attributes
228
+ # An expression that defines one or more attributes with the data type
229
+ # and value of each attribute.
230
+ # @return [Hash<String,Types::AttributeValue>]
231
+ #
232
+ # @!attribute [rw] sam_account_name
233
+ # The name of the group.
234
+ # @return [String]
235
+ #
236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/CreateGroupRequest AWS API Documentation
237
+ #
238
+ class CreateGroupRequest < Struct.new(
239
+ :client_token,
240
+ :directory_id,
241
+ :group_scope,
242
+ :group_type,
243
+ :other_attributes,
244
+ :sam_account_name)
245
+ SENSITIVE = []
246
+ include Aws::Structure
247
+ end
248
+
249
+ # @!attribute [rw] directory_id
250
+ # The identifier (ID) of the directory that's associated with the
251
+ # group.
252
+ # @return [String]
253
+ #
254
+ # @!attribute [rw] sam_account_name
255
+ # The name of the group.
256
+ # @return [String]
257
+ #
258
+ # @!attribute [rw] sid
259
+ # The unique security identifier (SID) of the group.
260
+ # @return [String]
261
+ #
262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/CreateGroupResult AWS API Documentation
263
+ #
264
+ class CreateGroupResult < Struct.new(
265
+ :directory_id,
266
+ :sam_account_name,
267
+ :sid)
268
+ SENSITIVE = []
269
+ include Aws::Structure
270
+ end
271
+
272
+ # @!attribute [rw] client_token
273
+ # A unique and case-sensitive identifier that you provide to make sure
274
+ # the idempotency of the request, so multiple identical calls have the
275
+ # same effect as one single call.
276
+ #
277
+ # A client token is valid for 8 hours after the first request that
278
+ # uses it completes. After 8 hours, any request with the same client
279
+ # token is treated as a new request. If the request succeeds, any
280
+ # future uses of that token will be idempotent for another 8 hours.
281
+ #
282
+ # If you submit a request with the same client token but change one of
283
+ # the other parameters within the 8-hour idempotency window, Directory
284
+ # Service Data returns an `ConflictException`.
285
+ #
286
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
287
+ #
288
+ # </note>
289
+ #
290
+ # **A suitable default value is auto-generated.** You should normally
291
+ # not need to pass this option.
292
+ # @return [String]
293
+ #
294
+ # @!attribute [rw] directory_id
295
+ # The identifier (ID) of the directory that’s associated with the
296
+ # user.
297
+ # @return [String]
298
+ #
299
+ # @!attribute [rw] email_address
300
+ # The email address of the user.
301
+ # @return [String]
302
+ #
303
+ # @!attribute [rw] given_name
304
+ # The first name of the user.
305
+ # @return [String]
306
+ #
307
+ # @!attribute [rw] other_attributes
308
+ # An expression that defines one or more attribute names with the data
309
+ # type and value of each attribute. A key is an attribute name, and
310
+ # the value is a list of maps. For a list of supported attributes, see
311
+ # [Directory Service Data Attributes][1].
312
+ #
313
+ # <note markdown="1"> Attribute names are case insensitive.
314
+ #
315
+ # </note>
316
+ #
317
+ #
318
+ #
319
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
320
+ # @return [Hash<String,Types::AttributeValue>]
321
+ #
322
+ # @!attribute [rw] sam_account_name
323
+ # The name of the user.
324
+ # @return [String]
325
+ #
326
+ # @!attribute [rw] surname
327
+ # The last name of the user.
328
+ # @return [String]
329
+ #
330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/CreateUserRequest AWS API Documentation
331
+ #
332
+ class CreateUserRequest < Struct.new(
333
+ :client_token,
334
+ :directory_id,
335
+ :email_address,
336
+ :given_name,
337
+ :other_attributes,
338
+ :sam_account_name,
339
+ :surname)
340
+ SENSITIVE = [:email_address, :given_name, :surname]
341
+ include Aws::Structure
342
+ end
343
+
344
+ # @!attribute [rw] directory_id
345
+ # The identifier (ID) of the directory where the address block is
346
+ # added.
347
+ # @return [String]
348
+ #
349
+ # @!attribute [rw] sam_account_name
350
+ # The name of the user.
351
+ # @return [String]
352
+ #
353
+ # @!attribute [rw] sid
354
+ # The unique security identifier (SID) of the user.
355
+ # @return [String]
356
+ #
357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/CreateUserResult AWS API Documentation
358
+ #
359
+ class CreateUserResult < Struct.new(
360
+ :directory_id,
361
+ :sam_account_name,
362
+ :sid)
363
+ SENSITIVE = []
364
+ include Aws::Structure
365
+ end
366
+
367
+ # @!attribute [rw] client_token
368
+ # A unique and case-sensitive identifier that you provide to make sure
369
+ # the idempotency of the request, so multiple identical calls have the
370
+ # same effect as one single call.
371
+ #
372
+ # A client token is valid for 8 hours after the first request that
373
+ # uses it completes. After 8 hours, any request with the same client
374
+ # token is treated as a new request. If the request succeeds, any
375
+ # future uses of that token will be idempotent for another 8 hours.
376
+ #
377
+ # If you submit a request with the same client token but change one of
378
+ # the other parameters within the 8-hour idempotency window, Directory
379
+ # Service Data returns an `ConflictException`.
380
+ #
381
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
382
+ #
383
+ # </note>
384
+ #
385
+ # **A suitable default value is auto-generated.** You should normally
386
+ # not need to pass this option.
387
+ # @return [String]
388
+ #
389
+ # @!attribute [rw] directory_id
390
+ # The identifier (ID) of the directory that's associated with the
391
+ # group.
392
+ # @return [String]
393
+ #
394
+ # @!attribute [rw] sam_account_name
395
+ # The name of the group.
396
+ # @return [String]
397
+ #
398
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DeleteGroupRequest AWS API Documentation
399
+ #
400
+ class DeleteGroupRequest < Struct.new(
401
+ :client_token,
402
+ :directory_id,
403
+ :sam_account_name)
404
+ SENSITIVE = []
405
+ include Aws::Structure
406
+ end
407
+
408
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DeleteGroupResult AWS API Documentation
409
+ #
410
+ class DeleteGroupResult < Aws::EmptyStructure; end
411
+
412
+ # @!attribute [rw] client_token
413
+ # A unique and case-sensitive identifier that you provide to make sure
414
+ # the idempotency of the request, so multiple identical calls have the
415
+ # same effect as one single call.
416
+ #
417
+ # A client token is valid for 8 hours after the first request that
418
+ # uses it completes. After 8 hours, any request with the same client
419
+ # token is treated as a new request. If the request succeeds, any
420
+ # future uses of that token will be idempotent for another 8 hours.
421
+ #
422
+ # If you submit a request with the same client token but change one of
423
+ # the other parameters within the 8-hour idempotency window, Directory
424
+ # Service Data returns an `ConflictException`.
425
+ #
426
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
427
+ #
428
+ # </note>
429
+ #
430
+ # **A suitable default value is auto-generated.** You should normally
431
+ # not need to pass this option.
432
+ # @return [String]
433
+ #
434
+ # @!attribute [rw] directory_id
435
+ # The identifier (ID) of the directory that's associated with the
436
+ # user.
437
+ # @return [String]
438
+ #
439
+ # @!attribute [rw] sam_account_name
440
+ # The name of the user.
441
+ # @return [String]
442
+ #
443
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DeleteUserRequest AWS API Documentation
444
+ #
445
+ class DeleteUserRequest < Struct.new(
446
+ :client_token,
447
+ :directory_id,
448
+ :sam_account_name)
449
+ SENSITIVE = []
450
+ include Aws::Structure
451
+ end
452
+
453
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DeleteUserResult AWS API Documentation
454
+ #
455
+ class DeleteUserResult < Aws::EmptyStructure; end
456
+
457
+ # @!attribute [rw] directory_id
458
+ # The Identifier (ID) of the directory associated with the group.
459
+ # @return [String]
460
+ #
461
+ # @!attribute [rw] other_attributes
462
+ # One or more attributes to be returned for the group. For a list of
463
+ # supported attributes, see [Directory Service Data Attributes][1].
464
+ #
465
+ #
466
+ #
467
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data-attributes.html
468
+ # @return [Array<String>]
469
+ #
470
+ # @!attribute [rw] realm
471
+ # The domain name that's associated with the group.
472
+ #
473
+ # <note markdown="1"> This parameter is optional, so you can return groups outside of your
474
+ # Managed Microsoft AD domain. When no value is defined, only your
475
+ # Managed Microsoft AD groups are returned.
476
+ #
477
+ # This value is case insensitive.
478
+ #
479
+ # </note>
480
+ # @return [String]
481
+ #
482
+ # @!attribute [rw] sam_account_name
483
+ # The name of the group.
484
+ # @return [String]
485
+ #
486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DescribeGroupRequest AWS API Documentation
487
+ #
488
+ class DescribeGroupRequest < Struct.new(
489
+ :directory_id,
490
+ :other_attributes,
491
+ :realm,
492
+ :sam_account_name)
493
+ SENSITIVE = []
494
+ include Aws::Structure
495
+ end
496
+
497
+ # @!attribute [rw] directory_id
498
+ # The identifier (ID) of the directory that's associated with the
499
+ # group.
500
+ # @return [String]
501
+ #
502
+ # @!attribute [rw] distinguished_name
503
+ # The [distinguished name][1] of the object.
504
+ #
505
+ #
506
+ #
507
+ # [1]: https://learn.microsoft.com/en-us/windows/win32/ad/object-names-and-identities#distinguished-name
508
+ # @return [String]
509
+ #
510
+ # @!attribute [rw] group_scope
511
+ # The scope of the AD group. For details, see [Active Directory
512
+ # security groups][1].
513
+ #
514
+ #
515
+ #
516
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#group-scope
517
+ # @return [String]
518
+ #
519
+ # @!attribute [rw] group_type
520
+ # The AD group type. For details, see [Active Directory security group
521
+ # type][1].
522
+ #
523
+ #
524
+ #
525
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#how-active-directory-security-groups-work
526
+ # @return [String]
527
+ #
528
+ # @!attribute [rw] other_attributes
529
+ # The attribute values that are returned for the attribute names that
530
+ # are included in the request.
531
+ # @return [Hash<String,Types::AttributeValue>]
532
+ #
533
+ # @!attribute [rw] realm
534
+ # The domain name that's associated with the group.
535
+ # @return [String]
536
+ #
537
+ # @!attribute [rw] sam_account_name
538
+ # The name of the group.
539
+ # @return [String]
540
+ #
541
+ # @!attribute [rw] sid
542
+ # The unique security identifier (SID) of the group.
543
+ # @return [String]
544
+ #
545
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DescribeGroupResult AWS API Documentation
546
+ #
547
+ class DescribeGroupResult < Struct.new(
548
+ :directory_id,
549
+ :distinguished_name,
550
+ :group_scope,
551
+ :group_type,
552
+ :other_attributes,
553
+ :realm,
554
+ :sam_account_name,
555
+ :sid)
556
+ SENSITIVE = [:distinguished_name]
557
+ include Aws::Structure
558
+ end
559
+
560
+ # @!attribute [rw] directory_id
561
+ # The identifier (ID) of the directory that's associated with the
562
+ # user.
563
+ # @return [String]
564
+ #
565
+ # @!attribute [rw] other_attributes
566
+ # One or more attribute names to be returned for the user. A key is an
567
+ # attribute name, and the value is a list of maps. For a list of
568
+ # supported attributes, see [Directory Service Data Attributes][1].
569
+ #
570
+ #
571
+ #
572
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
573
+ # @return [Array<String>]
574
+ #
575
+ # @!attribute [rw] realm
576
+ # The domain name that's associated with the user.
577
+ #
578
+ # <note markdown="1"> This parameter is optional, so you can return users outside your
579
+ # Managed Microsoft AD domain. When no value is defined, only your
580
+ # Managed Microsoft AD users are returned.
581
+ #
582
+ # This value is case insensitive.
583
+ #
584
+ # </note>
585
+ # @return [String]
586
+ #
587
+ # @!attribute [rw] sam_account_name
588
+ # The name of the user.
589
+ # @return [String]
590
+ #
591
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DescribeUserRequest AWS API Documentation
592
+ #
593
+ class DescribeUserRequest < Struct.new(
594
+ :directory_id,
595
+ :other_attributes,
596
+ :realm,
597
+ :sam_account_name)
598
+ SENSITIVE = []
599
+ include Aws::Structure
600
+ end
601
+
602
+ # @!attribute [rw] directory_id
603
+ # The identifier (ID) of the directory that's associated with the
604
+ # user.
605
+ # @return [String]
606
+ #
607
+ # @!attribute [rw] distinguished_name
608
+ # The [distinguished name][1] of the object.
609
+ #
610
+ #
611
+ #
612
+ # [1]: https://learn.microsoft.com/en-us/windows/win32/ad/object-names-and-identities#distinguished-name
613
+ # @return [String]
614
+ #
615
+ # @!attribute [rw] email_address
616
+ # The email address of the user.
617
+ # @return [String]
618
+ #
619
+ # @!attribute [rw] enabled
620
+ # Indicates whether the user account is active.
621
+ # @return [Boolean]
622
+ #
623
+ # @!attribute [rw] given_name
624
+ # The first name of the user.
625
+ # @return [String]
626
+ #
627
+ # @!attribute [rw] other_attributes
628
+ # The attribute values that are returned for the attribute names that
629
+ # are included in the request.
630
+ #
631
+ # <note markdown="1"> Attribute names are case insensitive.
632
+ #
633
+ # </note>
634
+ # @return [Hash<String,Types::AttributeValue>]
635
+ #
636
+ # @!attribute [rw] realm
637
+ # The domain name that's associated with the user.
638
+ # @return [String]
639
+ #
640
+ # @!attribute [rw] sam_account_name
641
+ # The name of the user.
642
+ # @return [String]
643
+ #
644
+ # @!attribute [rw] sid
645
+ # The unique security identifier (SID) of the user.
646
+ # @return [String]
647
+ #
648
+ # @!attribute [rw] surname
649
+ # The last name of the user.
650
+ # @return [String]
651
+ #
652
+ # @!attribute [rw] user_principal_name
653
+ # The UPN that is an Internet-style login name for a user and is based
654
+ # on the Internet standard [RFC 822][1]. The UPN is shorter than the
655
+ # distinguished name and easier to remember.
656
+ #
657
+ #
658
+ #
659
+ # [1]: https://www.ietf.org/rfc/rfc0822.txt
660
+ # @return [String]
661
+ #
662
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DescribeUserResult AWS API Documentation
663
+ #
664
+ class DescribeUserResult < Struct.new(
665
+ :directory_id,
666
+ :distinguished_name,
667
+ :email_address,
668
+ :enabled,
669
+ :given_name,
670
+ :other_attributes,
671
+ :realm,
672
+ :sam_account_name,
673
+ :sid,
674
+ :surname,
675
+ :user_principal_name)
676
+ SENSITIVE = [:distinguished_name, :email_address, :given_name, :surname, :user_principal_name]
677
+ include Aws::Structure
678
+ end
679
+
680
+ # The request could not be completed due to a problem in the
681
+ # configuration or current state of the specified directory.
682
+ #
683
+ # @!attribute [rw] message
684
+ # @return [String]
685
+ #
686
+ # @!attribute [rw] reason
687
+ # Reason the request failed for the specified directory.
688
+ # @return [String]
689
+ #
690
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DirectoryUnavailableException AWS API Documentation
691
+ #
692
+ class DirectoryUnavailableException < Struct.new(
693
+ :message,
694
+ :reason)
695
+ SENSITIVE = []
696
+ include Aws::Structure
697
+ end
698
+
699
+ # @!attribute [rw] client_token
700
+ # A unique and case-sensitive identifier that you provide to make sure
701
+ # the idempotency of the request, so multiple identical calls have the
702
+ # same effect as one single call.
703
+ #
704
+ # A client token is valid for 8 hours after the first request that
705
+ # uses it completes. After 8 hours, any request with the same client
706
+ # token is treated as a new request. If the request succeeds, any
707
+ # future uses of that token will be idempotent for another 8 hours.
708
+ #
709
+ # If you submit a request with the same client token but change one of
710
+ # the other parameters within the 8-hour idempotency window, Directory
711
+ # Service Data returns an `ConflictException`.
712
+ #
713
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
714
+ #
715
+ # </note>
716
+ #
717
+ # **A suitable default value is auto-generated.** You should normally
718
+ # not need to pass this option.
719
+ # @return [String]
720
+ #
721
+ # @!attribute [rw] directory_id
722
+ # The identifier (ID) of the directory that's associated with the
723
+ # user.
724
+ # @return [String]
725
+ #
726
+ # @!attribute [rw] sam_account_name
727
+ # The name of the user.
728
+ # @return [String]
729
+ #
730
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DisableUserRequest AWS API Documentation
731
+ #
732
+ class DisableUserRequest < Struct.new(
733
+ :client_token,
734
+ :directory_id,
735
+ :sam_account_name)
736
+ SENSITIVE = []
737
+ include Aws::Structure
738
+ end
739
+
740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/DisableUserResult AWS API Documentation
741
+ #
742
+ class DisableUserResult < Aws::EmptyStructure; end
743
+
744
+ # A group object that contains identifying information and attributes
745
+ # for a specified group.
746
+ #
747
+ # @!attribute [rw] distinguished_name
748
+ # The [distinguished name][1] of the object.
749
+ #
750
+ #
751
+ #
752
+ # [1]: https://learn.microsoft.com/en-us/windows/win32/ad/object-names-and-identities#distinguished-name
753
+ # @return [String]
754
+ #
755
+ # @!attribute [rw] group_scope
756
+ # The scope of the AD group. For details, see [Active Directory
757
+ # security groups][1]
758
+ #
759
+ #
760
+ #
761
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#group-scope
762
+ # @return [String]
763
+ #
764
+ # @!attribute [rw] group_type
765
+ # The AD group type. For details, see [Active Directory security group
766
+ # type][1].
767
+ #
768
+ #
769
+ #
770
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#how-active-directory-security-groups-work
771
+ # @return [String]
772
+ #
773
+ # @!attribute [rw] other_attributes
774
+ # An expression of one or more attributes, data types, and the values
775
+ # of a group.
776
+ # @return [Hash<String,Types::AttributeValue>]
777
+ #
778
+ # @!attribute [rw] sam_account_name
779
+ # The name of the group.
780
+ # @return [String]
781
+ #
782
+ # @!attribute [rw] sid
783
+ # The unique security identifier (SID) of the group.
784
+ # @return [String]
785
+ #
786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/Group AWS API Documentation
787
+ #
788
+ class Group < Struct.new(
789
+ :distinguished_name,
790
+ :group_scope,
791
+ :group_type,
792
+ :other_attributes,
793
+ :sam_account_name,
794
+ :sid)
795
+ SENSITIVE = [:distinguished_name]
796
+ include Aws::Structure
797
+ end
798
+
799
+ # A structure containing a subset of fields of a group object from a
800
+ # directory.
801
+ #
802
+ # @!attribute [rw] group_scope
803
+ # The scope of the AD group. For details, see [Active Directory
804
+ # security groups][1].
805
+ #
806
+ #
807
+ #
808
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#group-scope
809
+ # @return [String]
810
+ #
811
+ # @!attribute [rw] group_type
812
+ # The AD group type. For details, see [Active Directory security group
813
+ # type][1].
814
+ #
815
+ #
816
+ #
817
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#how-active-directory-security-groups-work
818
+ # @return [String]
819
+ #
820
+ # @!attribute [rw] sam_account_name
821
+ # The name of the group.
822
+ # @return [String]
823
+ #
824
+ # @!attribute [rw] sid
825
+ # The unique security identifier (SID) of the group.
826
+ # @return [String]
827
+ #
828
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/GroupSummary AWS API Documentation
829
+ #
830
+ class GroupSummary < Struct.new(
831
+ :group_scope,
832
+ :group_type,
833
+ :sam_account_name,
834
+ :sid)
835
+ SENSITIVE = []
836
+ include Aws::Structure
837
+ end
838
+
839
+ # The operation didn't succeed because an internal error occurred. Try
840
+ # again later.
841
+ #
842
+ # @!attribute [rw] message
843
+ # @return [String]
844
+ #
845
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/InternalServerException AWS API Documentation
846
+ #
847
+ class InternalServerException < Struct.new(
848
+ :message)
849
+ SENSITIVE = []
850
+ include Aws::Structure
851
+ end
852
+
853
+ # @!attribute [rw] directory_id
854
+ # The identifier (ID) of the directory that's associated with the
855
+ # group.
856
+ # @return [String]
857
+ #
858
+ # @!attribute [rw] max_results
859
+ # The maximum number of results to be returned per request.
860
+ # @return [Integer]
861
+ #
862
+ # @!attribute [rw] member_realm
863
+ # The domain name that's associated with the group member. This
864
+ # parameter defaults to the Managed Microsoft AD domain.
865
+ #
866
+ # <note markdown="1"> This parameter is optional and case insensitive.
867
+ #
868
+ # </note>
869
+ # @return [String]
870
+ #
871
+ # @!attribute [rw] next_token
872
+ # An encoded paging token for paginated calls that can be passed back
873
+ # to retrieve the next page.
874
+ # @return [String]
875
+ #
876
+ # @!attribute [rw] realm
877
+ # The domain name that's associated with the group.
878
+ #
879
+ # <note markdown="1"> This parameter is optional, so you can return members from a group
880
+ # outside of your Managed Microsoft AD domain. When no value is
881
+ # defined, only members of your Managed Microsoft AD groups are
882
+ # returned.
883
+ #
884
+ # This value is case insensitive.
885
+ #
886
+ # </note>
887
+ # @return [String]
888
+ #
889
+ # @!attribute [rw] sam_account_name
890
+ # The name of the group.
891
+ # @return [String]
892
+ #
893
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListGroupMembersRequest AWS API Documentation
894
+ #
895
+ class ListGroupMembersRequest < Struct.new(
896
+ :directory_id,
897
+ :max_results,
898
+ :member_realm,
899
+ :next_token,
900
+ :realm,
901
+ :sam_account_name)
902
+ SENSITIVE = [:next_token]
903
+ include Aws::Structure
904
+ end
905
+
906
+ # @!attribute [rw] directory_id
907
+ # Identifier (ID) of the directory associated with the group.
908
+ # @return [String]
909
+ #
910
+ # @!attribute [rw] member_realm
911
+ # The domain name that's associated with the member.
912
+ # @return [String]
913
+ #
914
+ # @!attribute [rw] members
915
+ # The member information that the request returns.
916
+ # @return [Array<Types::Member>]
917
+ #
918
+ # @!attribute [rw] next_token
919
+ # An encoded paging token for paginated calls that can be passed back
920
+ # to retrieve the next page.
921
+ # @return [String]
922
+ #
923
+ # @!attribute [rw] realm
924
+ # The domain name that's associated with the group.
925
+ # @return [String]
926
+ #
927
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListGroupMembersResult AWS API Documentation
928
+ #
929
+ class ListGroupMembersResult < Struct.new(
930
+ :directory_id,
931
+ :member_realm,
932
+ :members,
933
+ :next_token,
934
+ :realm)
935
+ SENSITIVE = [:next_token]
936
+ include Aws::Structure
937
+ end
938
+
939
+ # @!attribute [rw] directory_id
940
+ # The identifier (ID) of the directory that's associated with the
941
+ # member.
942
+ # @return [String]
943
+ #
944
+ # @!attribute [rw] max_results
945
+ # The maximum number of results to be returned per request.
946
+ # @return [Integer]
947
+ #
948
+ # @!attribute [rw] member_realm
949
+ # The domain name that's associated with the group member.
950
+ #
951
+ # <note markdown="1"> This parameter is optional, so you can limit your results to the
952
+ # group members in a specific domain.
953
+ #
954
+ # This parameter is case insensitive and defaults to `Realm`
955
+ #
956
+ # </note>
957
+ # @return [String]
958
+ #
959
+ # @!attribute [rw] next_token
960
+ # An encoded paging token for paginated calls that can be passed back
961
+ # to retrieve the next page.
962
+ # @return [String]
963
+ #
964
+ # @!attribute [rw] realm
965
+ # The domain name that's associated with the group.
966
+ #
967
+ # <note markdown="1"> This parameter is optional, so you can return groups outside of your
968
+ # Managed Microsoft AD domain. When no value is defined, only your
969
+ # Managed Microsoft AD groups are returned.
970
+ #
971
+ # This value is case insensitive and defaults to your Managed
972
+ # Microsoft AD domain.
973
+ #
974
+ # </note>
975
+ # @return [String]
976
+ #
977
+ # @!attribute [rw] sam_account_name
978
+ # The `SAMAccountName` of the user, group, or computer that's a
979
+ # member of the group.
980
+ # @return [String]
981
+ #
982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListGroupsForMemberRequest AWS API Documentation
983
+ #
984
+ class ListGroupsForMemberRequest < Struct.new(
985
+ :directory_id,
986
+ :max_results,
987
+ :member_realm,
988
+ :next_token,
989
+ :realm,
990
+ :sam_account_name)
991
+ SENSITIVE = [:next_token]
992
+ include Aws::Structure
993
+ end
994
+
995
+ # @!attribute [rw] directory_id
996
+ # The identifier (ID) of the directory that's associated with the
997
+ # member.
998
+ # @return [String]
999
+ #
1000
+ # @!attribute [rw] groups
1001
+ # The group information that the request returns.
1002
+ # @return [Array<Types::GroupSummary>]
1003
+ #
1004
+ # @!attribute [rw] member_realm
1005
+ # The domain that's associated with the member.
1006
+ # @return [String]
1007
+ #
1008
+ # @!attribute [rw] next_token
1009
+ # An encoded paging token for paginated calls that can be passed back
1010
+ # to retrieve the next page.
1011
+ # @return [String]
1012
+ #
1013
+ # @!attribute [rw] realm
1014
+ # The domain that's associated with the group.
1015
+ # @return [String]
1016
+ #
1017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListGroupsForMemberResult AWS API Documentation
1018
+ #
1019
+ class ListGroupsForMemberResult < Struct.new(
1020
+ :directory_id,
1021
+ :groups,
1022
+ :member_realm,
1023
+ :next_token,
1024
+ :realm)
1025
+ SENSITIVE = [:next_token]
1026
+ include Aws::Structure
1027
+ end
1028
+
1029
+ # @!attribute [rw] directory_id
1030
+ # The identifier (ID) of the directory that's associated with the
1031
+ # group.
1032
+ # @return [String]
1033
+ #
1034
+ # @!attribute [rw] max_results
1035
+ # The maximum number of results to be returned per request.
1036
+ # @return [Integer]
1037
+ #
1038
+ # @!attribute [rw] next_token
1039
+ # An encoded paging token for paginated calls that can be passed back
1040
+ # to retrieve the next page.
1041
+ # @return [String]
1042
+ #
1043
+ # @!attribute [rw] realm
1044
+ # The domain name associated with the directory.
1045
+ #
1046
+ # <note markdown="1"> This parameter is optional, so you can return groups outside of your
1047
+ # Managed Microsoft AD domain. When no value is defined, only your
1048
+ # Managed Microsoft AD groups are returned.
1049
+ #
1050
+ # This value is case insensitive.
1051
+ #
1052
+ # </note>
1053
+ # @return [String]
1054
+ #
1055
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListGroupsRequest AWS API Documentation
1056
+ #
1057
+ class ListGroupsRequest < Struct.new(
1058
+ :directory_id,
1059
+ :max_results,
1060
+ :next_token,
1061
+ :realm)
1062
+ SENSITIVE = [:next_token]
1063
+ include Aws::Structure
1064
+ end
1065
+
1066
+ # @!attribute [rw] directory_id
1067
+ # The identifier (ID) of the directory that's associated with the
1068
+ # group.
1069
+ # @return [String]
1070
+ #
1071
+ # @!attribute [rw] groups
1072
+ # The group information that the request returns.
1073
+ # @return [Array<Types::GroupSummary>]
1074
+ #
1075
+ # @!attribute [rw] next_token
1076
+ # An encoded paging token for paginated calls that can be passed back
1077
+ # to retrieve the next page.
1078
+ # @return [String]
1079
+ #
1080
+ # @!attribute [rw] realm
1081
+ # The domain name associated with the group.
1082
+ # @return [String]
1083
+ #
1084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListGroupsResult AWS API Documentation
1085
+ #
1086
+ class ListGroupsResult < Struct.new(
1087
+ :directory_id,
1088
+ :groups,
1089
+ :next_token,
1090
+ :realm)
1091
+ SENSITIVE = [:next_token]
1092
+ include Aws::Structure
1093
+ end
1094
+
1095
+ # @!attribute [rw] directory_id
1096
+ # The identifier (ID) of the directory that's associated with the
1097
+ # user.
1098
+ # @return [String]
1099
+ #
1100
+ # @!attribute [rw] max_results
1101
+ # The maximum number of results to be returned per request.
1102
+ # @return [Integer]
1103
+ #
1104
+ # @!attribute [rw] next_token
1105
+ # An encoded paging token for paginated calls that can be passed back
1106
+ # to retrieve the next page.
1107
+ # @return [String]
1108
+ #
1109
+ # @!attribute [rw] realm
1110
+ # The domain name that's associated with the user.
1111
+ #
1112
+ # <note markdown="1"> This parameter is optional, so you can return users outside of your
1113
+ # Managed Microsoft AD domain. When no value is defined, only your
1114
+ # Managed Microsoft AD users are returned.
1115
+ #
1116
+ # This value is case insensitive.
1117
+ #
1118
+ # </note>
1119
+ # @return [String]
1120
+ #
1121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListUsersRequest AWS API Documentation
1122
+ #
1123
+ class ListUsersRequest < Struct.new(
1124
+ :directory_id,
1125
+ :max_results,
1126
+ :next_token,
1127
+ :realm)
1128
+ SENSITIVE = [:next_token]
1129
+ include Aws::Structure
1130
+ end
1131
+
1132
+ # @!attribute [rw] directory_id
1133
+ # The identifier (ID) of the directory that's associated with the
1134
+ # user.
1135
+ # @return [String]
1136
+ #
1137
+ # @!attribute [rw] next_token
1138
+ # An encoded paging token for paginated calls that can be passed back
1139
+ # to retrieve the next page.
1140
+ # @return [String]
1141
+ #
1142
+ # @!attribute [rw] realm
1143
+ # The domain that's associated with the user.
1144
+ # @return [String]
1145
+ #
1146
+ # @!attribute [rw] users
1147
+ # The user information that the request returns.
1148
+ # @return [Array<Types::UserSummary>]
1149
+ #
1150
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ListUsersResult AWS API Documentation
1151
+ #
1152
+ class ListUsersResult < Struct.new(
1153
+ :directory_id,
1154
+ :next_token,
1155
+ :realm,
1156
+ :users)
1157
+ SENSITIVE = [:next_token]
1158
+ include Aws::Structure
1159
+ end
1160
+
1161
+ # A member object that contains identifying information for a specified
1162
+ # member.
1163
+ #
1164
+ # @!attribute [rw] member_type
1165
+ # The AD type of the member object.
1166
+ # @return [String]
1167
+ #
1168
+ # @!attribute [rw] sam_account_name
1169
+ # The name of the group member.
1170
+ # @return [String]
1171
+ #
1172
+ # @!attribute [rw] sid
1173
+ # The unique security identifier (SID) of the group member.
1174
+ # @return [String]
1175
+ #
1176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/Member AWS API Documentation
1177
+ #
1178
+ class Member < Struct.new(
1179
+ :member_type,
1180
+ :sam_account_name,
1181
+ :sid)
1182
+ SENSITIVE = []
1183
+ include Aws::Structure
1184
+ end
1185
+
1186
+ # @!attribute [rw] client_token
1187
+ # A unique and case-sensitive identifier that you provide to make sure
1188
+ # the idempotency of the request, so multiple identical calls have the
1189
+ # same effect as one single call.
1190
+ #
1191
+ # A client token is valid for 8 hours after the first request that
1192
+ # uses it completes. After 8 hours, any request with the same client
1193
+ # token is treated as a new request. If the request succeeds, any
1194
+ # future uses of that token will be idempotent for another 8 hours.
1195
+ #
1196
+ # If you submit a request with the same client token but change one of
1197
+ # the other parameters within the 8-hour idempotency window, Directory
1198
+ # Service Data returns an `ConflictException`.
1199
+ #
1200
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
1201
+ #
1202
+ # </note>
1203
+ #
1204
+ # **A suitable default value is auto-generated.** You should normally
1205
+ # not need to pass this option.
1206
+ # @return [String]
1207
+ #
1208
+ # @!attribute [rw] directory_id
1209
+ # The identifier (ID) of the directory that's associated with the
1210
+ # member.
1211
+ # @return [String]
1212
+ #
1213
+ # @!attribute [rw] group_name
1214
+ # The name of the group.
1215
+ # @return [String]
1216
+ #
1217
+ # @!attribute [rw] member_name
1218
+ # The `SAMAccountName` of the user, group, or computer to remove from
1219
+ # the group.
1220
+ # @return [String]
1221
+ #
1222
+ # @!attribute [rw] member_realm
1223
+ # The domain name that's associated with the group member. This
1224
+ # parameter defaults to the Managed Microsoft AD domain.
1225
+ #
1226
+ # <note markdown="1"> This parameter is optional and case insensitive.
1227
+ #
1228
+ # </note>
1229
+ # @return [String]
1230
+ #
1231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/RemoveGroupMemberRequest AWS API Documentation
1232
+ #
1233
+ class RemoveGroupMemberRequest < Struct.new(
1234
+ :client_token,
1235
+ :directory_id,
1236
+ :group_name,
1237
+ :member_name,
1238
+ :member_realm)
1239
+ SENSITIVE = []
1240
+ include Aws::Structure
1241
+ end
1242
+
1243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/RemoveGroupMemberResult AWS API Documentation
1244
+ #
1245
+ class RemoveGroupMemberResult < Aws::EmptyStructure; end
1246
+
1247
+ # The resource couldn't be found.
1248
+ #
1249
+ # @!attribute [rw] message
1250
+ # @return [String]
1251
+ #
1252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ResourceNotFoundException AWS API Documentation
1253
+ #
1254
+ class ResourceNotFoundException < Struct.new(
1255
+ :message)
1256
+ SENSITIVE = []
1257
+ include Aws::Structure
1258
+ end
1259
+
1260
+ # @!attribute [rw] directory_id
1261
+ # The identifier (ID) of the directory that's associated with the
1262
+ # group.
1263
+ # @return [String]
1264
+ #
1265
+ # @!attribute [rw] max_results
1266
+ # The maximum number of results to be returned per request.
1267
+ # @return [Integer]
1268
+ #
1269
+ # @!attribute [rw] next_token
1270
+ # An encoded paging token for paginated calls that can be passed back
1271
+ # to retrieve the next page.
1272
+ # @return [String]
1273
+ #
1274
+ # @!attribute [rw] realm
1275
+ # The domain name that's associated with the group.
1276
+ #
1277
+ # <note markdown="1"> This parameter is optional, so you can return groups outside of your
1278
+ # Managed Microsoft AD domain. When no value is defined, only your
1279
+ # Managed Microsoft AD groups are returned.
1280
+ #
1281
+ # This value is case insensitive.
1282
+ #
1283
+ # </note>
1284
+ # @return [String]
1285
+ #
1286
+ # @!attribute [rw] search_attributes
1287
+ # One or more data attributes that are used to search for a group. For
1288
+ # a list of supported attributes, see [Directory Service Data
1289
+ # Attributes][1].
1290
+ #
1291
+ #
1292
+ #
1293
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
1294
+ # @return [Array<String>]
1295
+ #
1296
+ # @!attribute [rw] search_string
1297
+ # The attribute value that you want to search for.
1298
+ #
1299
+ # <note markdown="1"> Wildcard `(*)` searches aren't supported. For a list of supported
1300
+ # attributes, see [Directory Service Data Attributes][1].
1301
+ #
1302
+ # </note>
1303
+ #
1304
+ #
1305
+ #
1306
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
1307
+ # @return [String]
1308
+ #
1309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/SearchGroupsRequest AWS API Documentation
1310
+ #
1311
+ class SearchGroupsRequest < Struct.new(
1312
+ :directory_id,
1313
+ :max_results,
1314
+ :next_token,
1315
+ :realm,
1316
+ :search_attributes,
1317
+ :search_string)
1318
+ SENSITIVE = [:next_token, :search_string]
1319
+ include Aws::Structure
1320
+ end
1321
+
1322
+ # @!attribute [rw] directory_id
1323
+ # The identifier (ID) of the directory that's associated with the
1324
+ # group.
1325
+ # @return [String]
1326
+ #
1327
+ # @!attribute [rw] groups
1328
+ # The group information that the request returns.
1329
+ # @return [Array<Types::Group>]
1330
+ #
1331
+ # @!attribute [rw] next_token
1332
+ # An encoded paging token for paginated calls that can be passed back
1333
+ # to retrieve the next page.
1334
+ # @return [String]
1335
+ #
1336
+ # @!attribute [rw] realm
1337
+ # The domain that's associated with the group.
1338
+ # @return [String]
1339
+ #
1340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/SearchGroupsResult AWS API Documentation
1341
+ #
1342
+ class SearchGroupsResult < Struct.new(
1343
+ :directory_id,
1344
+ :groups,
1345
+ :next_token,
1346
+ :realm)
1347
+ SENSITIVE = [:next_token]
1348
+ include Aws::Structure
1349
+ end
1350
+
1351
+ # @!attribute [rw] directory_id
1352
+ # The identifier (ID) of the directory that's associated with the
1353
+ # user.
1354
+ # @return [String]
1355
+ #
1356
+ # @!attribute [rw] max_results
1357
+ # The maximum number of results to be returned per request.
1358
+ # @return [Integer]
1359
+ #
1360
+ # @!attribute [rw] next_token
1361
+ # An encoded paging token for paginated calls that can be passed back
1362
+ # to retrieve the next page.
1363
+ # @return [String]
1364
+ #
1365
+ # @!attribute [rw] realm
1366
+ # The domain name that's associated with the user.
1367
+ #
1368
+ # <note markdown="1"> This parameter is optional, so you can return users outside of your
1369
+ # Managed Microsoft AD domain. When no value is defined, only your
1370
+ # Managed Microsoft AD users are returned.
1371
+ #
1372
+ # This value is case insensitive.
1373
+ #
1374
+ # </note>
1375
+ # @return [String]
1376
+ #
1377
+ # @!attribute [rw] search_attributes
1378
+ # One or more data attributes that are used to search for a user. For
1379
+ # a list of supported attributes, see [Directory Service Data
1380
+ # Attributes][1].
1381
+ #
1382
+ #
1383
+ #
1384
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
1385
+ # @return [Array<String>]
1386
+ #
1387
+ # @!attribute [rw] search_string
1388
+ # The attribute value that you want to search for.
1389
+ #
1390
+ # <note markdown="1"> Wildcard `(*)` searches aren't supported. For a list of supported
1391
+ # attributes, see [Directory Service Data Attributes][1].
1392
+ #
1393
+ # </note>
1394
+ #
1395
+ #
1396
+ #
1397
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data_attributes.html
1398
+ # @return [String]
1399
+ #
1400
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/SearchUsersRequest AWS API Documentation
1401
+ #
1402
+ class SearchUsersRequest < Struct.new(
1403
+ :directory_id,
1404
+ :max_results,
1405
+ :next_token,
1406
+ :realm,
1407
+ :search_attributes,
1408
+ :search_string)
1409
+ SENSITIVE = [:next_token, :search_string]
1410
+ include Aws::Structure
1411
+ end
1412
+
1413
+ # @!attribute [rw] directory_id
1414
+ # The identifier (ID) of the directory where the address block is
1415
+ # added.
1416
+ # @return [String]
1417
+ #
1418
+ # @!attribute [rw] next_token
1419
+ # An encoded paging token for paginated calls that can be passed back
1420
+ # to retrieve the next page.
1421
+ # @return [String]
1422
+ #
1423
+ # @!attribute [rw] realm
1424
+ # The domain that's associated with the user.
1425
+ # @return [String]
1426
+ #
1427
+ # @!attribute [rw] users
1428
+ # The user information that the request returns.
1429
+ # @return [Array<Types::User>]
1430
+ #
1431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/SearchUsersResult AWS API Documentation
1432
+ #
1433
+ class SearchUsersResult < Struct.new(
1434
+ :directory_id,
1435
+ :next_token,
1436
+ :realm,
1437
+ :users)
1438
+ SENSITIVE = [:next_token]
1439
+ include Aws::Structure
1440
+ end
1441
+
1442
+ # The limit on the number of requests per second has been exceeded.
1443
+ #
1444
+ # @!attribute [rw] message
1445
+ # @return [String]
1446
+ #
1447
+ # @!attribute [rw] retry_after_seconds
1448
+ # The recommended amount of seconds to retry after a throttling
1449
+ # exception.
1450
+ # @return [Integer]
1451
+ #
1452
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ThrottlingException AWS API Documentation
1453
+ #
1454
+ class ThrottlingException < Struct.new(
1455
+ :message,
1456
+ :retry_after_seconds)
1457
+ SENSITIVE = []
1458
+ include Aws::Structure
1459
+ end
1460
+
1461
+ # @!attribute [rw] client_token
1462
+ # A unique and case-sensitive identifier that you provide to make sure
1463
+ # the idempotency of the request, so multiple identical calls have the
1464
+ # same effect as one single call.
1465
+ #
1466
+ # A client token is valid for 8 hours after the first request that
1467
+ # uses it completes. After 8 hours, any request with the same client
1468
+ # token is treated as a new request. If the request succeeds, any
1469
+ # future uses of that token will be idempotent for another 8 hours.
1470
+ #
1471
+ # If you submit a request with the same client token but change one of
1472
+ # the other parameters within the 8-hour idempotency window, Directory
1473
+ # Service Data returns an `ConflictException`.
1474
+ #
1475
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
1476
+ #
1477
+ # </note>
1478
+ #
1479
+ # **A suitable default value is auto-generated.** You should normally
1480
+ # not need to pass this option.
1481
+ # @return [String]
1482
+ #
1483
+ # @!attribute [rw] directory_id
1484
+ # The identifier (ID) of the directory that's associated with the
1485
+ # group.
1486
+ # @return [String]
1487
+ #
1488
+ # @!attribute [rw] group_scope
1489
+ # The scope of the AD group. For details, see [Active Directory
1490
+ # security groups][1].
1491
+ #
1492
+ #
1493
+ #
1494
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#group-scope
1495
+ # @return [String]
1496
+ #
1497
+ # @!attribute [rw] group_type
1498
+ # The AD group type. For details, see [Active Directory security group
1499
+ # type][1].
1500
+ #
1501
+ #
1502
+ #
1503
+ # [1]: https://learn.microsoft.com/en-us/windows-server/identity/ad-ds/manage/understand-security-groups#how-active-directory-security-groups-work
1504
+ # @return [String]
1505
+ #
1506
+ # @!attribute [rw] other_attributes
1507
+ # An expression that defines one or more attributes with the data type
1508
+ # and the value of each attribute.
1509
+ # @return [Hash<String,Types::AttributeValue>]
1510
+ #
1511
+ # @!attribute [rw] sam_account_name
1512
+ # The name of the group.
1513
+ # @return [String]
1514
+ #
1515
+ # @!attribute [rw] update_type
1516
+ # The type of update to be performed. If no value exists for the
1517
+ # attribute, use `ADD`. Otherwise, use `REPLACE` to change an
1518
+ # attribute value or `REMOVE` to clear the attribute value.
1519
+ # @return [String]
1520
+ #
1521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/UpdateGroupRequest AWS API Documentation
1522
+ #
1523
+ class UpdateGroupRequest < Struct.new(
1524
+ :client_token,
1525
+ :directory_id,
1526
+ :group_scope,
1527
+ :group_type,
1528
+ :other_attributes,
1529
+ :sam_account_name,
1530
+ :update_type)
1531
+ SENSITIVE = []
1532
+ include Aws::Structure
1533
+ end
1534
+
1535
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/UpdateGroupResult AWS API Documentation
1536
+ #
1537
+ class UpdateGroupResult < Aws::EmptyStructure; end
1538
+
1539
+ # @!attribute [rw] client_token
1540
+ # A unique and case-sensitive identifier that you provide to make sure
1541
+ # the idempotency of the request, so multiple identical calls have the
1542
+ # same effect as one single call.
1543
+ #
1544
+ # A client token is valid for 8 hours after the first request that
1545
+ # uses it completes. After 8 hours, any request with the same client
1546
+ # token is treated as a new request. If the request succeeds, any
1547
+ # future uses of that token will be idempotent for another 8 hours.
1548
+ #
1549
+ # If you submit a request with the same client token but change one of
1550
+ # the other parameters within the 8-hour idempotency window, Directory
1551
+ # Service Data returns an `ConflictException`.
1552
+ #
1553
+ # <note markdown="1"> This parameter is optional when using the CLI or SDK.
1554
+ #
1555
+ # </note>
1556
+ #
1557
+ # **A suitable default value is auto-generated.** You should normally
1558
+ # not need to pass this option.
1559
+ # @return [String]
1560
+ #
1561
+ # @!attribute [rw] directory_id
1562
+ # The identifier (ID) of the directory that's associated with the
1563
+ # user.
1564
+ # @return [String]
1565
+ #
1566
+ # @!attribute [rw] email_address
1567
+ # The email address of the user.
1568
+ # @return [String]
1569
+ #
1570
+ # @!attribute [rw] given_name
1571
+ # The first name of the user.
1572
+ # @return [String]
1573
+ #
1574
+ # @!attribute [rw] other_attributes
1575
+ # An expression that defines one or more attribute names with the data
1576
+ # type and value of each attribute. A key is an attribute name, and
1577
+ # the value is a list of maps. For a list of supported attributes, see
1578
+ # [Directory Service Data Attributes][1].
1579
+ #
1580
+ # <note markdown="1"> Attribute names are case insensitive.
1581
+ #
1582
+ # </note>
1583
+ #
1584
+ #
1585
+ #
1586
+ # [1]: https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ad_data-attributes.html
1587
+ # @return [Hash<String,Types::AttributeValue>]
1588
+ #
1589
+ # @!attribute [rw] sam_account_name
1590
+ # The name of the user.
1591
+ # @return [String]
1592
+ #
1593
+ # @!attribute [rw] surname
1594
+ # The last name of the user.
1595
+ # @return [String]
1596
+ #
1597
+ # @!attribute [rw] update_type
1598
+ # The type of update to be performed. If no value exists for the
1599
+ # attribute, use `ADD`. Otherwise, use `REPLACE` to change an
1600
+ # attribute value or `REMOVE` to clear the attribute value.
1601
+ # @return [String]
1602
+ #
1603
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/UpdateUserRequest AWS API Documentation
1604
+ #
1605
+ class UpdateUserRequest < Struct.new(
1606
+ :client_token,
1607
+ :directory_id,
1608
+ :email_address,
1609
+ :given_name,
1610
+ :other_attributes,
1611
+ :sam_account_name,
1612
+ :surname,
1613
+ :update_type)
1614
+ SENSITIVE = [:email_address, :given_name, :surname]
1615
+ include Aws::Structure
1616
+ end
1617
+
1618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/UpdateUserResult AWS API Documentation
1619
+ #
1620
+ class UpdateUserResult < Aws::EmptyStructure; end
1621
+
1622
+ # A user object that contains identifying information and attributes for
1623
+ # a specified user.
1624
+ #
1625
+ # @!attribute [rw] distinguished_name
1626
+ # The [distinguished name][1] of the object.
1627
+ #
1628
+ #
1629
+ #
1630
+ # [1]: https://learn.microsoft.com/en-us/windows/win32/ad/object-names-and-identities#distinguished-name
1631
+ # @return [String]
1632
+ #
1633
+ # @!attribute [rw] email_address
1634
+ # The email address of the user.
1635
+ # @return [String]
1636
+ #
1637
+ # @!attribute [rw] enabled
1638
+ # Indicates whether the user account is active.
1639
+ # @return [Boolean]
1640
+ #
1641
+ # @!attribute [rw] given_name
1642
+ # The first name of the user.
1643
+ # @return [String]
1644
+ #
1645
+ # @!attribute [rw] other_attributes
1646
+ # An expression that includes one or more attributes, data types, and
1647
+ # values of a user.
1648
+ # @return [Hash<String,Types::AttributeValue>]
1649
+ #
1650
+ # @!attribute [rw] sam_account_name
1651
+ # The name of the user.
1652
+ # @return [String]
1653
+ #
1654
+ # @!attribute [rw] sid
1655
+ # The unique security identifier (SID) of the user.
1656
+ # @return [String]
1657
+ #
1658
+ # @!attribute [rw] surname
1659
+ # The last name of the user.
1660
+ # @return [String]
1661
+ #
1662
+ # @!attribute [rw] user_principal_name
1663
+ # The UPN that is an internet-style login name for a user and based on
1664
+ # the internet standard [RFC 822][1]. The UPN is shorter than the
1665
+ # distinguished name and easier to remember.
1666
+ #
1667
+ #
1668
+ #
1669
+ # [1]: https://www.ietf.org/rfc/rfc0822.txt
1670
+ # @return [String]
1671
+ #
1672
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/User AWS API Documentation
1673
+ #
1674
+ class User < Struct.new(
1675
+ :distinguished_name,
1676
+ :email_address,
1677
+ :enabled,
1678
+ :given_name,
1679
+ :other_attributes,
1680
+ :sam_account_name,
1681
+ :sid,
1682
+ :surname,
1683
+ :user_principal_name)
1684
+ SENSITIVE = [:distinguished_name, :email_address, :given_name, :surname, :user_principal_name]
1685
+ include Aws::Structure
1686
+ end
1687
+
1688
+ # A structure containing a subset of the fields of a user object from a
1689
+ # directory.
1690
+ #
1691
+ # @!attribute [rw] enabled
1692
+ # Indicates whether the user account is active.
1693
+ # @return [Boolean]
1694
+ #
1695
+ # @!attribute [rw] given_name
1696
+ # The first name of the user.
1697
+ # @return [String]
1698
+ #
1699
+ # @!attribute [rw] sam_account_name
1700
+ # The name of the user.
1701
+ # @return [String]
1702
+ #
1703
+ # @!attribute [rw] sid
1704
+ # The unique security identifier (SID) of the user.
1705
+ # @return [String]
1706
+ #
1707
+ # @!attribute [rw] surname
1708
+ # The last name of the user.
1709
+ # @return [String]
1710
+ #
1711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/UserSummary AWS API Documentation
1712
+ #
1713
+ class UserSummary < Struct.new(
1714
+ :enabled,
1715
+ :given_name,
1716
+ :sam_account_name,
1717
+ :sid,
1718
+ :surname)
1719
+ SENSITIVE = [:given_name, :surname]
1720
+ include Aws::Structure
1721
+ end
1722
+
1723
+ # The request isn't valid. Review the details in the error message to
1724
+ # update the invalid parameters or values in your request.
1725
+ #
1726
+ # @!attribute [rw] message
1727
+ # @return [String]
1728
+ #
1729
+ # @!attribute [rw] reason
1730
+ # Reason the request failed validation.
1731
+ # @return [String]
1732
+ #
1733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/directory-service-data-2023-05-31/ValidationException AWS API Documentation
1734
+ #
1735
+ class ValidationException < Struct.new(
1736
+ :message,
1737
+ :reason)
1738
+ SENSITIVE = []
1739
+ include Aws::Structure
1740
+ end
1741
+
1742
+ end
1743
+ end