@aws-sdk/client-directory-service 3.856.0 → 3.858.0

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 (54) hide show
  1. package/README.md +63 -7
  2. package/dist-cjs/index.js +489 -7
  3. package/dist-es/DirectoryService.js +14 -0
  4. package/dist-es/commands/CreateHybridADCommand.js +22 -0
  5. package/dist-es/commands/DeleteADAssessmentCommand.js +22 -0
  6. package/dist-es/commands/DescribeADAssessmentCommand.js +22 -0
  7. package/dist-es/commands/DescribeHybridADUpdateCommand.js +22 -0
  8. package/dist-es/commands/ListADAssessmentsCommand.js +22 -0
  9. package/dist-es/commands/StartADAssessmentCommand.js +22 -0
  10. package/dist-es/commands/UpdateHybridADCommand.js +22 -0
  11. package/dist-es/commands/index.js +7 -0
  12. package/dist-es/index.js +1 -0
  13. package/dist-es/models/models_0.js +25 -5
  14. package/dist-es/pagination/ListADAssessmentsPaginator.js +4 -0
  15. package/dist-es/pagination/index.js +1 -0
  16. package/dist-es/protocols/Aws_json1_1.js +263 -1
  17. package/dist-es/waiters/index.js +1 -0
  18. package/dist-es/waiters/waitForHybridADUpdated.js +54 -0
  19. package/dist-types/DirectoryService.d.ts +51 -0
  20. package/dist-types/DirectoryServiceClient.d.ts +9 -2
  21. package/dist-types/commands/CreateHybridADCommand.d.ts +115 -0
  22. package/dist-types/commands/DeleteADAssessmentCommand.d.ts +91 -0
  23. package/dist-types/commands/DescribeADAssessmentCommand.d.ts +129 -0
  24. package/dist-types/commands/DescribeDirectoriesCommand.d.ts +8 -0
  25. package/dist-types/commands/DescribeHybridADUpdateCommand.d.ts +148 -0
  26. package/dist-types/commands/ListADAssessmentsCommand.d.ts +105 -0
  27. package/dist-types/commands/StartADAssessmentCommand.d.ts +132 -0
  28. package/dist-types/commands/UpdateHybridADCommand.d.ts +122 -0
  29. package/dist-types/commands/index.d.ts +7 -0
  30. package/dist-types/index.d.ts +1 -0
  31. package/dist-types/models/models_0.d.ts +689 -16
  32. package/dist-types/pagination/ListADAssessmentsPaginator.d.ts +7 -0
  33. package/dist-types/pagination/index.d.ts +1 -0
  34. package/dist-types/protocols/Aws_json1_1.d.ts +63 -0
  35. package/dist-types/ts3.4/DirectoryService.d.ts +121 -0
  36. package/dist-types/ts3.4/DirectoryServiceClient.d.ts +42 -0
  37. package/dist-types/ts3.4/commands/CreateHybridADCommand.d.ts +50 -0
  38. package/dist-types/ts3.4/commands/DeleteADAssessmentCommand.d.ts +51 -0
  39. package/dist-types/ts3.4/commands/DescribeADAssessmentCommand.d.ts +51 -0
  40. package/dist-types/ts3.4/commands/DescribeHybridADUpdateCommand.d.ts +51 -0
  41. package/dist-types/ts3.4/commands/ListADAssessmentsCommand.d.ts +51 -0
  42. package/dist-types/ts3.4/commands/StartADAssessmentCommand.d.ts +51 -0
  43. package/dist-types/ts3.4/commands/UpdateHybridADCommand.d.ts +50 -0
  44. package/dist-types/ts3.4/commands/index.d.ts +7 -0
  45. package/dist-types/ts3.4/index.d.ts +1 -0
  46. package/dist-types/ts3.4/models/models_0.d.ts +158 -6
  47. package/dist-types/ts3.4/pagination/ListADAssessmentsPaginator.d.ts +11 -0
  48. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  49. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +84 -0
  50. package/dist-types/ts3.4/waiters/index.d.ts +1 -0
  51. package/dist-types/ts3.4/waiters/waitForHybridADUpdated.d.ts +11 -0
  52. package/dist-types/waiters/index.d.ts +1 -0
  53. package/dist-types/waiters/waitForHybridADUpdated.d.ts +14 -0
  54. package/package.json +12 -11
@@ -243,6 +243,36 @@ export declare class AccessDeniedException extends __BaseException {
243
243
  */
244
244
  constructor(opts: __ExceptionOptionType<AccessDeniedException, __BaseException>);
245
245
  }
