AWS Directory Service

2024/09/18 - AWS Directory Service - 3 new 3 updated api methods

Changes  Added new APIs for enabling, disabling, and describing access to the AWS Directory Service Data API

DisableDirectoryDataAccess (new) Link ¶

Deactivates access to directory data via the Directory Service Data API for the specified directory.

See also: AWS API Documentation

Request Syntax

client.disable_directory_data_access(
    DirectoryId='string'
)
type DirectoryId

string

param DirectoryId

[REQUIRED]

The directory identifier.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DescribeDirectoryDataAccess (new) Link ¶

Obtains status of directory data access enablement through the Directory Service Data API for the specified directory.

See also: AWS API Documentation

Request Syntax

client.describe_directory_data_access(
    DirectoryId='string'
)
type DirectoryId

string

param DirectoryId

[REQUIRED]

The directory identifier.

rtype

dict

returns

Response Syntax

{
    'DataAccessStatus': 'Disabled'|'Disabling'|'Enabled'|'Enabling'|'Failed'
}

Response Structure

  • (dict) --

    • DataAccessStatus (string) --

      The current status of data access through the Directory Service Data API.

EnableDirectoryDataAccess (new) Link ¶

Enables access to directory data via the Directory Service Data API for the specified directory.

See also: AWS API Documentation

Request Syntax

client.enable_directory_data_access(
    DirectoryId='string'
)
type DirectoryId

string

param DirectoryId

[REQUIRED]

The directory identifier.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

DescribeDirectories (updated) Link ¶
Changes (response)
{'DirectoryDescriptions': {'Stage': {'Updating'}}}

Obtains information about the directories that belong to this account.

You can retrieve information about specific directories by passing the directory identifiers in the DirectoryIds parameter. Otherwise, all directories that belong to the current account are returned.

This operation supports pagination with the use of the NextToken request and response parameters. If more results are available, the DescribeDirectoriesResult.NextToken member contains a token that you pass in the next call to DescribeDirectories to retrieve the next set of items.

You can also specify a maximum number of return results with the Limit parameter.

See also: AWS API Documentation

Request Syntax

client.describe_directories(
    DirectoryIds=[
        'string',
    ],
    NextToken='string',
    Limit=123
)
type DirectoryIds

list

param DirectoryIds

A list of identifiers of the directories for which to obtain the information. If this member is null, all directories that belong to the current account are returned.

An empty list results in an InvalidParameterException being thrown.

  • (string) --

type NextToken

string

param NextToken

The DescribeDirectoriesResult.NextToken value from a previous call to DescribeDirectories. Pass null if this is the first call.

type Limit

integer

param Limit

The maximum number of items to return. If this value is zero, the maximum number of items is specified by the limitations of the operation.

rtype

dict

returns

Response Syntax

