/** * 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 Xml { class XmlNode; } // namespace Xml } // namespace Utils namespace IAM { namespace Model { /** *

Contains information about the last time an Amazon Web Services access key * was used since IAM began tracking this information on April 22, 2015.

*

This data type is used as a response element in the * GetAccessKeyLastUsed operation.

See Also:

AWS * API Reference

*/ class AccessKeyLastUsed { public: AWS_IAM_API AccessKeyLastUsed(); AWS_IAM_API AccessKeyLastUsed(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_IAM_API AccessKeyLastUsed& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); AWS_IAM_API void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; AWS_IAM_API void OutputToStream(Aws::OStream& oStream, const char* location) const; /** *

The date and time, in ISO 8601 * date-time format, when the access key was most recently used. This field is * null in the following situations:

  • The user does not have an * access key.

  • An access key exists but has not been used since * IAM began tracking this information.

  • There is no sign-in data * associated with the user.

*/ inline const Aws::Utils::DateTime& GetLastUsedDate() const{ return m_lastUsedDate; } /** *

The date and time, in ISO 8601 * date-time format, when the access key was most recently used. This field is * null in the following situations:

  • The user does not have an * access key.

  • An access key exists but has not been used since * IAM began tracking this information.

  • There is no sign-in data * associated with the user.

*/ inline bool LastUsedDateHasBeenSet() const { return m_lastUsedDateHasBeenSet; } /** *

The date and time, in ISO 8601 * date-time format, when the access key was most recently used. This field is * null in the following situations:

  • The user does not have an * access key.

  • An access key exists but has not been used since * IAM began tracking this information.

  • There is no sign-in data * associated with the user.

*/ inline void SetLastUsedDate(const Aws::Utils::DateTime& value) { m_lastUsedDateHasBeenSet = true; m_lastUsedDate = value; } /** *

The date and time, in ISO 8601 * date-time format, when the access key was most recently used. This field is * null in the following situations:

  • The user does not have an * access key.

  • An access key exists but has not been used since * IAM began tracking this information.

  • There is no sign-in data * associated with the user.

*/ inline void SetLastUsedDate(Aws::Utils::DateTime&& value) { m_lastUsedDateHasBeenSet = true; m_lastUsedDate = std::move(value); } /** *

The date and time, in ISO 8601 * date-time format, when the access key was most recently used. This field is * null in the following situations:

  • The user does not have an * access key.

  • An access key exists but has not been used since * IAM began tracking this information.

  • There is no sign-in data * associated with the user.

*/ inline AccessKeyLastUsed& WithLastUsedDate(const Aws::Utils::DateTime& value) { SetLastUsedDate(value); return *this;} /** *

The date and time, in ISO 8601 * date-time format, when the access key was most recently used. This field is * null in the following situations:

  • The user does not have an * access key.

  • An access key exists but has not been used since * IAM began tracking this information.

  • There is no sign-in data * associated with the user.

*/ inline AccessKeyLastUsed& WithLastUsedDate(Aws::Utils::DateTime&& value) { SetLastUsedDate(std::move(value)); return *this;} /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline const Aws::String& GetServiceName() const{ return m_serviceName; } /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline void SetServiceName(const Aws::String& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline void SetServiceName(Aws::String&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline void SetServiceName(const char* value) { m_serviceNameHasBeenSet = true; m_serviceName.assign(value); } /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline AccessKeyLastUsed& WithServiceName(const Aws::String& value) { SetServiceName(value); return *this;} /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline AccessKeyLastUsed& WithServiceName(Aws::String&& value) { SetServiceName(std::move(value)); return *this;} /** *

The name of the Amazon Web Services service with which this access key was * most recently used. The value of this field is "N/A" in the following * situations:

  • The user does not have an access key.

  • *
  • An access key exists but has not been used since IAM started tracking * this information.

  • There is no sign-in data associated with the * user.

*/ inline AccessKeyLastUsed& WithServiceName(const char* value) { SetServiceName(value); return *this;} /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline const Aws::String& GetRegion() const{ return m_region; } /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline AccessKeyLastUsed& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline AccessKeyLastUsed& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} /** *

The Amazon Web Services Region where this access key was most recently used. * The value for this field is "N/A" in the following situations:

  • *

    The user does not have an access key.

  • An access key exists * but has not been used since IAM began tracking this information.

  • *

    There is no sign-in data associated with the user.

For * more information about Amazon Web Services Regions, see Regions and * endpoints in the Amazon Web Services General Reference.

*/ inline AccessKeyLastUsed& WithRegion(const char* value) { SetRegion(value); return *this;} private: Aws::Utils::DateTime m_lastUsedDate; bool m_lastUsedDateHasBeenSet = false; Aws::String m_serviceName; bool m_serviceNameHasBeenSet = false; Aws::String m_region; bool m_regionHasBeenSet = false; }; } // namespace Model } // namespace IAM } // namespace Aws