246
+ /**
247
+ * <p>A directory assessment is automatically created when you create a hybrid directory.
248
+ * There are two types of assessments: <code>CUSTOMER</code> and <code>SYSTEM</code>. Your
249
+ * Amazon Web Services account has a limit of 100 <code>CUSTOMER</code> directory assessments.</p>
250
+ * <p>If you attempt to create a hybrid directory; and you already have 100
251
+ * <code>CUSTOMER</code> directory assessments;, you will encounter an error. Delete
252
+ * assessments to free up capacity before trying again.</p>
253
+ * <p>You can request an increase to your <code>CUSTOMER</code> directory assessment quota
254
+ * by contacting customer support or delete existing CUSTOMER directory assessments; to
255
+ * free up capacity.</p>
256
+ * @public
257
+ */
258
+ export declare class ADAssessmentLimitExceededException extends __BaseException {
259
+ readonly name: "ADAssessmentLimitExceededException";
260
+ readonly $fault: "client";
261
+ /**
262
+ * <p>The descriptive message for the exception.</p>
263
+ * @public
264
+ */
265
+ Message?: string | undefined;
266
+ /**
267
+ * <p>The Amazon Web Services request identifier.</p>
268
+ * @public
269
+ */
270
+ RequestId?: string | undefined;
271
+ /**
272
+ * @internal
273
+ */
274
+ constructor(opts: __ExceptionOptionType<ADAssessmentLimitExceededException, __BaseException>);
275
+ }
246
276
  /**
247
277
  * <p>IP address block. This is often the address block of the DNS server used for your
248
278
  * self-managed domain. </p>
@@ -423,7 +453,7 @@ export declare class IpRouteLimitExceededException extends __BaseException {
423
453
  constructor(opts: __ExceptionOptionType<IpRouteLimitExceededException, __BaseException>);
424
454
  }
425
455
  /**
426
- * <p>Contains VPC information for the <a>CreateDirectory</a> or <a>CreateMicrosoftAD</a> operation.</p>
456
+ * <p>Contains VPC information for the <a>CreateDirectory</a>, <a>CreateMicrosoftAD</a>, or <a>CreateHybridAD</a> operation.</p>
427
457
  * @public
428
458
  */
