/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace GuardDuty { namespace Model { /** *

Indicates that a login attempt was made to the potentially compromised * database from a remote IP address.

See Also:

AWS * API Reference

*/ class RdsLoginAttemptAction { public: AWS_GUARDDUTY_API RdsLoginAttemptAction(); AWS_GUARDDUTY_API RdsLoginAttemptAction(Aws::Utils::Json::JsonView jsonValue); AWS_GUARDDUTY_API RdsLoginAttemptAction& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const; inline const RemoteIpDetails& GetRemoteIpDetails() const{ return m_remoteIpDetails; } inline bool RemoteIpDetailsHasBeenSet() const { return m_remoteIpDetailsHasBeenSet; } inline void SetRemoteIpDetails(const RemoteIpDetails& value) { m_remoteIpDetailsHasBeenSet = true; m_remoteIpDetails = value; } inline void SetRemoteIpDetails(RemoteIpDetails&& value) { m_remoteIpDetailsHasBeenSet = true; m_remoteIpDetails = std::move(value); } inline RdsLoginAttemptAction& WithRemoteIpDetails(const RemoteIpDetails& value) { SetRemoteIpDetails(value); return *this;} inline RdsLoginAttemptAction& WithRemoteIpDetails(RemoteIpDetails&& value) { SetRemoteIpDetails(std::move(value)); return *this;} /** *

Indicates the login attributes used in the login attempt.

*/ inline const Aws::Vector& GetLoginAttributes() const{ return m_loginAttributes; } /** *

Indicates the login attributes used in the login attempt.

*/ inline bool LoginAttributesHasBeenSet() const { return m_loginAttributesHasBeenSet; } /** *

Indicates the login attributes used in the login attempt.

*/ inline void SetLoginAttributes(const Aws::Vector& value) { m_loginAttributesHasBeenSet = true; m_loginAttributes = value; } /** *

Indicates the login attributes used in the login attempt.

*/ inline void SetLoginAttributes(Aws::Vector&& value) { m_loginAttributesHasBeenSet = true; m_loginAttributes = std::move(value); } /** *

Indicates the login attributes used in the login attempt.

*/ inline RdsLoginAttemptAction& WithLoginAttributes(const Aws::Vector& value) { SetLoginAttributes(value); return *this;} /** *

Indicates the login attributes used in the login attempt.

*/ inline RdsLoginAttemptAction& WithLoginAttributes(Aws::Vector&& value) { SetLoginAttributes(std::move(value)); return *this;} /** *

Indicates the login attributes used in the login attempt.

*/ inline RdsLoginAttemptAction& AddLoginAttributes(const LoginAttribute& value) { m_loginAttributesHasBeenSet = true; m_loginAttributes.push_back(value); return *this; } /** *

Indicates the login attributes used in the login attempt.

*/ inline RdsLoginAttemptAction& AddLoginAttributes(LoginAttribute&& value) { m_loginAttributesHasBeenSet = true; m_loginAttributes.push_back(std::move(value)); return *this; } private: RemoteIpDetails m_remoteIpDetails; bool m_remoteIpDetailsHasBeenSet = false; Aws::Vector m_loginAttributes; bool m_loginAttributesHasBeenSet = false; }; } // namespace Model } // namespace GuardDuty } // namespace Aws