/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Contains the inputs for the CreateDirectory operation. See
* Also:
AWS
* API Reference
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The fully qualified name for the directory, such as
* corp.example.com.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The NetBIOS name of the directory, such as CORP.
The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline const Aws::String& GetPassword() const{ return m_password; } /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline bool PasswordHasBeenSet() const { return m_passwordHasBeenSet; } /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline void SetPassword(const Aws::String& value) { m_passwordHasBeenSet = true; m_password = value; } /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline void SetPassword(Aws::String&& value) { m_passwordHasBeenSet = true; m_password = std::move(value); } /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline void SetPassword(const char* value) { m_passwordHasBeenSet = true; m_password.assign(value); } /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline CreateDirectoryRequest& WithPassword(const Aws::String& value) { SetPassword(value); return *this;} /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline CreateDirectoryRequest& WithPassword(Aws::String&& value) { SetPassword(std::move(value)); return *this;} /** *The password for the directory administrator. The directory creation process
* creates a directory administrator account with the user name
* Administrator and this password.
If you need to change the * password for the administrator account, you can use the ResetUserPassword * API call.
The regex pattern for this string is made up of the following * conditions:
Length (?=^.{8,64}$) – Must be between 8 and 64 * characters
AND any 3 of the following password complexity * rules required by Active Directory:
Numbers and upper case and * lowercase (?=.*\d)(?=.*[A-Z])(?=.*[a-z])
Numbers and special * characters and lower case (?=.*\d)(?=.*[^A-Za-z0-9\s])(?=.*[a-z])
Special characters and upper case and lower case * (?=.*[^A-Za-z0-9\s])(?=.*[A-Z])(?=.*[a-z])
Numbers and upper * case and special characters (?=.*\d)(?=.*[A-Z])(?=.*[^A-Za-z0-9\s])
For additional information about how Active Directory passwords are * enforced, see Password * must meet complexity requirements on the Microsoft website.
*/ inline CreateDirectoryRequest& WithPassword(const char* value) { SetPassword(value); return *this;} /** *A description for the directory.
*/ inline const Aws::String& GetDescription() const{ return m_description; } /** *A description for the directory.
*/ inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } /** *A description for the directory.
*/ inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } /** *A description for the directory.
*/ inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } /** *A description for the directory.
*/ inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } /** *A description for the directory.
*/ inline CreateDirectoryRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} /** *A description for the directory.
*/ inline CreateDirectoryRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} /** *A description for the directory.
*/ inline CreateDirectoryRequest& WithDescription(const char* value) { SetDescription(value); return *this;} /** *The size of the directory.
*/ inline const DirectorySize& GetSize() const{ return m_size; } /** *The size of the directory.
*/ inline bool SizeHasBeenSet() const { return m_sizeHasBeenSet; } /** *The size of the directory.
*/ inline void SetSize(const DirectorySize& value) { m_sizeHasBeenSet = true; m_size = value; } /** *The size of the directory.
*/ inline void SetSize(DirectorySize&& value) { m_sizeHasBeenSet = true; m_size = std::move(value); } /** *The size of the directory.
*/ inline CreateDirectoryRequest& WithSize(const DirectorySize& value) { SetSize(value); return *this;} /** *The size of the directory.
*/ inline CreateDirectoryRequest& WithSize(DirectorySize&& value) { SetSize(std::move(value)); return *this;} /** *A DirectoryVpcSettings object that contains additional information for * the operation.
*/ inline const DirectoryVpcSettings& GetVpcSettings() const{ return m_vpcSettings; } /** *A DirectoryVpcSettings object that contains additional information for * the operation.
*/ inline bool VpcSettingsHasBeenSet() const { return m_vpcSettingsHasBeenSet; } /** *A DirectoryVpcSettings object that contains additional information for * the operation.
*/ inline void SetVpcSettings(const DirectoryVpcSettings& value) { m_vpcSettingsHasBeenSet = true; m_vpcSettings = value; } /** *A DirectoryVpcSettings object that contains additional information for * the operation.
*/ inline void SetVpcSettings(DirectoryVpcSettings&& value) { m_vpcSettingsHasBeenSet = true; m_vpcSettings = std::move(value); } /** *A DirectoryVpcSettings object that contains additional information for * the operation.
*/ inline CreateDirectoryRequest& WithVpcSettings(const DirectoryVpcSettings& value) { SetVpcSettings(value); return *this;} /** *A DirectoryVpcSettings object that contains additional information for * the operation.
*/ inline CreateDirectoryRequest& WithVpcSettings(DirectoryVpcSettings&& value) { SetVpcSettings(std::move(value)); return *this;} /** *The tags to be assigned to the Simple AD directory.
*/ inline const Aws::VectorThe tags to be assigned to the Simple AD directory.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The tags to be assigned to the Simple AD directory.
*/ inline void SetTags(const Aws::VectorThe tags to be assigned to the Simple AD directory.
*/ inline void SetTags(Aws::VectorThe tags to be assigned to the Simple AD directory.
*/ inline CreateDirectoryRequest& WithTags(const Aws::VectorThe tags to be assigned to the Simple AD directory.
*/ inline CreateDirectoryRequest& WithTags(Aws::VectorThe tags to be assigned to the Simple AD directory.
*/ inline CreateDirectoryRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *The tags to be assigned to the Simple AD directory.
*/ inline CreateDirectoryRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_shortName; bool m_shortNameHasBeenSet = false; Aws::String m_password; bool m_passwordHasBeenSet = false; Aws::String m_description; bool m_descriptionHasBeenSet = false; DirectorySize m_size; bool m_sizeHasBeenSet = false; DirectoryVpcSettings m_vpcSettings; bool m_vpcSettingsHasBeenSet = false; Aws::Vector