429
459
  export interface DirectoryVpcSettings {
@@ -456,7 +486,7 @@ export interface AddRegionRequest {
456
486
  */
457
487
  RegionName: string | undefined;
458
488
  /**
459
- * <p>Contains VPC information for the <a>CreateDirectory</a> or <a>CreateMicrosoftAD</a> operation.</p>
489
+ * <p>Contains VPC information for the <a>CreateDirectory</a>, <a>CreateMicrosoftAD</a>, or <a>CreateHybridAD</a> operation.</p>
460
490
  * @public
461
491
  */
462
492
  VPCSettings: DirectoryVpcSettings | undefined;
@@ -619,6 +649,247 @@ export declare class TagLimitExceededException extends __BaseException {
619
649
  */
620
650
  constructor(opts: __ExceptionOptionType<TagLimitExceededException, __BaseException>);
621
651
  }
652
+ /**
653
+ * <p>Contains detailed information about a directory assessment, including configuration
654
+ * parameters, status, and validation results.</p>
655
+ * @public
656
+ */
657
+ export interface Assessment {
658
+ /**
659
+ * <p>The unique identifier of the directory assessment.</p>
660
+ * @public
661
+ */
662
+ AssessmentId?: string | undefined;
663
+ /**
664
+ * <p>The identifier of the directory associated with this assessment.</p>
665
+ * @public
666
+ */
667
+ DirectoryId?: string | undefined;
668
+ /**
669
+ * <p>The fully qualified domain name (FQDN) of the Active Directory domain being
670
+ * assessed.</p>
671
+ * @public
672
+ */
673
+ DnsName?: string | undefined;
674
+ /**
675
+ * <p>The date and time when the assessment was initiated.</p>
676
+ * @public
677
+ */
678
+ StartTime?: Date | undefined;
679
+ /**
680
+ * <p>The date and time when the assessment status was last updated.</p>
681
+ * @public
682
+ */
683
+ LastUpdateDateTime?: Date | undefined;
684
+ /**
685
+ * <p>The current status of the assessment. Valid values include <code>SUCCESS</code>,
686
+ * <code>FAILED</code>, <code>PENDING</code>, and <code>IN_PROGRESS</code>.</p>
687
+ * @public
688
+ */
689
+ Status?: string | undefined;
690
+ /**
691
+ * <p>A detailed status code providing additional information about the assessment
692
+ * state.</p>
693
+ * @public
694
+ */
695
+ StatusCode?: string | undefined;
696
+ /**
697
+ * <p>A human-readable description of the current assessment status, including any error
698
+ * details or progress information.</p>
699
+ * @public
700
+ */
701
+ StatusReason?: string | undefined;
702
+ /**
703
+ * <p>The IP addresses of the DNS servers or domain controllers in your self-managed AD
704
+ * environment.</p>
705
+ * @public
706
+ */
707
+ CustomerDnsIps?: string[] | undefined;
708
+ /**
709
+ * <p>Contains Amazon VPC information for the <code>StartADAssessment</code> operation. </p>
710
+ * @public
711
+ */
712
+ VpcId?: string | undefined;
713
+ /**
714
+ * <p>A list of subnet identifiers in the Amazon VPC in which the hybrid directory is
715
+ * created.</p>
716
+ * @public
717
+ */
718
+ SubnetIds?: string[] | undefined;
719
+ /**
720
+ * <p>The security groups identifiers attached to the network interfaces.</p>
721
+ * @public
722
+ */
723
+ SecurityGroupIds?: string[] | undefined;
724
+ /**
725
+ * <p>The identifiers of the self-managed AD instances used to perform the
726
+ * assessment.</p>
727
+ * @public
728
+ */
729
+ SelfManagedInstanceIds?: string[] | undefined;
730
+ /**
731
+ * <p>The type of assessment report generated. Valid values are <code>CUSTOMER</code> and
732
+ * <code>SYSTEM</code>.</p>
733
+ * @public
734
+ */
735
+ ReportType?: string | undefined;
736
+ /**
737
+ * <p>The version of the assessment framework used to evaluate your self-managed AD
738
+ * environment.</p>
739
+ * @public
740
+ */
741
+ Version?: string | undefined;
742
+ }
743
+ /**
744
+ * <p>Contains configuration parameters required to perform a directory assessment.</p>
745
+ * @public
746
+ */
747
+ export interface AssessmentConfiguration {
748
+ /**
749
+ * <p>A list of IP addresses for the DNS servers or domain controllers in your self-managed
750
+ * AD that are tested during the assessment.</p>
751
+ * @public
752
+ */
753
+ CustomerDnsIps: string[] | undefined;
754
+ /**
755
+ * <p>The fully qualified domain name (FQDN) of the self-managed AD domain to assess.</p>
756
+ * @public
757
+ */
758
+ DnsName: string | undefined;
759
+ /**
760
+ * <p>Contains VPC information for the <a>CreateDirectory</a>, <a>CreateMicrosoftAD</a>, or <a>CreateHybridAD</a> operation.</p>
761
+ * @public
762
+ */
763
+ VpcSettings: DirectoryVpcSettings | undefined;
764
+ /**
765
+ * <p>The identifiers of the self-managed instances with SSM that are used to perform
766
+ * connectivity and validation tests.</p>
767
+ * @public
768
+ */
769
+ InstanceIds: string[] | undefined;
770
+ /**
771
+ * <p>By default, the service attaches a security group to allow network access to the
772
+ * self-managed nodes in your Amazon VPC. You can optionally supply your own security group that
773
+ * allows network traffic to and from your self-managed domain controllers outside of your
774
+ * Amazon VPC. </p>
775
+ * @public
776
+ */
777
+ SecurityGroupIds?: string[] | undefined;
778
+ }
779
+ /**
780
+ * <p>Contains information about a specific validation test performed during a directory
781
+ * assessment.</p>
782
+ * @public
783
+ */
784
+ export interface AssessmentValidation {
785
+ /**
786
+ * <p>The category of the validation test.</p>
787
+ * @public
788
+ */
789
+ Category?: string | undefined;
790
+ /**
791
+ * <p>The name of the specific validation test performed within the category.</p>
792
+ * @public
793
+ */
794
+ Name?: string | undefined;
795
+ /**
796
+ * <p>The result status of the validation test. Valid values include <code>SUCCESS</code>,
797
+ * <code>FAILED</code>, <code>PENDING</code>, and <code>IN_PROGRESS</code>.</p>
798
+ * @public
799
+ */
800
+ Status?: string | undefined;
801
+ /**
802
+ * <p>A detailed status code providing additional information about the validation
803
+ * result.</p>
804
+ * @public
805
+ */
806
+ StatusCode?: string | undefined;
807
+ /**
808
+ * <p>A human-readable description of the validation result, including any error details or
809
+ * recommendations.</p>
810
+ * @public
811
+ */
812
+ StatusReason?: string | undefined;
813
+ /**
814
+ * <p>The date and time when the validation test was started.</p>
815
+ * @public
816
+ */
817
+ StartTime?: Date | undefined;
818
+ /**
819
+ * <p>The date and time when the validation test was completed or last updated.</p>
820
+ * @public
821
+ */
822
+ LastUpdateDateTime?: Date | undefined;
823
+ }
824
+ /**
825
+ * <p>Contains the results of validation tests performed against a specific domain
826
+ * controller during a directory assessment.</p>
827
+ * @public
828
+ */
829
+ export interface AssessmentReport {
830
+ /**
831
+ * <p>The IP address of the domain controller that was tested during the assessment.</p>
832
+ * @public
833
+ */
834
+ DomainControllerIp?: string | undefined;
835
+ /**
836
+ * <p>A list of validation results for different test categories performed against this
837
+ * domain controller.</p>
838
+ * @public
839
+ */
840
+ Validations?: AssessmentValidation[] | undefined;
841
+ }
842
+ /**
843
+ * <p>Contains summary information about a directory assessment, providing a high-level
844
+ * overview without detailed validation results.</p>
845
+ * @public
846
+ */
847
+ export interface AssessmentSummary {
848
+ /**
849
+ * <p>The unique identifier of the directory assessment.</p>
850
+ * @public
851
+ */
852
+ AssessmentId?: string | undefined;
853
+ /**
854
+ * <p>The identifier of the directory associated with this assessment.</p>
855
+ * @public
856
+ */
857
+ DirectoryId?: string | undefined;
858
+ /**
859
+ * <p>The fully qualified domain name (FQDN) of the Active Directory domain being
860
+ * assessed.</p>
861
+ * @public
862
+ */
863
+ DnsName?: string | undefined;
864
+ /**
865
+ * <p>The date and time when the assessment was initiated.</p>
866
+ * @public
867
+ */
868
+ StartTime?: Date | undefined;
869
+ /**
870
+ * <p>The date and time when the assessment status was last updated.</p>
871
+ * @public
872
+ */
873
+ LastUpdateDateTime?: Date | undefined;
874
+ /**
875
+ * <p>The current status of the assessment. Valid values include <code>SUCCESS</code>,
876
+ * <code>FAILED</code>, <code>PENDING</code>, and <code>IN_PROGRESS</code>.</p>
877
+ * @public
878
+ */
879
+ Status?: string | undefined;
880
+ /**
881
+ * <p>The IP addresses of the DNS servers or domain controllers in your self-managed AD
882
+ * environment.</p>
883
+ * @public
884
+ */
885
+ CustomerDnsIps?: string[] | undefined;
886
+ /**
887
+ * <p>The type of assessment report generated. Valid values include <code>CUSTOMER</code>
888
+ * and <code>SYSTEM</code>.</p>
889
+ * @public
890
+ */
891
+ ReportType?: string | undefined;
892
+ }
622
893
  /**
623
894
  * <p>Represents a named directory attribute.</p>
624
895
  * @public
@@ -1317,6 +1588,45 @@ export interface CreateDirectoryResult {
1317
1588
  */
1318
1589
  DirectoryId?: string | undefined;
1319
1590
  }
1591
+ /**
1592
+ * @public
1593
+ */
1594
+ export interface CreateHybridADRequest {
1595
+ /**
1596
+ * <p>The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that contains the
1597
+ * credentials for the service account used to join hybrid domain controllers to your
1598
+ * self-managed AD domain. This secret is used once and not stored.</p>
1599
+ * <p>The secret must contain key-value pairs with keys matching
1600
+ * <code>customerAdAdminDomainUsername</code> and
1601
+ * <code>customerAdAdminDomainPassword</code>. For example:
1602
+ * <code>\{"customerAdAdminDomainUsername":"carlos_salazar","customerAdAdminDomainPassword":"ExamplePassword123!"\}</code>.</p>
1603
+ * @public
1604
+ */
1605
+ SecretArn: string | undefined;
1606
+ /**
1607
+ * <p>The unique identifier of the successful directory assessment that validates your
1608
+ * self-managed AD environment. You must have a successful directory assessment before you
1609
+ * create a hybrid directory.</p>
1610
+ * @public
1611
+ */
1612
+ AssessmentId: string | undefined;
1613
+ /**
1614
+ * <p>The tags to be assigned to the directory. Each tag consists of a key and value pair.
1615
+ * You can specify multiple tags as a list.</p>
1616
+ * @public
1617
+ */
1618
+ Tags?: Tag[] | undefined;
1619
+ }
1620
+ /**
1621
+ * @public
1622
+ */
1623
+ export interface CreateHybridADResult {
1624
+ /**
1625
+ * <p>The unique identifier of the newly created hybrid directory.</p>
1626
+ * @public
1627
+ */
1628
+ DirectoryId?: string | undefined;
1629
+ }
1320
1630
  /**
1321
1631
  * @public
1322
1632
  */
@@ -1595,6 +1905,26 @@ export declare const DataAccessStatus: {
1595
1905
  * @public
1596
1906
  */
1597
1907
  export type DataAccessStatus = (typeof DataAccessStatus)[keyof typeof DataAccessStatus];
1908
+ /**
1909
+ * @public
1910
+ */
1911
+ export interface DeleteADAssessmentRequest {
1912
+ /**
1913
+ * <p>The unique identifier of the directory assessment to delete.</p>
1914
+ * @public
1915
+ */
1916
+ AssessmentId: string | undefined;
1917
+ }
1918
+ /**
1919
+ * @public
1920
+ */
1921
+ export interface DeleteADAssessmentResult {
1922
+ /**
1923
+ * <p>The unique identifier of the deleted directory assessment.</p>
1924
+ * @public
1925
+ */
1926
+ AssessmentId?: string | undefined;
1927
+ }
1598
1928
  /**
1599
1929
  * <p>Deletes a conditional forwarder.</p>
1600
1930
  * @public
@@ -1749,6 +2079,33 @@ export interface DeregisterEventTopicRequest {
1749
2079
  */
1750
2080
  export interface DeregisterEventTopicResult {
1751
2081
  }
2082
+ /**
2083
+ * @public
2084
+ */
2085
+ export interface DescribeADAssessmentRequest {
2086
+ /**
2087
+ * <p>The identifier of the directory assessment to describe.</p>
2088
+ * @public
2089
+ */
2090
+ AssessmentId: string | undefined;
2091
+ }
2092
+ /**
2093
+ * @public
2094
+ */
2095
+ export interface DescribeADAssessmentResult {
2096
+ /**
2097
+ * <p>Detailed information about the self-managed instance settings (IDs and DNS
2098
+ * IPs).</p>
2099
+ * @public
2100
+ */
2101
+ Assessment?: Assessment | undefined;
2102
+ /**
2103
+ * <p>A list of assessment reports containing validation results for each domain controller
2104
+ * and test category. Each report includes specific validation details and outcomes.</p>
2105
+ * @public
2106
+ */
2107
+ AssessmentReports?: AssessmentReport[] | undefined;
2108
+ }
1752
2109
  /**
1753
2110
  * @public
1754
2111
  */
@@ -1914,6 +2271,23 @@ export interface DirectoryConnectSettingsDescription {
1914
2271
  */
1915
2272
  ConnectIps?: string[] | undefined;
1916
2273
  }
2274
+ /**
2275
+ * <p>Describes the current hybrid directory configuration settings for a directory.</p>
2276
+ * @public
2277
+ */
2278
+ export interface HybridSettingsDescription {
2279
+ /**
2280
+ * <p>The IP addresses of the DNS servers in your self-managed AD environment.</p>
2281
+ * @public
2282
+ */
2283
+ SelfManagedDnsIpAddrs?: string[] | undefined;
2284
+ /**
2285
+ * <p>The identifiers of the self-managed instances with SSM used for hybrid directory
2286
+ * operations.</p>
2287
+ * @public
2288
+ */
2289
+ SelfManagedInstanceIds?: string[] | undefined;
2290
+ }
1917
2291
  /**
1918
2292
  * @public
1919
2293
  * @enum
@@ -2273,6 +2647,12 @@ export interface DirectoryDescription {
2273
2647
  * @public
2274
2648
  */
2275
2649
  OsVersion?: OSVersion | undefined;
2650
+ /**
2651
+ * <p>Contains information about the hybrid directory configuration for the directory,
2652
+ * including Amazon Web Services System Manager managed node identifiers and DNS IPs.</p>
2653
+ * @public
2654
+ */
2655
+ HybridSettings?: HybridSettingsDescription | undefined;
2276
2656
  }
2277
2657
  /**
2278
2658
  * <p>Contains the results of the <a>DescribeDirectories</a> operation.</p>
@@ -2536,6 +2916,160 @@ export interface DescribeEventTopicsResult {
2536
2916
  */
2537
2917
  EventTopics?: EventTopic[] | undefined;
2538
2918
  }
