/**
* 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 AWS
* Organizations entity last attempted to access an AWS service. A principal can be
* an IAM user, an IAM role, or the AWS 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, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS General Reference.
The namespace of the service in which access was attempted.
To learn
* the service namespace of a service, go to Actions,
* Resources, and Condition Keys for AWS Services in the IAM User Guide.
* 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 AWS
* Service Namespaces in the AWS 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 reporting * 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 reporting * 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 reporting * 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 reporting * 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 reporting * 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 reporting * 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 reporting * 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 reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS * does not report unauthenticated requests.
This field is null if no * principals (IAM users, IAM roles, or root users) in the reported Organizations * entity attempted to access the service within the reporting * 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. AWS does not report unauthenticated requests.
This * field is null if no principals in the reported Organizations entity attempted to * access the service within the reporting * 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. AWS does not report unauthenticated requests.
This * field is null if no principals in the reported Organizations entity attempted to * access the service within the reporting * 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. AWS does not report unauthenticated requests.
This * field is null if no principals in the reported Organizations entity attempted to * access the service within the reporting * 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. AWS does not report unauthenticated requests.
This * field is null if no principals in the reported Organizations entity attempted to * access the service within the reporting * 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. AWS does not report unauthenticated requests.
This * field is null if no principals in the reported Organizations entity attempted to * access the service within the reporting * 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. AWS does not report unauthenticated requests.
This * field is null if no principals in the reported Organizations entity attempted to * access the service within the reporting * period.
*/ inline AccessDetail& WithLastAuthenticatedTime(Aws::Utils::DateTime&& value) { SetLastAuthenticatedTime(std::move(value)); return *this;} /** *The number of accounts with authenticated principals (root users, IAM users, * and IAM roles) that attempted to access the service in the reporting period.
*/ inline int GetTotalAuthenticatedEntities() const{ return m_totalAuthenticatedEntities; } /** *The number of accounts with authenticated principals (root users, IAM users, * and IAM roles) that attempted to access the service in the reporting period.
*/ inline bool TotalAuthenticatedEntitiesHasBeenSet() const { return m_totalAuthenticatedEntitiesHasBeenSet; } /** *The number of accounts with authenticated principals (root users, IAM users, * and IAM roles) that attempted to access the service in the reporting period.
*/ inline void SetTotalAuthenticatedEntities(int value) { m_totalAuthenticatedEntitiesHasBeenSet = true; m_totalAuthenticatedEntities = value; } /** *The number of accounts with authenticated principals (root users, IAM users, * and IAM roles) that attempted to access the service in the reporting period.
*/ inline AccessDetail& WithTotalAuthenticatedEntities(int value) { SetTotalAuthenticatedEntities(value); return *this;} private: Aws::String m_serviceName; bool m_serviceNameHasBeenSet; Aws::String m_serviceNamespace; bool m_serviceNamespaceHasBeenSet; Aws::String m_region; bool m_regionHasBeenSet; Aws::String m_entityPath; bool m_entityPathHasBeenSet; Aws::Utils::DateTime m_lastAuthenticatedTime; bool m_lastAuthenticatedTimeHasBeenSet; int m_totalAuthenticatedEntities; bool m_totalAuthenticatedEntitiesHasBeenSet; }; } // namespace Model } // namespace IAM } // namespace Aws