/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace IAM { namespace Model { /** */ class ChangePasswordRequest : public IAMRequest { public: AWS_IAM_API ChangePasswordRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "ChangePassword"; } AWS_IAM_API Aws::String SerializePayload() const override; protected: AWS_IAM_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override; public: /** *

The IAM user's current password.

*/ inline const Aws::String& GetOldPassword() const{ return m_oldPassword; } /** *

The IAM user's current password.

*/ inline bool OldPasswordHasBeenSet() const { return m_oldPasswordHasBeenSet; } /** *

The IAM user's current password.

*/ inline void SetOldPassword(const Aws::String& value) { m_oldPasswordHasBeenSet = true; m_oldPassword = value; } /** *

The IAM user's current password.

*/ inline void SetOldPassword(Aws::String&& value) { m_oldPasswordHasBeenSet = true; m_oldPassword = std::move(value); } /** *

The IAM user's current password.

*/ inline void SetOldPassword(const char* value) { m_oldPasswordHasBeenSet = true; m_oldPassword.assign(value); } /** *

The IAM user's current password.

*/ inline ChangePasswordRequest& WithOldPassword(const Aws::String& value) { SetOldPassword(value); return *this;} /** *

The IAM user's current password.

*/ inline ChangePasswordRequest& WithOldPassword(Aws::String&& value) { SetOldPassword(std::move(value)); return *this;} /** *

The IAM user's current password.

*/ inline ChangePasswordRequest& WithOldPassword(const char* value) { SetOldPassword(value); return *this;} /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline const Aws::String& GetNewPassword() const{ return m_newPassword; } /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline bool NewPasswordHasBeenSet() const { return m_newPasswordHasBeenSet; } /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline void SetNewPassword(const Aws::String& value) { m_newPasswordHasBeenSet = true; m_newPassword = value; } /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline void SetNewPassword(Aws::String&& value) { m_newPasswordHasBeenSet = true; m_newPassword = std::move(value); } /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline void SetNewPassword(const char* value) { m_newPasswordHasBeenSet = true; m_newPassword.assign(value); } /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline ChangePasswordRequest& WithNewPassword(const Aws::String& value) { SetNewPassword(value); return *this;} /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline ChangePasswordRequest& WithNewPassword(Aws::String&& value) { SetNewPassword(std::move(value)); return *this;} /** *

The new password. The new password must conform to the Amazon Web Services * account's password policy, if one exists.

The regex pattern that is used to * validate this parameter is a string of characters. That string can include * almost any printable ASCII character from the space (\u0020) * through the end of the ASCII character range (\u00FF). You can also * include the tab (\u0009), line feed (\u000A), and * carriage return (\u000D) characters. Any of these characters are * valid in a password. However, many tools, such as the Amazon Web Services * Management Console, might restrict the ability to type certain characters * because they have special meaning within that tool.

*/ inline ChangePasswordRequest& WithNewPassword(const char* value) { SetNewPassword(value); return *this;} private: Aws::String m_oldPassword; bool m_oldPasswordHasBeenSet = false; Aws::String m_newPassword; bool m_newPasswordHasBeenSet = false; }; } // namespace Model } // namespace IAM } // namespace Aws