2919
+ /**
2920
+ * @public
2921
+ * @enum
2922
+ */
2923
+ export declare const HybridUpdateType: {
2924
+ readonly HYBRID_ADMINISTRATOR_ACCOUNT: "HybridAdministratorAccount";
2925
+ readonly SELF_MANAGED_INSTANCES: "SelfManagedInstances";
2926
+ };
2927
+ /**
2928
+ * @public
2929
+ */
2930
+ export type HybridUpdateType = (typeof HybridUpdateType)[keyof typeof HybridUpdateType];
2931
+ /**
2932
+ * @public
2933
+ */
2934
+ export interface DescribeHybridADUpdateRequest {
2935
+ /**
2936
+ * <p>The identifier of the hybrid directory for which to retrieve update
2937
+ * information.</p>
2938
+ * @public
2939
+ */
2940
+ DirectoryId: string | undefined;
2941
+ /**
2942
+ * <p>The type of update activities to retrieve. Valid values include
2943
+ * <code>SelfManagedInstances</code> and
2944
+ * <code>HybridAdministratorAccount</code>.</p>
2945
+ * @public
2946
+ */
2947
+ UpdateType?: HybridUpdateType | undefined;
2948
+ /**
2949
+ * <p>The pagination token from a previous request to <a>DescribeHybridADUpdate</a>. Pass null if this is the first request.</p>
2950
+ * @public
2951
+ */
2952
+ NextToken?: string | undefined;
2953
+ }
2954
+ /**
2955
+ * <p>Contains the configuration values for a hybrid directory update, including Amazon Web Services
2956
+ * System Manager managed node and DNS information.</p>
2957
+ * @public
2958
+ */
2959
+ export interface HybridUpdateValue {
2960
+ /**
2961
+ * <p>The identifiers of the self-managed instances with SSM in the hybrid directory
2962
+ * configuration.</p>
2963
+ * @public
2964
+ */
2965
+ InstanceIds?: string[] | undefined;
2966
+ /**
2967
+ * <p>The IP addresses of the DNS servers or domain controllers in the hybrid directory
2968
+ * configuration.</p>
2969
+ * @public
2970
+ */
2971
+ DnsIps?: string[] | undefined;
2972
+ }
2973
+ /**
2974
+ * @public
2975
+ * @enum
2976
+ */
2977
+ export declare const UpdateStatus: {
2978
+ readonly UPDATED: "Updated";
2979
+ readonly UPDATE_FAILED: "UpdateFailed";
2980
+ readonly UPDATING: "Updating";
2981
+ };
2982
+ /**
2983
+ * @public
2984
+ */
2985
+ export type UpdateStatus = (typeof UpdateStatus)[keyof typeof UpdateStatus];
2986
+ /**
2987
+ * <p>Contains detailed information about a specific update activity for a hybrid directory
2988
+ * component.</p>
2989
+ * @public
2990
+ */
2991
+ export interface HybridUpdateInfoEntry {
2992
+ /**
2993
+ * <p>The current status of the update activity. Valid values include <code>UPDATED</code>,
2994
+ * <code>UPDATING</code>, and <code>UPDATE_FAILED</code>.</p>
2995
+ * @public
2996
+ */
2997
+ Status?: UpdateStatus | undefined;
2998
+ /**
2999
+ * <p>A human-readable description of the update status, including any error details or
3000
+ * progress information.</p>
3001
+ * @public
3002
+ */
3003
+ StatusReason?: string | undefined;
3004
+ /**
3005
+ * <p>Specifies if the update was initiated by the customer or Amazon Web Services.</p>
3006
+ * @public
3007
+ */
3008
+ InitiatedBy?: string | undefined;
3009
+ /**
3010
+ * <p>The new configuration values being applied in this update.</p>
3011
+ * @public
3012
+ */
3013
+ NewValue?: HybridUpdateValue | undefined;
3014
+ /**
3015
+ * <p>The previous configuration values before this update was applied.</p>
3016
+ * @public
3017
+ */
3018
+ PreviousValue?: HybridUpdateValue | undefined;
3019
+ /**
3020
+ * <p>The date and time when the update activity was initiated.</p>
3021
+ * @public
3022
+ */
3023
+ StartTime?: Date | undefined;
3024
+ /**
3025
+ * <p>The date and time when the update activity status was last updated.</p>
3026
+ * @public
3027
+ */
3028
+ LastUpdatedDateTime?: Date | undefined;
3029
+ /**
3030
+ * <p>The identifier of the assessment performed to validate this update
3031
+ * configuration.</p>
3032
+ * @public
3033
+ */
3034
+ AssessmentId?: string | undefined;
3035
+ }
3036
+ /**
3037
+ * <p>Contains information about update activities for different components of a hybrid
3038
+ * directory.</p>
3039
+ * @public
3040
+ */
3041
+ export interface HybridUpdateActivities {
3042
+ /**
3043
+ * <p>A list of update activities related to the self-managed instances with SSM in the
3044
+ * self-managed instances with SSM hybrid directory configuration.</p>
3045
+ * @public
3046
+ */
3047
+ SelfManagedInstances?: HybridUpdateInfoEntry[] | undefined;
3048
+ /**
3049
+ * <p>A list of update activities related to hybrid directory administrator account
3050
+ * changes.</p>
3051
+ * @public
3052
+ */
3053
+ HybridAdministratorAccount?: HybridUpdateInfoEntry[] | undefined;
3054
+ }
3055
+ /**
3056
+ * @public
3057
+ */
3058
+ export interface DescribeHybridADUpdateResult {
3059
+ /**
3060
+ * <p>Information about update activities for the hybrid directory, organized by update
3061
+ * type.</p>
3062
+ * @public
3063
+ */
3064
+ UpdateActivities?: HybridUpdateActivities | undefined;
3065
+ /**
3066
+ * <p>If not null, more results are available. Pass this value for the
3067
+ * <code>NextToken</code> parameter in a subsequent request to retrieve the next set of
3068
+ * items.</p>
3069
+ * @public
3070
+ */
3071
+ NextToken?: string | undefined;
3072
+ }
2539
3073
  /**
2540
3074
  * @public
2541
3075
  * @enum
@@ -2683,7 +3217,7 @@ export interface RegionDescription {
2683
3217
  */