{
    'DirectoryDescriptions': [
        {
            'DirectoryId': 'string',
            'Name': 'string',
            'ShortName': 'string',
            'Size': 'Small'|'Large',
            'Edition': 'Enterprise'|'Standard',
            'Alias': 'string',
            'AccessUrl': 'string',
            'Description': 'string',
            'DnsIpAddrs': [
                'string',
            ],
            'Stage': 'Requested'|'Creating'|'Created'|'Active'|'Inoperable'|'Impaired'|'Restoring'|'RestoreFailed'|'Deleting'|'Deleted'|'Failed'|'Updating',
            'ShareStatus': 'Shared'|'PendingAcceptance'|'Rejected'|'Rejecting'|'RejectFailed'|'Sharing'|'ShareFailed'|'Deleted'|'Deleting',
            'ShareMethod': 'ORGANIZATIONS'|'HANDSHAKE',
            'ShareNotes': 'string',
            'LaunchTime': datetime(2015, 1, 1),
            'StageLastUpdatedDateTime': datetime(2015, 1, 1),
            'Type': 'SimpleAD'|'ADConnector'|'MicrosoftAD'|'SharedMicrosoftAD',
            'VpcSettings': {
                'VpcId': 'string',
                'SubnetIds': [
                    'string',
                ],
                'SecurityGroupId': 'string',
                'AvailabilityZones': [
                    'string',
                ]
            },
            'ConnectSettings': {
                'VpcId': 'string',
                'SubnetIds': [
                    'string',
                ],
                'CustomerUserName': 'string',
                'SecurityGroupId': 'string',
                'AvailabilityZones': [
                    'string',
                ],
                'ConnectIps': [
                    'string',
                ]
            },
            'RadiusSettings': {
                'RadiusServers': [
                    'string',
                ],
                'RadiusPort': 123,
                'RadiusTimeout': 123,
                'RadiusRetries': 123,
                'SharedSecret': 'string',
                'AuthenticationProtocol': 'PAP'|'CHAP'|'MS-CHAPv1'|'MS-CHAPv2',
                'DisplayLabel': 'string',
                'UseSameUsername': True|False
            },
            'RadiusStatus': 'Creating'|'Completed'|'Failed',
            'StageReason': 'string',
            'SsoEnabled': True|False,
            'DesiredNumberOfDomainControllers': 123,
            'OwnerDirectoryDescription': {
                'DirectoryId': 'string',
                'AccountId': 'string',
                'DnsIpAddrs': [
                    'string',
                ],
                'VpcSettings': {
                    'VpcId': 'string',
                    'SubnetIds': [
                        'string',
                    ],
                    'SecurityGroupId': 'string',
                    'AvailabilityZones': [
                        'string',
                    ]
                },
                'RadiusSettings': {
                    'RadiusServers': [
                        'string',
                    ],
                    'RadiusPort': 123,
                    'RadiusTimeout': 123,
                    'RadiusRetries': 123,
                    'SharedSecret': 'string',
                    'AuthenticationProtocol': 'PAP'|'CHAP'|'MS-CHAPv1'|'MS-CHAPv2',
                    'DisplayLabel': 'string',
                    'UseSameUsername': True|False
                },
                'RadiusStatus': 'Creating'|'Completed'|'Failed'
            },
            'RegionsInfo': {
                'PrimaryRegion': 'string',
                'AdditionalRegions': [
                    'string',
                ]
            },
            'OsVersion': 'SERVER_2012'|'SERVER_2019'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    Contains the results of the DescribeDirectories operation.

    • DirectoryDescriptions (list) --

      The list of DirectoryDescription objects that were retrieved.

      It is possible that this list contains less than the number of items specified in the Limit member of the request. This occurs if there are less than the requested number of items left to retrieve, or if the limitations of the operation have been exceeded.

      • (dict) --

        Contains information about an Directory Service directory.

        • DirectoryId (string) --

          The directory identifier.

        • Name (string) --

          The fully qualified name of the directory.

        • ShortName (string) --

          The short name of the directory.

        • Size (string) --

          The directory size.

        • Edition (string) --

          The edition associated with this directory.

        • Alias (string) --

          The alias for the directory. If no alias has been created for the directory, the alias is the directory identifier, such as d-XXXXXXXXXX .

        • AccessUrl (string) --

          The access URL for the directory, such as http://<alias>.awsapps.com . If no alias has been created for the directory, <alias> is the directory identifier, such as d-XXXXXXXXXX .

        • Description (string) --

          The description for the directory.

        • DnsIpAddrs (list) --

          The IP addresses of the DNS servers for the directory. For a Simple AD or Microsoft AD directory, these are the IP addresses of the Simple AD or Microsoft AD directory servers. For an AD Connector directory, these are the IP addresses of the DNS servers or domain controllers in your self-managed directory to which the AD Connector is connected.

          • (string) --

        • Stage (string) --

          The current stage of the directory.

        • ShareStatus (string) --

          Current directory status of the shared Managed Microsoft AD directory.

        • ShareMethod (string) --

          The method used when sharing a directory to determine whether the directory should be shared within your Amazon Web Services organization ( ORGANIZATIONS ) or with any Amazon Web Services account by sending a shared directory request ( HANDSHAKE ).

        • ShareNotes (string) --

          A directory share request that is sent by the directory owner to the directory consumer. The request includes a typed message to help the directory consumer administrator determine whether to approve or reject the share invitation.

        • LaunchTime (datetime) --

          Specifies when the directory was created.

        • StageLastUpdatedDateTime (datetime) --

          The date and time that the stage was last updated.

        • Type (string) --

          The directory type.

        • VpcSettings (dict) --

          A DirectoryVpcSettingsDescription object that contains additional information about a directory. This member is only present if the directory is a Simple AD or Managed Microsoft AD directory.

          • VpcId (string) --

            The identifier of the VPC that the directory is in.

          • SubnetIds (list) --

            The identifiers of the subnets for the directory servers.

            • (string) --

          • SecurityGroupId (string) --

            The domain controller security group identifier for the directory.

          • AvailabilityZones (list) --

            The list of Availability Zones that the directory is in.

            • (string) --

        • ConnectSettings (dict) --

          A DirectoryConnectSettingsDescription object that contains additional information about an AD Connector directory. This member is only present if the directory is an AD Connector directory.

          • VpcId (string) --

            The identifier of the VPC that the AD Connector is in.

          • SubnetIds (list) --

            A list of subnet identifiers in the VPC that the AD Connector is in.

            • (string) --

          • CustomerUserName (string) --

            The user name of the service account in your self-managed directory.

          • SecurityGroupId (string) --

            The security group identifier for the AD Connector directory.

          • AvailabilityZones (list) --

            A list of the Availability Zones that the directory is in.

            • (string) --

          • ConnectIps (list) --

            The IP addresses of the AD Connector servers.

            • (string) --

        • RadiusSettings (dict) --

          A RadiusSettings object that contains information about the RADIUS server configured for this directory.

          • RadiusServers (list) --

            An array of strings that contains the fully qualified domain name (FQDN) or IP addresses of the RADIUS server endpoints, or the FQDN or IP addresses of your RADIUS server load balancer.

            • (string) --

          • RadiusPort (integer) --

            The port that your RADIUS server is using for communications. Your self-managed network must allow inbound traffic over this port from the Directory Service servers.

          • RadiusTimeout (integer) --

            The amount of time, in seconds, to wait for the RADIUS server to respond.

          • RadiusRetries (integer) --

            The maximum number of times that communication with the RADIUS server is retried after the initial attempt.

          • SharedSecret (string) --

            Required for enabling RADIUS on the directory.

          • AuthenticationProtocol (string) --

            The protocol specified for your RADIUS endpoints.

          • DisplayLabel (string) --

            Not currently used.

          • UseSameUsername (boolean) --

            Not currently used.

        • RadiusStatus (string) --

          The status of the RADIUS MFA server connection.

        • StageReason (string) --

          Additional information about the directory stage.

        • SsoEnabled (boolean) --

          Indicates if single sign-on is enabled for the directory. For more information, see EnableSso and DisableSso.

        • DesiredNumberOfDomainControllers (integer) --

          The desired number of domain controllers in the directory if the directory is Microsoft AD.

        • OwnerDirectoryDescription (dict) --

          Describes the Managed Microsoft AD directory in the directory owner account.

          • DirectoryId (string) --

            Identifier of the Managed Microsoft AD directory in the directory owner account.

          • AccountId (string) --

            Identifier of the directory owner account.

          • DnsIpAddrs (list) --

            IP address of the directory’s domain controllers.

            • (string) --

          • VpcSettings (dict) --

            Information about the VPC settings for the directory.

            • VpcId (string) --

              The identifier of the VPC that the directory is in.

            • SubnetIds (list) --

              The identifiers of the subnets for the directory servers.

              • (string) --

            • SecurityGroupId (string) --

              The domain controller security group identifier for the directory.

            • AvailabilityZones (list) --

              The list of Availability Zones that the directory is in.

              • (string) --

          • RadiusSettings (dict) --

            A RadiusSettings object that contains information about the RADIUS server.

            • RadiusServers (list) --

              An array of strings that contains the fully qualified domain name (FQDN) or IP addresses of the RADIUS server endpoints, or the FQDN or IP addresses of your RADIUS server load balancer.

              • (string) --

            • RadiusPort (integer) --

              The port that your RADIUS server is using for communications. Your self-managed network must allow inbound traffic over this port from the Directory Service servers.

            • RadiusTimeout (integer) --

              The amount of time, in seconds, to wait for the RADIUS server to respond.

            • RadiusRetries (integer) --

              The maximum number of times that communication with the RADIUS server is retried after the initial attempt.

            • SharedSecret (string) --

              Required for enabling RADIUS on the directory.

            • AuthenticationProtocol (string) --

              The protocol specified for your RADIUS endpoints.

            • DisplayLabel (string) --

              Not currently used.

            • UseSameUsername (boolean) --

              Not currently used.

          • RadiusStatus (string) --

            Information about the status of the RADIUS server.

        • RegionsInfo (dict) --

          Lists the Regions where the directory has replicated.

          • PrimaryRegion (string) --

            The Region where the Managed Microsoft AD directory was originally created.

          • AdditionalRegions (list) --

            Lists the Regions where the directory has been replicated, excluding the primary Region.

            • (string) --

        • OsVersion (string) --

          The operating system (OS) version of the directory.

    • NextToken (string) --

      If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to DescribeDirectories to retrieve the next set of items.

DescribeDomainControllers (updated) Link ¶
Changes (response)
{'DomainControllers': {'Status': {'Updating'}}}

Provides information about any domain controllers in your directory.

See also: AWS API Documentation

Request Syntax

client.describe_domain_controllers(
    DirectoryId='string',
    DomainControllerIds=[
        'string',
    ],
    NextToken='string',
    Limit=123
)
type DirectoryId

string

param DirectoryId

[REQUIRED]

Identifier of the directory for which to retrieve the domain controller information.

type DomainControllerIds

list

param DomainControllerIds

A list of identifiers for the domain controllers whose information will be provided.

  • (string) --

type NextToken

string

param NextToken

The DescribeDomainControllers.NextToken value from a previous call to DescribeDomainControllers. Pass null if this is the first call.

type Limit

integer

param Limit

The maximum number of items to return.

rtype

dict

returns

Response Syntax

{
    'DomainControllers': [
        {
            'DirectoryId': 'string',
            'DomainControllerId': 'string',
            'DnsIpAddr': 'string',
            'VpcId': 'string',
            'SubnetId': 'string',
            'AvailabilityZone': 'string',
            'Status': 'Creating'|'Active'|'Impaired'|'Restoring'|'Deleting'|'Deleted'|'Failed'|'Updating',
            'StatusReason': 'string',
            'LaunchTime': datetime(2015, 1, 1),
            'StatusLastUpdatedDateTime': datetime(2015, 1, 1)
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • DomainControllers (list) --

      List of the DomainController objects that were retrieved.

      • (dict) --

        Contains information about the domain controllers for a specified directory.

        • DirectoryId (string) --

          Identifier of the directory where the domain controller resides.

        • DomainControllerId (string) --

          Identifies a specific domain controller in the directory.

        • DnsIpAddr (string) --

          The IP address of the domain controller.

        • VpcId (string) --

          The identifier of the VPC that contains the domain controller.

        • SubnetId (string) --

          Identifier of the subnet in the VPC that contains the domain controller.

        • AvailabilityZone (string) --

          The Availability Zone where the domain controller is located.

        • Status (string) --

          The status of the domain controller.

        • StatusReason (string) --

          A description of the domain controller state.

        • LaunchTime (datetime) --

          Specifies when the domain controller was created.

        • StatusLastUpdatedDateTime (datetime) --

          The date and time that the status was last updated.

    • NextToken (string) --

      If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to DescribeDomainControllers retrieve the next set of items.

DescribeRegions (updated) Link ¶
Changes (response)
{'RegionsDescription': {'Status': {'Updating'}}}

Provides information about the Regions that are configured for multi-Region replication.

See also: AWS API Documentation

Request Syntax

client.describe_regions(
    DirectoryId='string',
    RegionName='string',
    NextToken='string'
)
type DirectoryId

string

param DirectoryId

[REQUIRED]

The identifier of the directory.

type RegionName

string

param RegionName

The name of the Region. For example, us-east-1 .

type NextToken

string

param NextToken

The DescribeRegionsResult.NextToken value from a previous call to DescribeRegions. Pass null if this is the first call.

rtype

dict

returns

Response Syntax

{
    'RegionsDescription': [
        {
            'DirectoryId': 'string',
            'RegionName': 'string',
            'RegionType': 'Primary'|'Additional',
            'Status': 'Requested'|'Creating'|'Created'|'Active'|'Inoperable'|'Impaired'|'Restoring'|'RestoreFailed'|'Deleting'|'Deleted'|'Failed'|'Updating',
            'VpcSettings': {
                'VpcId': 'string',
                'SubnetIds': [
                    'string',
                ]
            },
            'DesiredNumberOfDomainControllers': 123,
            'LaunchTime': datetime(2015, 1, 1),
            'StatusLastUpdatedDateTime': datetime(2015, 1, 1),
            'LastUpdatedDateTime': datetime(2015, 1, 1)
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • RegionsDescription (list) --

      List of Region information related to the directory for each replicated Region.

      • (dict) --

        The replicated Region information for a directory.

        • DirectoryId (string) --

          The identifier of the directory.

        • RegionName (string) --

          The name of the Region. For example, us-east-1 .

        • RegionType (string) --

          Specifies whether the Region is the primary Region or an additional Region.

        • Status (string) --

          The status of the replication process for the specified Region.

        • VpcSettings (dict) --

          Contains VPC information for the CreateDirectory or CreateMicrosoftAD operation.

          • VpcId (string) --

            The identifier of the VPC in which to create the directory.

          • SubnetIds (list) --

            The identifiers of the subnets for the directory servers. The two subnets must be in different Availability Zones. Directory Service creates a directory server and a DNS server in each of these subnets.

            • (string) --

        • DesiredNumberOfDomainControllers (integer) --

          The desired number of domain controllers in the specified Region for the specified directory.

        • LaunchTime (datetime) --

          Specifies when the Region replication began.

        • StatusLastUpdatedDateTime (datetime) --

          The date and time that the Region status was last updated.

        • LastUpdatedDateTime (datetime) --

          The date and time that the Region description was last updated.

    • NextToken (string) --

      If not null, more results are available. Pass this value for the NextToken parameter in a subsequent call to DescribeRegions to retrieve the next set of items.