/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include An object that contains details about when a principal in the reported
* Organizations entity last attempted to access an Amazon Web Services service. A
* principal can be an IAM user, an IAM role, or the Amazon Web Services account
* root user within the reported Organizations entity. This data type is a
* response element in the GetOrganizationsAccessReport
* operation.See Also:
AWS
* API Reference
The name of the service in which access was attempted.
*/ inline const Aws::String& GetServiceName() const{ return m_serviceName; } /** *The name of the service in which access was attempted.
*/ inline bool ServiceNameHasBeenSet() const { return m_serviceNameHasBeenSet; } /** *The name of the service in which access was attempted.
*/ inline void SetServiceName(const Aws::String& value) { m_serviceNameHasBeenSet = true; m_serviceName = value; } /** *The name of the service in which access was attempted.
*/ inline void SetServiceName(Aws::String&& value) { m_serviceNameHasBeenSet = true; m_serviceName = std::move(value); } /** *The name of the service in which access was attempted.
*/ inline void SetServiceName(const char* value) { m_serviceNameHasBeenSet = true; m_serviceName.assign(value); } /** *The name of the service in which access was attempted.
*/ inline AccessDetail& WithServiceName(const Aws::String& value) { SetServiceName(value); return *this;} /** *The name of the service in which access was attempted.
*/ inline AccessDetail& WithServiceName(Aws::String&& value) { SetServiceName(std::move(value)); return *this;} /** *The name of the service in which access was attempted.
*/ inline AccessDetail& WithServiceName(const char* value) { SetServiceName(value); return *this;} /** *The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, see Actions,
* resources, and condition keys for Amazon Web Services services in the
* Service Authorization Reference. Choose the name of the service to view
* details for that service. In the first paragraph, find the service prefix. For
* example, (service prefix: a4b)
. For more information about service
* namespaces, see Amazon
* Web Services service namespaces in the Amazon Web Services General
* Reference.
The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline const Aws::String& GetRegion() const{ return m_region; } /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline bool RegionHasBeenSet() const { return m_regionHasBeenSet; } /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline void SetRegion(const Aws::String& value) { m_regionHasBeenSet = true; m_region = value; } /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline void SetRegion(Aws::String&& value) { m_regionHasBeenSet = true; m_region = std::move(value); } /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline void SetRegion(const char* value) { m_regionHasBeenSet = true; m_region.assign(value); } /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline AccessDetail& WithRegion(const Aws::String& value) { SetRegion(value); return *this;} /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline AccessDetail& WithRegion(Aws::String&& value) { SetRegion(std::move(value)); return *this;} /** *The Region where the last service access attempt occurred.
This field * is null if no principals in the reported Organizations entity attempted to * access the service within the tracking * period.
*/ inline AccessDetail& WithRegion(const char* value) { SetRegion(value); return *this;} /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline const Aws::String& GetEntityPath() const{ return m_entityPath; } /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline bool EntityPathHasBeenSet() const { return m_entityPathHasBeenSet; } /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline void SetEntityPath(const Aws::String& value) { m_entityPathHasBeenSet = true; m_entityPath = value; } /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline void SetEntityPath(Aws::String&& value) { m_entityPathHasBeenSet = true; m_entityPath = std::move(value); } /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline void SetEntityPath(const char* value) { m_entityPathHasBeenSet = true; m_entityPath.assign(value); } /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline AccessDetail& WithEntityPath(const Aws::String& value) { SetEntityPath(value); return *this;} /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline AccessDetail& WithEntityPath(Aws::String&& value) { SetEntityPath(std::move(value)); return *this;} /** *The path of the Organizations entity (root, organizational unit, or account) * from which an authenticated principal last attempted to access the service. * Amazon Web Services does not report unauthenticated requests.
This field * is null if no principals (IAM users, IAM roles, or root user) in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline AccessDetail& WithEntityPath(const char* value) { SetEntityPath(value); return *this;} /** *The date and time, in ISO 8601 * date-time format, when an authenticated principal most recently attempted to * access the service. Amazon Web Services does not report unauthenticated * requests.
This field is null if no principals in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline const Aws::Utils::DateTime& GetLastAuthenticatedTime() const{ return m_lastAuthenticatedTime; } /** *The date and time, in ISO 8601 * date-time format, when an authenticated principal most recently attempted to * access the service. Amazon Web Services does not report unauthenticated * requests.
This field is null if no principals in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline bool LastAuthenticatedTimeHasBeenSet() const { return m_lastAuthenticatedTimeHasBeenSet; } /** *The date and time, in ISO 8601 * date-time format, when an authenticated principal most recently attempted to * access the service. Amazon Web Services does not report unauthenticated * requests.
This field is null if no principals in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline void SetLastAuthenticatedTime(const Aws::Utils::DateTime& value) { m_lastAuthenticatedTimeHasBeenSet = true; m_lastAuthenticatedTime = value; } /** *The date and time, in ISO 8601 * date-time format, when an authenticated principal most recently attempted to * access the service. Amazon Web Services does not report unauthenticated * requests.
This field is null if no principals in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline void SetLastAuthenticatedTime(Aws::Utils::DateTime&& value) { m_lastAuthenticatedTimeHasBeenSet = true; m_lastAuthenticatedTime = std::move(value); } /** *The date and time, in ISO 8601 * date-time format, when an authenticated principal most recently attempted to * access the service. Amazon Web Services does not report unauthenticated * requests.
This field is null if no principals in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline AccessDetail& WithLastAuthenticatedTime(const Aws::Utils::DateTime& value) { SetLastAuthenticatedTime(value); return *this;} /** *The date and time, in ISO 8601 * date-time format, when an authenticated principal most recently attempted to * access the service. Amazon Web Services does not report unauthenticated * requests.
This field is null if no principals in the reported * Organizations entity attempted to access the service within the tracking * period.
*/ inline AccessDetail& WithLastAuthenticatedTime(Aws::Utils::DateTime&& value) { SetLastAuthenticatedTime(std::move(value)); return *this;} /** *The number of accounts with authenticated principals (root user, IAM users, * and IAM roles) that attempted to access the service in the tracking period.
*/ inline int GetTotalAuthenticatedEntities() const{ return m_totalAuthenticatedEntities; } /** *The number of accounts with authenticated principals (root user, IAM users, * and IAM roles) that attempted to access the service in the tracking period.
*/ inline bool TotalAuthenticatedEntitiesHasBeenSet() const { return m_totalAuthenticatedEntitiesHasBeenSet; } /** *The number of accounts with authenticated principals (root user, IAM users, * and IAM roles) that attempted to access the service in the tracking period.
*/ inline void SetTotalAuthenticatedEntities(int value) { m_totalAuthenticatedEntitiesHasBeenSet = true; m_totalAuthenticatedEntities = value; } /** *The number of accounts with authenticated principals (root user, IAM users, * and IAM roles) that attempted to access the service in the tracking period.
*/ inline AccessDetail& WithTotalAuthenticatedEntities(int value) { SetTotalAuthenticatedEntities(value); return *this;} private: Aws::String m_serviceName; bool m_serviceNameHasBeenSet = false; Aws::String m_serviceNamespace; bool m_serviceNamespaceHasBeenSet = false; Aws::String m_region; bool m_regionHasBeenSet = false; Aws::String m_entityPath; bool m_entityPathHasBeenSet = false; Aws::Utils::DateTime m_lastAuthenticatedTime; bool m_lastAuthenticatedTimeHasBeenSet = false; int m_totalAuthenticatedEntities; bool m_totalAuthenticatedEntitiesHasBeenSet = false; }; } // namespace Model } // namespace IAM } // namespace Aws