2684
3218
  Status?: DirectoryStage | undefined;
2685
3219
  /**
2686
- * <p>Contains VPC information for the <a>CreateDirectory</a> or <a>CreateMicrosoftAD</a> operation.</p>
3220
+ * <p>Contains VPC information for the <a>CreateDirectory</a>, <a>CreateMicrosoftAD</a>, or <a>CreateHybridAD</a> operation.</p>
2687
3221
  * @public
2688
3222
  */
2689
3223
  VpcSettings?: DirectoryVpcSettings | undefined;
@@ -3211,19 +3745,6 @@ export interface UpdateValue {
3211
3745
  */
3212
3746
  OSUpdateSettings?: OSUpdateSettings | undefined;
3213
3747
  }
3214
- /**
3215
- * @public
3216
- * @enum
3217
- */
3218
- export declare const UpdateStatus: {
3219
- readonly UPDATED: "Updated";
3220
- readonly UPDATE_FAILED: "UpdateFailed";
3221
- readonly UPDATING: "Updating";
3222
- };
3223
- /**
3224
- * @public
3225
- */
3226
- export type UpdateStatus = (typeof UpdateStatus)[keyof typeof UpdateStatus];
3227
3748
  /**
3228
3749
  * <p> An entry of update information related to a requested update type. </p>
3229
3750
  * @public
@@ -3740,6 +4261,46 @@ export interface GetSnapshotLimitsResult {
3740
4261
  */
3741
4262
  SnapshotLimits?: SnapshotLimits | undefined;
3742
4263
  }
4264
+ /**
4265
+ * @public
4266
+ */
4267
+ export interface ListADAssessmentsRequest {
4268
+ /**
4269
+ * <p>The identifier of the directory for which to list assessments. If not specified, all
4270
+ * assessments in your account are returned.</p>
4271
+ * @public
4272
+ */
4273
+ DirectoryId?: string | undefined;
4274
+ /**
4275
+ * <p>The pagination token from a previous request to <a>ListADAssessments</a>.
4276
+ * Pass null if this is the first request.</p>
4277
+ * @public
4278
+ */
4279
+ NextToken?: string | undefined;
4280
+ /**
4281
+ * <p>The maximum number of assessment summaries to return.</p>
4282
+ * @public
4283
+ */
4284
+ Limit?: number | undefined;
4285
+ }
4286
+ /**
4287
+ * @public
4288
+ */
4289
+ export interface ListADAssessmentsResult {
4290
+ /**
4291
+ * <p>A list of assessment summaries containing basic information about each directory
4292
+ * assessment.</p>
4293
+ * @public
4294
+ */
4295
+ Assessments?: AssessmentSummary[] | undefined;
4296
+ /**
4297
+ * <p>If not null, more results are available. Pass this value for the
4298
+ * <code>NextToken</code> parameter in a subsequent request to retrieve the next set of
4299
+ * items.</p>
4300
+ * @public
4301
+ */
4302
+ NextToken?: string | undefined;
4303
+ }
3743
4304
  /**
3744
4305
  * @public
3745
4306
  */
@@ -4450,6 +5011,36 @@ export declare class ShareLimitExceededException extends __BaseException {
4450
5011
  */
4451
5012
  constructor(opts: __ExceptionOptionType<ShareLimitExceededException, __BaseException>);
4452
5013
  }
5014
+ /**
5015
+ * @public
5016
+ */
5017
+ export interface StartADAssessmentRequest {
5018
+ /**
5019
+ * <p>Configuration parameters for the directory assessment, including DNS server
5020
+ * information, domain name, Amazon VPC subnet, and Amazon Web Services System Manager managed node
5021
+ * details.</p>
5022
+ * @public
5023
+ */
5024
+ AssessmentConfiguration?: AssessmentConfiguration | undefined;
5025
+ /**
5026
+ * <p>The identifier of the directory for which to perform the assessment. This should be an
5027
+ * existing directory. If the assessment is not for an existing directory, this parameter
5028
+ * should be omitted.</p>
5029
+ * @public
5030
+ */
5031
+ DirectoryId?: string | undefined;
5032
+ }
5033
+ /**
5034
+ * @public
5035
+ */
5036
+ export interface StartADAssessmentResult {
5037
+ /**
5038
+ * <p>The unique identifier of the newly started directory assessment. Use this identifier
5039
+ * to monitor assessment progress and retrieve results.</p>
5040
+ * @public
5041
+ */
5042
+ AssessmentId?: string | undefined;
5043
+ }
4453
5044
  /**
4454
5045
  * @public
4455
5046
  */
@@ -4594,6 +5185,88 @@ export interface UpdateDirectorySetupRequest {
4594
5185
  */
4595
5186
  export interface UpdateDirectorySetupResult {
4596
5187
  }
5188
+ /**
5189
+ * <p> Use to recover to the hybrid directory administrator account credentials.</p>
5190
+ * @public
5191
+ */
5192
+ export interface HybridAdministratorAccountUpdate {
5193
+ /**
5194
+ * <p>The Amazon Resource Name (ARN) of the Amazon Web Services Secrets Manager secret that contains the
5195
+ * credentials for the AD administrator user, and enables hybrid domain controllers to
5196
+ * join the managed AD domain. For example:</p>
5197
+ * <p>
5198
+ * <code>
5199
+ * \{"customerAdAdminDomainUsername":"carlos_salazar","customerAdAdminDomainPassword":"ExamplePassword123!"\}.
5200
+ * </code>
5201
+ * </p>
5202
+ * @public
5203
+ */
5204
+ SecretArn: string | undefined;
5205
+ }
5206
+ /**
5207
+ * <p>Contains configuration settings for self-managed instances with SSM used in hybrid
5208
+ * directory operations.</p>
5209
+ * @public
5210
+ */
5211
+ export interface HybridCustomerInstancesSettings {
5212
+ /**
5213
+ * <p>The IP addresses of the DNS servers or domain controllers in your self-managed AD
5214
+ * environment.</p>
5215
+ * @public
5216
+ */
5217
+ CustomerDnsIps: string[] | undefined;
5218
+ /**
5219
+ * <p>The identifiers of the self-managed instances with SSM used in hybrid
5220
+ * directory.</p>
5221
+ * @public
5222
+ */
5223
+ InstanceIds: string[] | undefined;
5224
+ }
5225
+ /**
5226
+ * @public
5227
+ */
5228
+ export interface UpdateHybridADRequest {
5229
+ /**
5230
+ * <p>The identifier of the hybrid directory to update.</p>
5231
+ * @public
5232
+ */
5233
+ DirectoryId: string | undefined;
5234
+ /**
5235
+ * <p>We create a hybrid directory administrator account when we create a hybrid directory.
5236
+ * Use <code>HybridAdministratorAccountUpdate</code> to recover the hybrid directory
5237
+ * administrator account if you have deleted it.</p>
5238
+ * <p>To recover your hybrid directory administrator account, we need temporary access to a
5239
+ * user in your self-managed AD with administrator permissions in the form of a secret from
5240
+ * Amazon Web Services Secrets Manager. We use these credentials once during recovery and don't store them.</p>
5241
+ * <p>If your hybrid directory administrator account exists, then you don’t need to use
5242
+ * <code>HybridAdministratorAccountUpdate</code>, even if you have updated your
5243
+ * self-managed AD administrator user.</p>
5244
+ * @public
5245
+ */
5246
+ HybridAdministratorAccountUpdate?: HybridAdministratorAccountUpdate | undefined;
5247
+ /**
5248
+ * <p>Updates to the self-managed AD configuration, including DNS server IP addresses and
5249
+ * Amazon Web Services System Manager managed node identifiers.</p>
5250
+ * @public
5251
+ */
5252
+ SelfManagedInstancesSettings?: HybridCustomerInstancesSettings | undefined;
5253
+ }
5254
+ /**
5255
+ * @public
5256
+ */
5257
+ export interface UpdateHybridADResult {
5258
+ /**
5259
+ * <p>The identifier of the updated hybrid directory.</p>
5260
+ * @public
5261
+ */
5262
+ DirectoryId?: string | undefined;
5263
+ /**
5264
+ * <p>The identifier of the assessment performed to validate the update configuration. This
5265
+ * assessment ensures the updated settings are compatible with your environment.</p>
5266
+ * @public
5267
+ */
5268
+ AssessmentId?: string | undefined;
5269
+ }
4597
5270
  /**
4598
5271
  * <p>The maximum allowed number of domain controllers per directory was exceeded. The
4599
5272
  * default limit per directory is 20 domain controllers.</p>