diff --git a/VERSION b/VERSION index c4065423059..39e484a43df 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.11.208 \ No newline at end of file +1.11.209 \ No newline at end of file diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/AccessAnalyzerClient.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/AccessAnalyzerClient.h index 5540c9c487c..7f424673107 100644 --- a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/AccessAnalyzerClient.h +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/AccessAnalyzerClient.h @@ -16,20 +16,31 @@ namespace Aws namespace AccessAnalyzer { /** - *
Identity and Access Management Access Analyzer helps identify potential - * resource-access risks by enabling you to identify any policies that grant access - * to an external principal. It does this by using logic-based reasoning to analyze - * resource-based policies in your Amazon Web Services environment. An external - * principal can be another Amazon Web Services account, a root user, an IAM user - * or role, a federated user, an Amazon Web Services service, or an anonymous user. - * You can also use IAM Access Analyzer to preview and validate public and - * cross-account access to your resources before deploying permissions changes. - * This guide describes the Identity and Access Management Access Analyzer - * operations that you can call programmatically. For general information about IAM - * Access Analyzer, see Identity and Access Management Access Analyzer helps you to set, verify, and + * refine your IAM policies by providing a suite of capabilities. Its features + * include findings for external and unused access, basic and custom policy checks + * for validating policies, and policy generation to generate fine-grained + * policies. To start using IAM Access Analyzer to identify external or unused + * access, you first need to create an analyzer.
External access + * analyzers help identify potential risks of accessing resources by enabling + * you to identify any resource policies that grant access to an external + * principal. It does this by using logic-based reasoning to analyze resource-based + * policies in your Amazon Web Services environment. An external principal can be + * another Amazon Web Services account, a root user, an IAM user or role, a + * federated user, an Amazon Web Services service, or an anonymous user. You can + * also use IAM Access Analyzer to preview public and cross-account access to your + * resources before deploying permissions changes.
Unused access + * analyzers help identify potential identity access risks by enabling you to + * identify unused IAM roles, unused access keys, unused console passwords, and IAM + * principals with unused service and action-level permissions.
Beyond + * findings, IAM Access Analyzer provides basic and custom policy checks to + * validate IAM policies before deploying permissions changes. You can use policy + * generation to refine permissions by attaching a policy generated using access + * activity logged in CloudTrail logs.
This guide describes the IAM Access + * Analyzer operations that you can call programmatically. For general information + * about IAM Access Analyzer, see Identity * and Access Management Access Analyzer in the IAM User Guide.
- *To start using IAM Access Analyzer, you first need to create an analyzer.
*/ class AWS_ACCESSANALYZER_API AccessAnalyzerClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethodsChecks whether the specified access isn't allowed by a policy.
Checks whether new access is allowed for an updated policy when compared to + * the existing policy.
You can find examples for reference policies and
+ * learn how to set up and run a custom policy check for new access in the IAM
+ * Access Analyzer custom policy checks samples repository on GitHub. The
+ * reference policies in this repository are meant to be passed to the
+ * existingPolicyDocument
request parameter.
Creates an access preview that allows you to preview IAM Access Analyzer * findings for your resource before deploying resource permissions.
Retrieves information about the specified finding.
Retrieves the policy that was generated using
* StartPolicyGeneration
.
To + * learn about filter keys that you can use to retrieve a list of findings, see IAM + * Access Analyzer filter keys in the IAM User Guide.
Lists all of the policy generations requested in the last seven * days.
Contains information about actions that define permissions to check against a + * policy.
A list of actions for the access permissions.
+ */ + inline const Aws::VectorA list of actions for the access permissions.
+ */ + inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; } + + /** + *A list of actions for the access permissions.
+ */ + inline void SetActions(const Aws::VectorA list of actions for the access permissions.
+ */ + inline void SetActions(Aws::VectorA list of actions for the access permissions.
+ */ + inline Access& WithActions(const Aws::VectorA list of actions for the access permissions.
+ */ + inline Access& WithActions(Aws::VectorA list of actions for the access permissions.
+ */ + inline Access& AddActions(const Aws::String& value) { m_actionsHasBeenSet = true; m_actions.push_back(value); return *this; } + + /** + *A list of actions for the access permissions.
+ */ + inline Access& AddActions(Aws::String&& value) { m_actionsHasBeenSet = true; m_actions.push_back(std::move(value)); return *this; } + + /** + *A list of actions for the access permissions.
+ */ + inline Access& AddActions(const char* value) { m_actionsHasBeenSet = true; m_actions.push_back(value); return *this; } + + private: + + Aws::VectorContains information about the configuration of an unused access analyzer for + * an Amazon Web Services organization or account.
Specifies the configuration of an unused access analyzer for an Amazon Web + * Services organization or account. External access analyzers do not support any + * configuration.
+ */ + inline const UnusedAccessConfiguration& GetUnusedAccess() const{ return m_unusedAccess; } + + /** + *Specifies the configuration of an unused access analyzer for an Amazon Web + * Services organization or account. External access analyzers do not support any + * configuration.
+ */ + inline bool UnusedAccessHasBeenSet() const { return m_unusedAccessHasBeenSet; } + + /** + *Specifies the configuration of an unused access analyzer for an Amazon Web + * Services organization or account. External access analyzers do not support any + * configuration.
+ */ + inline void SetUnusedAccess(const UnusedAccessConfiguration& value) { m_unusedAccessHasBeenSet = true; m_unusedAccess = value; } + + /** + *Specifies the configuration of an unused access analyzer for an Amazon Web + * Services organization or account. External access analyzers do not support any + * configuration.
+ */ + inline void SetUnusedAccess(UnusedAccessConfiguration&& value) { m_unusedAccessHasBeenSet = true; m_unusedAccess = std::move(value); } + + /** + *Specifies the configuration of an unused access analyzer for an Amazon Web + * Services organization or account. External access analyzers do not support any + * configuration.
+ */ + inline AnalyzerConfiguration& WithUnusedAccess(const UnusedAccessConfiguration& value) { SetUnusedAccess(value); return *this;} + + /** + *Specifies the configuration of an unused access analyzer for an Amazon Web + * Services organization or account. External access analyzers do not support any + * configuration.
+ */ + inline AnalyzerConfiguration& WithUnusedAccess(UnusedAccessConfiguration&& value) { SetUnusedAccess(std::move(value)); return *this;} + + private: + + UnusedAccessConfiguration m_unusedAccess; + bool m_unusedAccessHasBeenSet = false; + }; + +} // namespace Model +} // namespace AccessAnalyzer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/AnalyzerSummary.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/AnalyzerSummary.h index eb76e9a30fb..388631db0a1 100644 --- a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/AnalyzerSummary.h +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/AnalyzerSummary.h @@ -11,6 +11,7 @@ #includeSpecifies whether the analyzer is an external access or unused access + * analyzer.
+ */ + inline const AnalyzerConfiguration& GetConfiguration() const{ return m_configuration; } + + /** + *Specifies whether the analyzer is an external access or unused access + * analyzer.
+ */ + inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; } + + /** + *Specifies whether the analyzer is an external access or unused access + * analyzer.
+ */ + inline void SetConfiguration(const AnalyzerConfiguration& value) { m_configurationHasBeenSet = true; m_configuration = value; } + + /** + *Specifies whether the analyzer is an external access or unused access + * analyzer.
+ */ + inline void SetConfiguration(AnalyzerConfiguration&& value) { m_configurationHasBeenSet = true; m_configuration = std::move(value); } + + /** + *Specifies whether the analyzer is an external access or unused access + * analyzer.
+ */ + inline AnalyzerSummary& WithConfiguration(const AnalyzerConfiguration& value) { SetConfiguration(value); return *this;} + + /** + *Specifies whether the analyzer is an external access or unused access + * analyzer.
+ */ + inline AnalyzerSummary& WithConfiguration(AnalyzerConfiguration&& value) { SetConfiguration(std::move(value)); return *this;} + private: Aws::String m_arn; @@ -479,6 +517,9 @@ namespace Model StatusReason m_statusReason; bool m_statusReasonHasBeenSet = false; + + AnalyzerConfiguration m_configuration; + bool m_configurationHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/CheckAccessNotGrantedRequest.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/CheckAccessNotGrantedRequest.h new file mode 100644 index 00000000000..506c5e2bd84 --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/CheckAccessNotGrantedRequest.h @@ -0,0 +1,208 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeThe JSON policy document to use as the content for the policy.
+ */ + inline const Aws::String& GetPolicyDocument() const{ return m_policyDocument; } + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline bool PolicyDocumentHasBeenSet() const { return m_policyDocumentHasBeenSet; } + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline void SetPolicyDocument(const Aws::String& value) { m_policyDocumentHasBeenSet = true; m_policyDocument = value; } + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline void SetPolicyDocument(Aws::String&& value) { m_policyDocumentHasBeenSet = true; m_policyDocument = std::move(value); } + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline void SetPolicyDocument(const char* value) { m_policyDocumentHasBeenSet = true; m_policyDocument.assign(value); } + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline CheckAccessNotGrantedRequest& WithPolicyDocument(const Aws::String& value) { SetPolicyDocument(value); return *this;} + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline CheckAccessNotGrantedRequest& WithPolicyDocument(Aws::String&& value) { SetPolicyDocument(std::move(value)); return *this;} + + /** + *The JSON policy document to use as the content for the policy.
+ */ + inline CheckAccessNotGrantedRequest& WithPolicyDocument(const char* value) { SetPolicyDocument(value); return *this;} + + + /** + *An access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline const Aws::VectorAn access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline bool AccessHasBeenSet() const { return m_accessHasBeenSet; } + + /** + *An access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline void SetAccess(const Aws::VectorAn access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline void SetAccess(Aws::VectorAn access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline CheckAccessNotGrantedRequest& WithAccess(const Aws::VectorAn access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline CheckAccessNotGrantedRequest& WithAccess(Aws::VectorAn access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline CheckAccessNotGrantedRequest& AddAccess(const Access& value) { m_accessHasBeenSet = true; m_access.push_back(value); return *this; } + + /** + *An access object containing the permissions that shouldn't be granted by the + * specified policy.
+ */ + inline CheckAccessNotGrantedRequest& AddAccess(Access&& value) { m_accessHasBeenSet = true; m_access.push_back(std::move(value)); return *this; } + + + /** + *The type of policy. Identity policies grant permissions to IAM principals. + * Identity policies include managed and inline policies for IAM roles, users, and + * groups.
Resource policies grant permissions on Amazon Web Services + * resources. Resource policies include trust policies for IAM roles and bucket + * policies for Amazon S3 buckets. You can provide a generic input such as identity + * policy or resource policy or a specific input such as managed policy or Amazon + * S3 bucket policy.
+ */ + inline const AccessCheckPolicyType& GetPolicyType() const{ return m_policyType; } + + /** + *The type of policy. Identity policies grant permissions to IAM principals. + * Identity policies include managed and inline policies for IAM roles, users, and + * groups.
Resource policies grant permissions on Amazon Web Services + * resources. Resource policies include trust policies for IAM roles and bucket + * policies for Amazon S3 buckets. You can provide a generic input such as identity + * policy or resource policy or a specific input such as managed policy or Amazon + * S3 bucket policy.
+ */ + inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; } + + /** + *The type of policy. Identity policies grant permissions to IAM principals. + * Identity policies include managed and inline policies for IAM roles, users, and + * groups.
Resource policies grant permissions on Amazon Web Services + * resources. Resource policies include trust policies for IAM roles and bucket + * policies for Amazon S3 buckets. You can provide a generic input such as identity + * policy or resource policy or a specific input such as managed policy or Amazon + * S3 bucket policy.
+ */ + inline void SetPolicyType(const AccessCheckPolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; } + + /** + *The type of policy. Identity policies grant permissions to IAM principals. + * Identity policies include managed and inline policies for IAM roles, users, and + * groups.
Resource policies grant permissions on Amazon Web Services + * resources. Resource policies include trust policies for IAM roles and bucket + * policies for Amazon S3 buckets. You can provide a generic input such as identity + * policy or resource policy or a specific input such as managed policy or Amazon + * S3 bucket policy.
+ */ + inline void SetPolicyType(AccessCheckPolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); } + + /** + *The type of policy. Identity policies grant permissions to IAM principals. + * Identity policies include managed and inline policies for IAM roles, users, and + * groups.
Resource policies grant permissions on Amazon Web Services + * resources. Resource policies include trust policies for IAM roles and bucket + * policies for Amazon S3 buckets. You can provide a generic input such as identity + * policy or resource policy or a specific input such as managed policy or Amazon + * S3 bucket policy.
+ */ + inline CheckAccessNotGrantedRequest& WithPolicyType(const AccessCheckPolicyType& value) { SetPolicyType(value); return *this;} + + /** + *The type of policy. Identity policies grant permissions to IAM principals. + * Identity policies include managed and inline policies for IAM roles, users, and + * groups.
Resource policies grant permissions on Amazon Web Services + * resources. Resource policies include trust policies for IAM roles and bucket + * policies for Amazon S3 buckets. You can provide a generic input such as identity + * policy or resource policy or a specific input such as managed policy or Amazon + * S3 bucket policy.
+ */ + inline CheckAccessNotGrantedRequest& WithPolicyType(AccessCheckPolicyType&& value) { SetPolicyType(std::move(value)); return *this;} + + private: + + Aws::String m_policyDocument; + bool m_policyDocumentHasBeenSet = false; + + Aws::VectorThe result of the check for whether the access is allowed. If the result is
+ * PASS
, the specified policy doesn't allow any of the specified
+ * permissions in the access object. If the result is FAIL
, the
+ * specified policy might allow some or all of the permissions in the access
+ * object.
The result of the check for whether the access is allowed. If the result is
+ * PASS
, the specified policy doesn't allow any of the specified
+ * permissions in the access object. If the result is FAIL
, the
+ * specified policy might allow some or all of the permissions in the access
+ * object.
The result of the check for whether the access is allowed. If the result is
+ * PASS
, the specified policy doesn't allow any of the specified
+ * permissions in the access object. If the result is FAIL
, the
+ * specified policy might allow some or all of the permissions in the access
+ * object.
The result of the check for whether the access is allowed. If the result is
+ * PASS
, the specified policy doesn't allow any of the specified
+ * permissions in the access object. If the result is FAIL
, the
+ * specified policy might allow some or all of the permissions in the access
+ * object.
The result of the check for whether the access is allowed. If the result is
+ * PASS
, the specified policy doesn't allow any of the specified
+ * permissions in the access object. If the result is FAIL
, the
+ * specified policy might allow some or all of the permissions in the access
+ * object.
The message indicating whether the specified access is allowed.
+ */ + inline const Aws::String& GetMessage() const{ return m_message; } + + /** + *The message indicating whether the specified access is allowed.
+ */ + inline void SetMessage(const Aws::String& value) { m_message = value; } + + /** + *The message indicating whether the specified access is allowed.
+ */ + inline void SetMessage(Aws::String&& value) { m_message = std::move(value); } + + /** + *The message indicating whether the specified access is allowed.
+ */ + inline void SetMessage(const char* value) { m_message.assign(value); } + + /** + *The message indicating whether the specified access is allowed.
+ */ + inline CheckAccessNotGrantedSdkResult& WithMessage(const Aws::String& value) { SetMessage(value); return *this;} + + /** + *The message indicating whether the specified access is allowed.
+ */ + inline CheckAccessNotGrantedSdkResult& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;} + + /** + *The message indicating whether the specified access is allowed.
+ */ + inline CheckAccessNotGrantedSdkResult& WithMessage(const char* value) { SetMessage(value); return *this;} + + + /** + *A description of the reasoning of the result.
+ */ + inline const Aws::VectorA description of the reasoning of the result.
+ */ + inline void SetReasons(const Aws::VectorA description of the reasoning of the result.
+ */ + inline void SetReasons(Aws::VectorA description of the reasoning of the result.
+ */ + inline CheckAccessNotGrantedSdkResult& WithReasons(const Aws::VectorA description of the reasoning of the result.
+ */ + inline CheckAccessNotGrantedSdkResult& WithReasons(Aws::VectorA description of the reasoning of the result.
+ */ + inline CheckAccessNotGrantedSdkResult& AddReasons(const ReasonSummary& value) { m_reasons.push_back(value); return *this; } + + /** + *A description of the reasoning of the result.
+ */ + inline CheckAccessNotGrantedSdkResult& AddReasons(ReasonSummary&& value) { m_reasons.push_back(std::move(value)); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline CheckAccessNotGrantedSdkResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline CheckAccessNotGrantedSdkResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline CheckAccessNotGrantedSdkResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + CheckAccessNotGrantedResult m_result; + + Aws::String m_message; + + Aws::VectorThe JSON policy document to use as the content for the updated policy.
+ */ + inline const Aws::String& GetNewPolicyDocument() const{ return m_newPolicyDocument; } + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline bool NewPolicyDocumentHasBeenSet() const { return m_newPolicyDocumentHasBeenSet; } + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline void SetNewPolicyDocument(const Aws::String& value) { m_newPolicyDocumentHasBeenSet = true; m_newPolicyDocument = value; } + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline void SetNewPolicyDocument(Aws::String&& value) { m_newPolicyDocumentHasBeenSet = true; m_newPolicyDocument = std::move(value); } + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline void SetNewPolicyDocument(const char* value) { m_newPolicyDocumentHasBeenSet = true; m_newPolicyDocument.assign(value); } + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline CheckNoNewAccessRequest& WithNewPolicyDocument(const Aws::String& value) { SetNewPolicyDocument(value); return *this;} + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline CheckNoNewAccessRequest& WithNewPolicyDocument(Aws::String&& value) { SetNewPolicyDocument(std::move(value)); return *this;} + + /** + *The JSON policy document to use as the content for the updated policy.
+ */ + inline CheckNoNewAccessRequest& WithNewPolicyDocument(const char* value) { SetNewPolicyDocument(value); return *this;} + + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline const Aws::String& GetExistingPolicyDocument() const{ return m_existingPolicyDocument; } + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline bool ExistingPolicyDocumentHasBeenSet() const { return m_existingPolicyDocumentHasBeenSet; } + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline void SetExistingPolicyDocument(const Aws::String& value) { m_existingPolicyDocumentHasBeenSet = true; m_existingPolicyDocument = value; } + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline void SetExistingPolicyDocument(Aws::String&& value) { m_existingPolicyDocumentHasBeenSet = true; m_existingPolicyDocument = std::move(value); } + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline void SetExistingPolicyDocument(const char* value) { m_existingPolicyDocumentHasBeenSet = true; m_existingPolicyDocument.assign(value); } + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline CheckNoNewAccessRequest& WithExistingPolicyDocument(const Aws::String& value) { SetExistingPolicyDocument(value); return *this;} + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline CheckNoNewAccessRequest& WithExistingPolicyDocument(Aws::String&& value) { SetExistingPolicyDocument(std::move(value)); return *this;} + + /** + *The JSON policy document to use as the content for the existing policy.
+ */ + inline CheckNoNewAccessRequest& WithExistingPolicyDocument(const char* value) { SetExistingPolicyDocument(value); return *this;} + + + /** + *The type of policy to compare. Identity policies grant permissions to IAM + * principals. Identity policies include managed and inline policies for IAM roles, + * users, and groups.
Resource policies grant permissions on Amazon Web + * Services resources. Resource policies include trust policies for IAM roles and + * bucket policies for Amazon S3 buckets. You can provide a generic input such as + * identity policy or resource policy or a specific input such as managed policy or + * Amazon S3 bucket policy.
+ */ + inline const AccessCheckPolicyType& GetPolicyType() const{ return m_policyType; } + + /** + *The type of policy to compare. Identity policies grant permissions to IAM + * principals. Identity policies include managed and inline policies for IAM roles, + * users, and groups.
Resource policies grant permissions on Amazon Web + * Services resources. Resource policies include trust policies for IAM roles and + * bucket policies for Amazon S3 buckets. You can provide a generic input such as + * identity policy or resource policy or a specific input such as managed policy or + * Amazon S3 bucket policy.
+ */ + inline bool PolicyTypeHasBeenSet() const { return m_policyTypeHasBeenSet; } + + /** + *The type of policy to compare. Identity policies grant permissions to IAM + * principals. Identity policies include managed and inline policies for IAM roles, + * users, and groups.
Resource policies grant permissions on Amazon Web + * Services resources. Resource policies include trust policies for IAM roles and + * bucket policies for Amazon S3 buckets. You can provide a generic input such as + * identity policy or resource policy or a specific input such as managed policy or + * Amazon S3 bucket policy.
+ */ + inline void SetPolicyType(const AccessCheckPolicyType& value) { m_policyTypeHasBeenSet = true; m_policyType = value; } + + /** + *The type of policy to compare. Identity policies grant permissions to IAM + * principals. Identity policies include managed and inline policies for IAM roles, + * users, and groups.
Resource policies grant permissions on Amazon Web + * Services resources. Resource policies include trust policies for IAM roles and + * bucket policies for Amazon S3 buckets. You can provide a generic input such as + * identity policy or resource policy or a specific input such as managed policy or + * Amazon S3 bucket policy.
+ */ + inline void SetPolicyType(AccessCheckPolicyType&& value) { m_policyTypeHasBeenSet = true; m_policyType = std::move(value); } + + /** + *The type of policy to compare. Identity policies grant permissions to IAM + * principals. Identity policies include managed and inline policies for IAM roles, + * users, and groups.
Resource policies grant permissions on Amazon Web + * Services resources. Resource policies include trust policies for IAM roles and + * bucket policies for Amazon S3 buckets. You can provide a generic input such as + * identity policy or resource policy or a specific input such as managed policy or + * Amazon S3 bucket policy.
+ */ + inline CheckNoNewAccessRequest& WithPolicyType(const AccessCheckPolicyType& value) { SetPolicyType(value); return *this;} + + /** + *The type of policy to compare. Identity policies grant permissions to IAM + * principals. Identity policies include managed and inline policies for IAM roles, + * users, and groups.
Resource policies grant permissions on Amazon Web + * Services resources. Resource policies include trust policies for IAM roles and + * bucket policies for Amazon S3 buckets. You can provide a generic input such as + * identity policy or resource policy or a specific input such as managed policy or + * Amazon S3 bucket policy.
+ */ + inline CheckNoNewAccessRequest& WithPolicyType(AccessCheckPolicyType&& value) { SetPolicyType(std::move(value)); return *this;} + + private: + + Aws::String m_newPolicyDocument; + bool m_newPolicyDocumentHasBeenSet = false; + + Aws::String m_existingPolicyDocument; + bool m_existingPolicyDocumentHasBeenSet = false; + + AccessCheckPolicyType m_policyType; + bool m_policyTypeHasBeenSet = false; + }; + +} // namespace Model +} // namespace AccessAnalyzer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/CheckNoNewAccessResult.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/CheckNoNewAccessResult.h new file mode 100644 index 00000000000..a18c485ac3a --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/CheckNoNewAccessResult.h @@ -0,0 +1,31 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeThe result of the check for new access. If the result is PASS
,
+ * no new access is allowed by the updated policy. If the result is
+ * FAIL
, the updated policy might allow new access.
The result of the check for new access. If the result is PASS
,
+ * no new access is allowed by the updated policy. If the result is
+ * FAIL
, the updated policy might allow new access.
The result of the check for new access. If the result is PASS
,
+ * no new access is allowed by the updated policy. If the result is
+ * FAIL
, the updated policy might allow new access.
The result of the check for new access. If the result is PASS
,
+ * no new access is allowed by the updated policy. If the result is
+ * FAIL
, the updated policy might allow new access.
The result of the check for new access. If the result is PASS
,
+ * no new access is allowed by the updated policy. If the result is
+ * FAIL
, the updated policy might allow new access.
The message indicating whether the updated policy allows new access.
+ */ + inline const Aws::String& GetMessage() const{ return m_message; } + + /** + *The message indicating whether the updated policy allows new access.
+ */ + inline void SetMessage(const Aws::String& value) { m_message = value; } + + /** + *The message indicating whether the updated policy allows new access.
+ */ + inline void SetMessage(Aws::String&& value) { m_message = std::move(value); } + + /** + *The message indicating whether the updated policy allows new access.
+ */ + inline void SetMessage(const char* value) { m_message.assign(value); } + + /** + *The message indicating whether the updated policy allows new access.
+ */ + inline CheckNoNewAccessSdkResult& WithMessage(const Aws::String& value) { SetMessage(value); return *this;} + + /** + *The message indicating whether the updated policy allows new access.
+ */ + inline CheckNoNewAccessSdkResult& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;} + + /** + *The message indicating whether the updated policy allows new access.
+ */ + inline CheckNoNewAccessSdkResult& WithMessage(const char* value) { SetMessage(value); return *this;} + + + /** + *A description of the reasoning of the result.
+ */ + inline const Aws::VectorA description of the reasoning of the result.
+ */ + inline void SetReasons(const Aws::VectorA description of the reasoning of the result.
+ */ + inline void SetReasons(Aws::VectorA description of the reasoning of the result.
+ */ + inline CheckNoNewAccessSdkResult& WithReasons(const Aws::VectorA description of the reasoning of the result.
+ */ + inline CheckNoNewAccessSdkResult& WithReasons(Aws::VectorA description of the reasoning of the result.
+ */ + inline CheckNoNewAccessSdkResult& AddReasons(const ReasonSummary& value) { m_reasons.push_back(value); return *this; } + + /** + *A description of the reasoning of the result.
+ */ + inline CheckNoNewAccessSdkResult& AddReasons(ReasonSummary&& value) { m_reasons.push_back(std::move(value)); return *this; } + + + + inline const Aws::String& GetRequestId() const{ return m_requestId; } + + + inline void SetRequestId(const Aws::String& value) { m_requestId = value; } + + + inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } + + + inline void SetRequestId(const char* value) { m_requestId.assign(value); } + + + inline CheckNoNewAccessSdkResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} + + + inline CheckNoNewAccessSdkResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} + + + inline CheckNoNewAccessSdkResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} + + private: + + CheckNoNewAccessResult m_result; + + Aws::String m_message; + + Aws::VectorThe type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - * supported. You can create only one analyzer per account per Region. You can - * create up to 5 analyzers per organization per Region.
+ *The type of analyzer to create. Only ACCOUNT
,
+ * ORGANIZATION
, ACCOUNT_UNUSED_ACCESS
, and
+ * ORGANIZTAION_UNUSED_ACCESS
analyzers are supported. You can create
+ * only one analyzer per account per Region. You can create up to 5 analyzers per
+ * organization per Region.
The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - * supported. You can create only one analyzer per account per Region. You can - * create up to 5 analyzers per organization per Region.
+ *The type of analyzer to create. Only ACCOUNT
,
+ * ORGANIZATION
, ACCOUNT_UNUSED_ACCESS
, and
+ * ORGANIZTAION_UNUSED_ACCESS
analyzers are supported. You can create
+ * only one analyzer per account per Region. You can create up to 5 analyzers per
+ * organization per Region.
The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - * supported. You can create only one analyzer per account per Region. You can - * create up to 5 analyzers per organization per Region.
+ *The type of analyzer to create. Only ACCOUNT
,
+ * ORGANIZATION
, ACCOUNT_UNUSED_ACCESS
, and
+ * ORGANIZTAION_UNUSED_ACCESS
analyzers are supported. You can create
+ * only one analyzer per account per Region. You can create up to 5 analyzers per
+ * organization per Region.
The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - * supported. You can create only one analyzer per account per Region. You can - * create up to 5 analyzers per organization per Region.
+ *The type of analyzer to create. Only ACCOUNT
,
+ * ORGANIZATION
, ACCOUNT_UNUSED_ACCESS
, and
+ * ORGANIZTAION_UNUSED_ACCESS
analyzers are supported. You can create
+ * only one analyzer per account per Region. You can create up to 5 analyzers per
+ * organization per Region.
The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - * supported. You can create only one analyzer per account per Region. You can - * create up to 5 analyzers per organization per Region.
+ *The type of analyzer to create. Only ACCOUNT
,
+ * ORGANIZATION
, ACCOUNT_UNUSED_ACCESS
, and
+ * ORGANIZTAION_UNUSED_ACCESS
analyzers are supported. You can create
+ * only one analyzer per account per Region. You can create up to 5 analyzers per
+ * organization per Region.
The type of analyzer to create. Only ACCOUNT and ORGANIZATION analyzers are - * supported. You can create only one analyzer per account per Region. You can - * create up to 5 analyzers per organization per Region.
+ *The type of analyzer to create. Only ACCOUNT
,
+ * ORGANIZATION
, ACCOUNT_UNUSED_ACCESS
, and
+ * ORGANIZTAION_UNUSED_ACCESS
analyzers are supported. You can create
+ * only one analyzer per account per Region. You can create up to 5 analyzers per
+ * organization per Region.
The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline const Aws::MapThe tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline void SetTags(const Aws::MapThe tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline void SetTags(Aws::MapThe tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& WithTags(const Aws::MapThe tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& WithTags(Aws::MapThe tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** - *The tags to apply to the analyzer.
+ *An array of key-value pairs to apply to the analyzer.
*/ inline CreateAnalyzerRequest& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } @@ -287,6 +300,55 @@ namespace Model */ inline CreateAnalyzerRequest& WithClientToken(const char* value) { SetClientToken(value); return *this;} + + /** + *Specifies the configuration of the analyzer. If the analyzer is an unused + * access analyzer, the specified scope of unused access is used for the + * configuration. If the analyzer is an external access analyzer, this field is not + * used.
+ */ + inline const AnalyzerConfiguration& GetConfiguration() const{ return m_configuration; } + + /** + *Specifies the configuration of the analyzer. If the analyzer is an unused + * access analyzer, the specified scope of unused access is used for the + * configuration. If the analyzer is an external access analyzer, this field is not + * used.
+ */ + inline bool ConfigurationHasBeenSet() const { return m_configurationHasBeenSet; } + + /** + *Specifies the configuration of the analyzer. If the analyzer is an unused + * access analyzer, the specified scope of unused access is used for the + * configuration. If the analyzer is an external access analyzer, this field is not + * used.
+ */ + inline void SetConfiguration(const AnalyzerConfiguration& value) { m_configurationHasBeenSet = true; m_configuration = value; } + + /** + *Specifies the configuration of the analyzer. If the analyzer is an unused + * access analyzer, the specified scope of unused access is used for the + * configuration. If the analyzer is an external access analyzer, this field is not + * used.
+ */ + inline void SetConfiguration(AnalyzerConfiguration&& value) { m_configurationHasBeenSet = true; m_configuration = std::move(value); } + + /** + *Specifies the configuration of the analyzer. If the analyzer is an unused + * access analyzer, the specified scope of unused access is used for the + * configuration. If the analyzer is an external access analyzer, this field is not + * used.
+ */ + inline CreateAnalyzerRequest& WithConfiguration(const AnalyzerConfiguration& value) { SetConfiguration(value); return *this;} + + /** + *Specifies the configuration of the analyzer. If the analyzer is an unused + * access analyzer, the specified scope of unused access is used for the + * configuration. If the analyzer is an external access analyzer, this field is not + * used.
+ */ + inline CreateAnalyzerRequest& WithConfiguration(AnalyzerConfiguration&& value) { SetConfiguration(std::move(value)); return *this;} + private: Aws::String m_analyzerName; @@ -303,6 +365,9 @@ namespace Model Aws::String m_clientToken; bool m_clientTokenHasBeenSet = false; + + AnalyzerConfiguration m_configuration; + bool m_configurationHasBeenSet = false; }; } // namespace Model diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/ExternalAccessDetails.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/ExternalAccessDetails.h new file mode 100644 index 00000000000..ad8ad3586ab --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/ExternalAccessDetails.h @@ -0,0 +1,354 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeContains information about an external access finding.
The action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline const Aws::VectorThe action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline bool ActionHasBeenSet() const { return m_actionHasBeenSet; } + + /** + *The action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline void SetAction(const Aws::VectorThe action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline void SetAction(Aws::VectorThe action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline ExternalAccessDetails& WithAction(const Aws::VectorThe action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline ExternalAccessDetails& WithAction(Aws::VectorThe action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline ExternalAccessDetails& AddAction(const Aws::String& value) { m_actionHasBeenSet = true; m_action.push_back(value); return *this; } + + /** + *The action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline ExternalAccessDetails& AddAction(Aws::String&& value) { m_actionHasBeenSet = true; m_action.push_back(std::move(value)); return *this; } + + /** + *The action in the analyzed policy statement that an external principal has + * permission to use.
+ */ + inline ExternalAccessDetails& AddAction(const char* value) { m_actionHasBeenSet = true; m_action.push_back(value); return *this; } + + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline const Aws::MapThe condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline bool ConditionHasBeenSet() const { return m_conditionHasBeenSet; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline void SetCondition(const Aws::MapThe condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline void SetCondition(Aws::MapThe condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& WithCondition(const Aws::MapThe condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& WithCondition(Aws::MapThe condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(const Aws::String& key, const Aws::String& value) { m_conditionHasBeenSet = true; m_condition.emplace(key, value); return *this; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(Aws::String&& key, const Aws::String& value) { m_conditionHasBeenSet = true; m_condition.emplace(std::move(key), value); return *this; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(const Aws::String& key, Aws::String&& value) { m_conditionHasBeenSet = true; m_condition.emplace(key, std::move(value)); return *this; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(Aws::String&& key, Aws::String&& value) { m_conditionHasBeenSet = true; m_condition.emplace(std::move(key), std::move(value)); return *this; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(const char* key, Aws::String&& value) { m_conditionHasBeenSet = true; m_condition.emplace(key, std::move(value)); return *this; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(Aws::String&& key, const char* value) { m_conditionHasBeenSet = true; m_condition.emplace(std::move(key), value); return *this; } + + /** + *The condition in the analyzed policy statement that resulted in an external + * access finding.
+ */ + inline ExternalAccessDetails& AddCondition(const char* key, const char* value) { m_conditionHasBeenSet = true; m_condition.emplace(key, value); return *this; } + + + /** + *Specifies whether the external access finding is public.
+ */ + inline bool GetIsPublic() const{ return m_isPublic; } + + /** + *Specifies whether the external access finding is public.
+ */ + inline bool IsPublicHasBeenSet() const { return m_isPublicHasBeenSet; } + + /** + *Specifies whether the external access finding is public.
+ */ + inline void SetIsPublic(bool value) { m_isPublicHasBeenSet = true; m_isPublic = value; } + + /** + *Specifies whether the external access finding is public.
+ */ + inline ExternalAccessDetails& WithIsPublic(bool value) { SetIsPublic(value); return *this;} + + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline const Aws::MapThe external principal that has access to a resource within the zone of + * trust.
+ */ + inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline void SetPrincipal(const Aws::MapThe external principal that has access to a resource within the zone of + * trust.
+ */ + inline void SetPrincipal(Aws::MapThe external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& WithPrincipal(const Aws::MapThe external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& WithPrincipal(Aws::MapThe external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(const Aws::String& key, const Aws::String& value) { m_principalHasBeenSet = true; m_principal.emplace(key, value); return *this; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(Aws::String&& key, const Aws::String& value) { m_principalHasBeenSet = true; m_principal.emplace(std::move(key), value); return *this; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(const Aws::String& key, Aws::String&& value) { m_principalHasBeenSet = true; m_principal.emplace(key, std::move(value)); return *this; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(Aws::String&& key, Aws::String&& value) { m_principalHasBeenSet = true; m_principal.emplace(std::move(key), std::move(value)); return *this; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(const char* key, Aws::String&& value) { m_principalHasBeenSet = true; m_principal.emplace(key, std::move(value)); return *this; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(Aws::String&& key, const char* value) { m_principalHasBeenSet = true; m_principal.emplace(std::move(key), value); return *this; } + + /** + *The external principal that has access to a resource within the zone of + * trust.
+ */ + inline ExternalAccessDetails& AddPrincipal(const char* key, const char* value) { m_principalHasBeenSet = true; m_principal.emplace(key, value); return *this; } + + + /** + *The sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline const Aws::VectorThe sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline bool SourcesHasBeenSet() const { return m_sourcesHasBeenSet; } + + /** + *The sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline void SetSources(const Aws::VectorThe sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline void SetSources(Aws::VectorThe sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline ExternalAccessDetails& WithSources(const Aws::VectorThe sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline ExternalAccessDetails& WithSources(Aws::VectorThe sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline ExternalAccessDetails& AddSources(const FindingSource& value) { m_sourcesHasBeenSet = true; m_sources.push_back(value); return *this; } + + /** + *The sources of the external access finding. This indicates how the access + * that generated the finding is granted. It is populated for Amazon S3 bucket + * findings.
+ */ + inline ExternalAccessDetails& AddSources(FindingSource&& value) { m_sourcesHasBeenSet = true; m_sources.push_back(std::move(value)); return *this; } + + private: + + Aws::VectorThe external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline const Aws::MapThe external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline bool PrincipalHasBeenSet() const { return m_principalHasBeenSet; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline void SetPrincipal(const Aws::MapThe external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline void SetPrincipal(Aws::MapThe external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& WithPrincipal(const Aws::MapThe external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& WithPrincipal(Aws::MapThe external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(const Aws::String& key, const Aws::String& value) { m_principalHasBeenSet = true; m_principal.emplace(key, value); return *this; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(Aws::String&& key, const Aws::String& value) { m_principalHasBeenSet = true; m_principal.emplace(std::move(key), value); return *this; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(const Aws::String& key, Aws::String&& value) { m_principalHasBeenSet = true; m_principal.emplace(key, std::move(value)); return *this; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(Aws::String&& key, Aws::String&& value) { m_principalHasBeenSet = true; m_principal.emplace(std::move(key), std::move(value)); return *this; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(const char* key, Aws::String&& value) { m_principalHasBeenSet = true; m_principal.emplace(key, std::move(value)); return *this; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(Aws::String&& key, const char* value) { m_principalHasBeenSet = true; m_principal.emplace(std::move(key), value); return *this; } /** - *The external principal that access to a resource within the zone of + *
The external principal that has access to a resource within the zone of * trust.
*/ inline Finding& AddPrincipal(const char* key, const char* value) { m_principalHasBeenSet = true; m_principal.emplace(key, value); return *this; } diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingDetails.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingDetails.h new file mode 100644 index 00000000000..e958d996e59 --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingDetails.h @@ -0,0 +1,244 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeContains information about an external access or unused access finding. Only
+ * one parameter can be used in a FindingDetails
object.
The details for an external access analyzer finding.
+ */ + inline const ExternalAccessDetails& GetExternalAccessDetails() const{ return m_externalAccessDetails; } + + /** + *The details for an external access analyzer finding.
+ */ + inline bool ExternalAccessDetailsHasBeenSet() const { return m_externalAccessDetailsHasBeenSet; } + + /** + *The details for an external access analyzer finding.
+ */ + inline void SetExternalAccessDetails(const ExternalAccessDetails& value) { m_externalAccessDetailsHasBeenSet = true; m_externalAccessDetails = value; } + + /** + *The details for an external access analyzer finding.
+ */ + inline void SetExternalAccessDetails(ExternalAccessDetails&& value) { m_externalAccessDetailsHasBeenSet = true; m_externalAccessDetails = std::move(value); } + + /** + *The details for an external access analyzer finding.
+ */ + inline FindingDetails& WithExternalAccessDetails(const ExternalAccessDetails& value) { SetExternalAccessDetails(value); return *this;} + + /** + *The details for an external access analyzer finding.
+ */ + inline FindingDetails& WithExternalAccessDetails(ExternalAccessDetails&& value) { SetExternalAccessDetails(std::move(value)); return *this;} + + + /** + *The details for an unused access analyzer finding with an unused permission + * finding type.
+ */ + inline const UnusedPermissionDetails& GetUnusedPermissionDetails() const{ return m_unusedPermissionDetails; } + + /** + *The details for an unused access analyzer finding with an unused permission + * finding type.
+ */ + inline bool UnusedPermissionDetailsHasBeenSet() const { return m_unusedPermissionDetailsHasBeenSet; } + + /** + *The details for an unused access analyzer finding with an unused permission + * finding type.
+ */ + inline void SetUnusedPermissionDetails(const UnusedPermissionDetails& value) { m_unusedPermissionDetailsHasBeenSet = true; m_unusedPermissionDetails = value; } + + /** + *The details for an unused access analyzer finding with an unused permission + * finding type.
+ */ + inline void SetUnusedPermissionDetails(UnusedPermissionDetails&& value) { m_unusedPermissionDetailsHasBeenSet = true; m_unusedPermissionDetails = std::move(value); } + + /** + *The details for an unused access analyzer finding with an unused permission + * finding type.
+ */ + inline FindingDetails& WithUnusedPermissionDetails(const UnusedPermissionDetails& value) { SetUnusedPermissionDetails(value); return *this;} + + /** + *The details for an unused access analyzer finding with an unused permission + * finding type.
+ */ + inline FindingDetails& WithUnusedPermissionDetails(UnusedPermissionDetails&& value) { SetUnusedPermissionDetails(std::move(value)); return *this;} + + + /** + *The details for an unused access analyzer finding with an unused IAM user + * access key finding type.
+ */ + inline const UnusedIamUserAccessKeyDetails& GetUnusedIamUserAccessKeyDetails() const{ return m_unusedIamUserAccessKeyDetails; } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * access key finding type.
+ */ + inline bool UnusedIamUserAccessKeyDetailsHasBeenSet() const { return m_unusedIamUserAccessKeyDetailsHasBeenSet; } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * access key finding type.
+ */ + inline void SetUnusedIamUserAccessKeyDetails(const UnusedIamUserAccessKeyDetails& value) { m_unusedIamUserAccessKeyDetailsHasBeenSet = true; m_unusedIamUserAccessKeyDetails = value; } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * access key finding type.
+ */ + inline void SetUnusedIamUserAccessKeyDetails(UnusedIamUserAccessKeyDetails&& value) { m_unusedIamUserAccessKeyDetailsHasBeenSet = true; m_unusedIamUserAccessKeyDetails = std::move(value); } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * access key finding type.
+ */ + inline FindingDetails& WithUnusedIamUserAccessKeyDetails(const UnusedIamUserAccessKeyDetails& value) { SetUnusedIamUserAccessKeyDetails(value); return *this;} + + /** + *The details for an unused access analyzer finding with an unused IAM user + * access key finding type.
+ */ + inline FindingDetails& WithUnusedIamUserAccessKeyDetails(UnusedIamUserAccessKeyDetails&& value) { SetUnusedIamUserAccessKeyDetails(std::move(value)); return *this;} + + + /** + *The details for an unused access analyzer finding with an unused IAM role + * finding type.
+ */ + inline const UnusedIamRoleDetails& GetUnusedIamRoleDetails() const{ return m_unusedIamRoleDetails; } + + /** + *The details for an unused access analyzer finding with an unused IAM role + * finding type.
+ */ + inline bool UnusedIamRoleDetailsHasBeenSet() const { return m_unusedIamRoleDetailsHasBeenSet; } + + /** + *The details for an unused access analyzer finding with an unused IAM role + * finding type.
+ */ + inline void SetUnusedIamRoleDetails(const UnusedIamRoleDetails& value) { m_unusedIamRoleDetailsHasBeenSet = true; m_unusedIamRoleDetails = value; } + + /** + *The details for an unused access analyzer finding with an unused IAM role + * finding type.
+ */ + inline void SetUnusedIamRoleDetails(UnusedIamRoleDetails&& value) { m_unusedIamRoleDetailsHasBeenSet = true; m_unusedIamRoleDetails = std::move(value); } + + /** + *The details for an unused access analyzer finding with an unused IAM role + * finding type.
+ */ + inline FindingDetails& WithUnusedIamRoleDetails(const UnusedIamRoleDetails& value) { SetUnusedIamRoleDetails(value); return *this;} + + /** + *The details for an unused access analyzer finding with an unused IAM role + * finding type.
+ */ + inline FindingDetails& WithUnusedIamRoleDetails(UnusedIamRoleDetails&& value) { SetUnusedIamRoleDetails(std::move(value)); return *this;} + + + /** + *The details for an unused access analyzer finding with an unused IAM user + * password finding type.
+ */ + inline const UnusedIamUserPasswordDetails& GetUnusedIamUserPasswordDetails() const{ return m_unusedIamUserPasswordDetails; } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * password finding type.
+ */ + inline bool UnusedIamUserPasswordDetailsHasBeenSet() const { return m_unusedIamUserPasswordDetailsHasBeenSet; } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * password finding type.
+ */ + inline void SetUnusedIamUserPasswordDetails(const UnusedIamUserPasswordDetails& value) { m_unusedIamUserPasswordDetailsHasBeenSet = true; m_unusedIamUserPasswordDetails = value; } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * password finding type.
+ */ + inline void SetUnusedIamUserPasswordDetails(UnusedIamUserPasswordDetails&& value) { m_unusedIamUserPasswordDetailsHasBeenSet = true; m_unusedIamUserPasswordDetails = std::move(value); } + + /** + *The details for an unused access analyzer finding with an unused IAM user + * password finding type.
+ */ + inline FindingDetails& WithUnusedIamUserPasswordDetails(const UnusedIamUserPasswordDetails& value) { SetUnusedIamUserPasswordDetails(value); return *this;} + + /** + *The details for an unused access analyzer finding with an unused IAM user + * password finding type.
+ */ + inline FindingDetails& WithUnusedIamUserPasswordDetails(UnusedIamUserPasswordDetails&& value) { SetUnusedIamUserPasswordDetails(std::move(value)); return *this;} + + private: + + ExternalAccessDetails m_externalAccessDetails; + bool m_externalAccessDetailsHasBeenSet = false; + + UnusedPermissionDetails m_unusedPermissionDetails; + bool m_unusedPermissionDetailsHasBeenSet = false; + + UnusedIamUserAccessKeyDetails m_unusedIamUserAccessKeyDetails; + bool m_unusedIamUserAccessKeyDetailsHasBeenSet = false; + + UnusedIamRoleDetails m_unusedIamRoleDetails; + bool m_unusedIamRoleDetailsHasBeenSet = false; + + UnusedIamUserPasswordDetails m_unusedIamUserPasswordDetails; + bool m_unusedIamUserPasswordDetailsHasBeenSet = false; + }; + +} // namespace Model +} // namespace AccessAnalyzer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingSummaryV2.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingSummaryV2.h new file mode 100644 index 00000000000..7a711075e77 --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingSummaryV2.h @@ -0,0 +1,434 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeContains information about a finding.
The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline const Aws::Utils::DateTime& GetAnalyzedAt() const{ return m_analyzedAt; } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline bool AnalyzedAtHasBeenSet() const { return m_analyzedAtHasBeenSet; } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline void SetAnalyzedAt(const Aws::Utils::DateTime& value) { m_analyzedAtHasBeenSet = true; m_analyzedAt = value; } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline void SetAnalyzedAt(Aws::Utils::DateTime&& value) { m_analyzedAtHasBeenSet = true; m_analyzedAt = std::move(value); } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline FindingSummaryV2& WithAnalyzedAt(const Aws::Utils::DateTime& value) { SetAnalyzedAt(value); return *this;} + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline FindingSummaryV2& WithAnalyzedAt(Aws::Utils::DateTime&& value) { SetAnalyzedAt(std::move(value)); return *this;} + + + /** + *The time at which the finding was created.
+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *The time at which the finding was created.
+ */ + inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; } + + /** + *The time at which the finding was created.
+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAtHasBeenSet = true; m_createdAt = value; } + + /** + *The time at which the finding was created.
+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::move(value); } + + /** + *The time at which the finding was created.
+ */ + inline FindingSummaryV2& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *The time at which the finding was created.
+ */ + inline FindingSummaryV2& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *The error that resulted in an Error finding.
+ */ + inline const Aws::String& GetError() const{ return m_error; } + + /** + *The error that resulted in an Error finding.
+ */ + inline bool ErrorHasBeenSet() const { return m_errorHasBeenSet; } + + /** + *The error that resulted in an Error finding.
+ */ + inline void SetError(const Aws::String& value) { m_errorHasBeenSet = true; m_error = value; } + + /** + *The error that resulted in an Error finding.
+ */ + inline void SetError(Aws::String&& value) { m_errorHasBeenSet = true; m_error = std::move(value); } + + /** + *The error that resulted in an Error finding.
+ */ + inline void SetError(const char* value) { m_errorHasBeenSet = true; m_error.assign(value); } + + /** + *The error that resulted in an Error finding.
+ */ + inline FindingSummaryV2& WithError(const Aws::String& value) { SetError(value); return *this;} + + /** + *The error that resulted in an Error finding.
+ */ + inline FindingSummaryV2& WithError(Aws::String&& value) { SetError(std::move(value)); return *this;} + + /** + *The error that resulted in an Error finding.
+ */ + inline FindingSummaryV2& WithError(const char* value) { SetError(value); return *this;} + + + /** + *The ID of the finding.
+ */ + inline const Aws::String& GetId() const{ return m_id; } + + /** + *The ID of the finding.
+ */ + inline bool IdHasBeenSet() const { return m_idHasBeenSet; } + + /** + *The ID of the finding.
+ */ + inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } + + /** + *The ID of the finding.
+ */ + inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } + + /** + *The ID of the finding.
+ */ + inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } + + /** + *The ID of the finding.
+ */ + inline FindingSummaryV2& WithId(const Aws::String& value) { SetId(value); return *this;} + + /** + *The ID of the finding.
+ */ + inline FindingSummaryV2& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} + + /** + *The ID of the finding.
+ */ + inline FindingSummaryV2& WithId(const char* value) { SetId(value); return *this;} + + + /** + *The resource that the external principal has access to.
+ */ + inline const Aws::String& GetResource() const{ return m_resource; } + + /** + *The resource that the external principal has access to.
+ */ + inline bool ResourceHasBeenSet() const { return m_resourceHasBeenSet; } + + /** + *The resource that the external principal has access to.
+ */ + inline void SetResource(const Aws::String& value) { m_resourceHasBeenSet = true; m_resource = value; } + + /** + *The resource that the external principal has access to.
+ */ + inline void SetResource(Aws::String&& value) { m_resourceHasBeenSet = true; m_resource = std::move(value); } + + /** + *The resource that the external principal has access to.
+ */ + inline void SetResource(const char* value) { m_resourceHasBeenSet = true; m_resource.assign(value); } + + /** + *The resource that the external principal has access to.
+ */ + inline FindingSummaryV2& WithResource(const Aws::String& value) { SetResource(value); return *this;} + + /** + *The resource that the external principal has access to.
+ */ + inline FindingSummaryV2& WithResource(Aws::String&& value) { SetResource(std::move(value)); return *this;} + + /** + *The resource that the external principal has access to.
+ */ + inline FindingSummaryV2& WithResource(const char* value) { SetResource(value); return *this;} + + + /** + *The type of the resource that the external principal has access to.
+ */ + inline const ResourceType& GetResourceType() const{ return m_resourceType; } + + /** + *The type of the resource that the external principal has access to.
+ */ + inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } + + /** + *The type of the resource that the external principal has access to.
+ */ + inline void SetResourceType(const ResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } + + /** + *The type of the resource that the external principal has access to.
+ */ + inline void SetResourceType(ResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } + + /** + *The type of the resource that the external principal has access to.
+ */ + inline FindingSummaryV2& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;} + + /** + *The type of the resource that the external principal has access to.
+ */ + inline FindingSummaryV2& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;} + + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline const Aws::String& GetResourceOwnerAccount() const{ return m_resourceOwnerAccount; } + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline bool ResourceOwnerAccountHasBeenSet() const { return m_resourceOwnerAccountHasBeenSet; } + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline void SetResourceOwnerAccount(const Aws::String& value) { m_resourceOwnerAccountHasBeenSet = true; m_resourceOwnerAccount = value; } + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline void SetResourceOwnerAccount(Aws::String&& value) { m_resourceOwnerAccountHasBeenSet = true; m_resourceOwnerAccount = std::move(value); } + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline void SetResourceOwnerAccount(const char* value) { m_resourceOwnerAccountHasBeenSet = true; m_resourceOwnerAccount.assign(value); } + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline FindingSummaryV2& WithResourceOwnerAccount(const Aws::String& value) { SetResourceOwnerAccount(value); return *this;} + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline FindingSummaryV2& WithResourceOwnerAccount(Aws::String&& value) { SetResourceOwnerAccount(std::move(value)); return *this;} + + /** + *The Amazon Web Services account ID that owns the resource.
+ */ + inline FindingSummaryV2& WithResourceOwnerAccount(const char* value) { SetResourceOwnerAccount(value); return *this;} + + + /** + *The status of the finding.
+ */ + inline const FindingStatus& GetStatus() const{ return m_status; } + + /** + *The status of the finding.
+ */ + inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } + + /** + *The status of the finding.
+ */ + inline void SetStatus(const FindingStatus& value) { m_statusHasBeenSet = true; m_status = value; } + + /** + *The status of the finding.
+ */ + inline void SetStatus(FindingStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } + + /** + *The status of the finding.
+ */ + inline FindingSummaryV2& WithStatus(const FindingStatus& value) { SetStatus(value); return *this;} + + /** + *The status of the finding.
+ */ + inline FindingSummaryV2& WithStatus(FindingStatus&& value) { SetStatus(std::move(value)); return *this;} + + + /** + *The time at which the finding was most recently updated.
+ */ + inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } + + /** + *The time at which the finding was most recently updated.
+ */ + inline bool UpdatedAtHasBeenSet() const { return m_updatedAtHasBeenSet; } + + /** + *The time at which the finding was most recently updated.
+ */ + inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAtHasBeenSet = true; m_updatedAt = value; } + + /** + *The time at which the finding was most recently updated.
+ */ + inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAtHasBeenSet = true; m_updatedAt = std::move(value); } + + /** + *The time at which the finding was most recently updated.
+ */ + inline FindingSummaryV2& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} + + /** + *The time at which the finding was most recently updated.
+ */ + inline FindingSummaryV2& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} + + + /** + *The type of the external access or unused access finding.
+ */ + inline const FindingType& GetFindingType() const{ return m_findingType; } + + /** + *The type of the external access or unused access finding.
+ */ + inline bool FindingTypeHasBeenSet() const { return m_findingTypeHasBeenSet; } + + /** + *The type of the external access or unused access finding.
+ */ + inline void SetFindingType(const FindingType& value) { m_findingTypeHasBeenSet = true; m_findingType = value; } + + /** + *The type of the external access or unused access finding.
+ */ + inline void SetFindingType(FindingType&& value) { m_findingTypeHasBeenSet = true; m_findingType = std::move(value); } + + /** + *The type of the external access or unused access finding.
+ */ + inline FindingSummaryV2& WithFindingType(const FindingType& value) { SetFindingType(value); return *this;} + + /** + *The type of the external access or unused access finding.
+ */ + inline FindingSummaryV2& WithFindingType(FindingType&& value) { SetFindingType(std::move(value)); return *this;} + + private: + + Aws::Utils::DateTime m_analyzedAt; + bool m_analyzedAtHasBeenSet = false; + + Aws::Utils::DateTime m_createdAt; + bool m_createdAtHasBeenSet = false; + + Aws::String m_error; + bool m_errorHasBeenSet = false; + + Aws::String m_id; + bool m_idHasBeenSet = false; + + Aws::String m_resource; + bool m_resourceHasBeenSet = false; + + ResourceType m_resourceType; + bool m_resourceTypeHasBeenSet = false; + + Aws::String m_resourceOwnerAccount; + bool m_resourceOwnerAccountHasBeenSet = false; + + FindingStatus m_status; + bool m_statusHasBeenSet = false; + + Aws::Utils::DateTime m_updatedAt; + bool m_updatedAtHasBeenSet = false; + + FindingType m_findingType; + bool m_findingTypeHasBeenSet = false; + }; + +} // namespace Model +} // namespace AccessAnalyzer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingType.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingType.h new file mode 100644 index 00000000000..ad843ab466c --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/FindingType.h @@ -0,0 +1,34 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeThe ARN + * of the analyzer that generated the finding.
+ */ + inline const Aws::String& GetAnalyzerArn() const{ return m_analyzerArn; } + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline bool AnalyzerArnHasBeenSet() const { return m_analyzerArnHasBeenSet; } + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline void SetAnalyzerArn(const Aws::String& value) { m_analyzerArnHasBeenSet = true; m_analyzerArn = value; } + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline void SetAnalyzerArn(Aws::String&& value) { m_analyzerArnHasBeenSet = true; m_analyzerArn = std::move(value); } + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline void SetAnalyzerArn(const char* value) { m_analyzerArnHasBeenSet = true; m_analyzerArn.assign(value); } + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline GetFindingV2Request& WithAnalyzerArn(const Aws::String& value) { SetAnalyzerArn(value); return *this;} + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline GetFindingV2Request& WithAnalyzerArn(Aws::String&& value) { SetAnalyzerArn(std::move(value)); return *this;} + + /** + *The ARN + * of the analyzer that generated the finding.
+ */ + inline GetFindingV2Request& WithAnalyzerArn(const char* value) { SetAnalyzerArn(value); return *this;} + + + /** + *The ID of the finding to retrieve.
+ */ + inline const Aws::String& GetId() const{ return m_id; } + + /** + *The ID of the finding to retrieve.
+ */ + inline bool IdHasBeenSet() const { return m_idHasBeenSet; } + + /** + *The ID of the finding to retrieve.
+ */ + inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } + + /** + *The ID of the finding to retrieve.
+ */ + inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } + + /** + *The ID of the finding to retrieve.
+ */ + inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } + + /** + *The ID of the finding to retrieve.
+ */ + inline GetFindingV2Request& WithId(const Aws::String& value) { SetId(value); return *this;} + + /** + *The ID of the finding to retrieve.
+ */ + inline GetFindingV2Request& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} + + /** + *The ID of the finding to retrieve.
+ */ + inline GetFindingV2Request& WithId(const char* value) { SetId(value); return *this;} + + + /** + *The maximum number of results to return in the response.
+ */ + inline int GetMaxResults() const{ return m_maxResults; } + + /** + *The maximum number of results to return in the response.
+ */ + inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } + + /** + *The maximum number of results to return in the response.
+ */ + inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } + + /** + *The maximum number of results to return in the response.
+ */ + inline GetFindingV2Request& WithMaxResults(int value) { SetMaxResults(value); return *this;} + + + /** + *A token used for pagination of results returned.
+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *A token used for pagination of results returned.
+ */ + inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } + + /** + *A token used for pagination of results returned.
+ */ + inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } + + /** + *A token used for pagination of results returned.
+ */ + inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } + + /** + *A token used for pagination of results returned.
+ */ + inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } + + /** + *A token used for pagination of results returned.
+ */ + inline GetFindingV2Request& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *A token used for pagination of results returned.
+ */ + inline GetFindingV2Request& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *A token used for pagination of results returned.
+ */ + inline GetFindingV2Request& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + private: + + Aws::String m_analyzerArn; + bool m_analyzerArnHasBeenSet = false; + + Aws::String m_id; + bool m_idHasBeenSet = false; + + int m_maxResults; + bool m_maxResultsHasBeenSet = false; + + Aws::String m_nextToken; + bool m_nextTokenHasBeenSet = false; + }; + +} // namespace Model +} // namespace AccessAnalyzer +} // namespace Aws diff --git a/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/GetFindingV2Result.h b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/GetFindingV2Result.h new file mode 100644 index 00000000000..6fcea0b525d --- /dev/null +++ b/generated/src/aws-cpp-sdk-accessanalyzer/include/aws/accessanalyzer/model/GetFindingV2Result.h @@ -0,0 +1,492 @@ +/** + * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. + * SPDX-License-Identifier: Apache-2.0. + */ + +#pragma once +#includeThe time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline const Aws::Utils::DateTime& GetAnalyzedAt() const{ return m_analyzedAt; } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline void SetAnalyzedAt(const Aws::Utils::DateTime& value) { m_analyzedAt = value; } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline void SetAnalyzedAt(Aws::Utils::DateTime&& value) { m_analyzedAt = std::move(value); } + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline GetFindingV2Result& WithAnalyzedAt(const Aws::Utils::DateTime& value) { SetAnalyzedAt(value); return *this;} + + /** + *The time at which the resource-based policy or IAM entity that generated the + * finding was analyzed.
+ */ + inline GetFindingV2Result& WithAnalyzedAt(Aws::Utils::DateTime&& value) { SetAnalyzedAt(std::move(value)); return *this;} + + + /** + *The time at which the finding was created.
+ */ + inline const Aws::Utils::DateTime& GetCreatedAt() const{ return m_createdAt; } + + /** + *The time at which the finding was created.
+ */ + inline void SetCreatedAt(const Aws::Utils::DateTime& value) { m_createdAt = value; } + + /** + *The time at which the finding was created.
+ */ + inline void SetCreatedAt(Aws::Utils::DateTime&& value) { m_createdAt = std::move(value); } + + /** + *The time at which the finding was created.
+ */ + inline GetFindingV2Result& WithCreatedAt(const Aws::Utils::DateTime& value) { SetCreatedAt(value); return *this;} + + /** + *The time at which the finding was created.
+ */ + inline GetFindingV2Result& WithCreatedAt(Aws::Utils::DateTime&& value) { SetCreatedAt(std::move(value)); return *this;} + + + /** + *An error.
+ */ + inline const Aws::String& GetError() const{ return m_error; } + + /** + *An error.
+ */ + inline void SetError(const Aws::String& value) { m_error = value; } + + /** + *An error.
+ */ + inline void SetError(Aws::String&& value) { m_error = std::move(value); } + + /** + *An error.
+ */ + inline void SetError(const char* value) { m_error.assign(value); } + + /** + *An error.
+ */ + inline GetFindingV2Result& WithError(const Aws::String& value) { SetError(value); return *this;} + + /** + *An error.
+ */ + inline GetFindingV2Result& WithError(Aws::String&& value) { SetError(std::move(value)); return *this;} + + /** + *An error.
+ */ + inline GetFindingV2Result& WithError(const char* value) { SetError(value); return *this;} + + + /** + *The ID of the finding to retrieve.
+ */ + inline const Aws::String& GetId() const{ return m_id; } + + /** + *The ID of the finding to retrieve.
+ */ + inline void SetId(const Aws::String& value) { m_id = value; } + + /** + *The ID of the finding to retrieve.
+ */ + inline void SetId(Aws::String&& value) { m_id = std::move(value); } + + /** + *The ID of the finding to retrieve.
+ */ + inline void SetId(const char* value) { m_id.assign(value); } + + /** + *The ID of the finding to retrieve.
+ */ + inline GetFindingV2Result& WithId(const Aws::String& value) { SetId(value); return *this;} + + /** + *The ID of the finding to retrieve.
+ */ + inline GetFindingV2Result& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} + + /** + *The ID of the finding to retrieve.
+ */ + inline GetFindingV2Result& WithId(const char* value) { SetId(value); return *this;} + + + /** + *A token used for pagination of results returned.
+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *A token used for pagination of results returned.
+ */ + inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } + + /** + *A token used for pagination of results returned.
+ */ + inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } + + /** + *A token used for pagination of results returned.
+ */ + inline void SetNextToken(const char* value) { m_nextToken.assign(value); } + + /** + *A token used for pagination of results returned.
+ */ + inline GetFindingV2Result& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *A token used for pagination of results returned.
+ */ + inline GetFindingV2Result& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *A token used for pagination of results returned.
+ */ + inline GetFindingV2Result& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + + /** + *The resource that generated the finding.
+ */ + inline const Aws::String& GetResource() const{ return m_resource; } + + /** + *The resource that generated the finding.
+ */ + inline void SetResource(const Aws::String& value) { m_resource = value; } + + /** + *The resource that generated the finding.
+ */ + inline void SetResource(Aws::String&& value) { m_resource = std::move(value); } + + /** + *The resource that generated the finding.
+ */ + inline void SetResource(const char* value) { m_resource.assign(value); } + + /** + *The resource that generated the finding.
+ */ + inline GetFindingV2Result& WithResource(const Aws::String& value) { SetResource(value); return *this;} + + /** + *The resource that generated the finding.
+ */ + inline GetFindingV2Result& WithResource(Aws::String&& value) { SetResource(std::move(value)); return *this;} + + /** + *The resource that generated the finding.
+ */ + inline GetFindingV2Result& WithResource(const char* value) { SetResource(value); return *this;} + + + /** + *The type of the resource identified in the finding.
+ */ + inline const ResourceType& GetResourceType() const{ return m_resourceType; } + + /** + *The type of the resource identified in the finding.
+ */ + inline void SetResourceType(const ResourceType& value) { m_resourceType = value; } + + /** + *The type of the resource identified in the finding.
+ */ + inline void SetResourceType(ResourceType&& value) { m_resourceType = std::move(value); } + + /** + *The type of the resource identified in the finding.
+ */ + inline GetFindingV2Result& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;} + + /** + *The type of the resource identified in the finding.
+ */ + inline GetFindingV2Result& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;} + + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline const Aws::String& GetResourceOwnerAccount() const{ return m_resourceOwnerAccount; } + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline void SetResourceOwnerAccount(const Aws::String& value) { m_resourceOwnerAccount = value; } + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline void SetResourceOwnerAccount(Aws::String&& value) { m_resourceOwnerAccount = std::move(value); } + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline void SetResourceOwnerAccount(const char* value) { m_resourceOwnerAccount.assign(value); } + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline GetFindingV2Result& WithResourceOwnerAccount(const Aws::String& value) { SetResourceOwnerAccount(value); return *this;} + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline GetFindingV2Result& WithResourceOwnerAccount(Aws::String&& value) { SetResourceOwnerAccount(std::move(value)); return *this;} + + /** + *Tye Amazon Web Services account ID that owns the resource.
+ */ + inline GetFindingV2Result& WithResourceOwnerAccount(const char* value) { SetResourceOwnerAccount(value); return *this;} + + + /** + *The status of the finding.
+ */ + inline const FindingStatus& GetStatus() const{ return m_status; } + + /** + *The status of the finding.
+ */ + inline void SetStatus(const FindingStatus& value) { m_status = value; } + + /** + *The status of the finding.
+ */ + inline void SetStatus(FindingStatus&& value) { m_status = std::move(value); } + + /** + *The status of the finding.
+ */ + inline GetFindingV2Result& WithStatus(const FindingStatus& value) { SetStatus(value); return *this;} + + /** + *The status of the finding.
+ */ + inline GetFindingV2Result& WithStatus(FindingStatus&& value) { SetStatus(std::move(value)); return *this;} + + + /** + *The time at which the finding was updated.
+ */ + inline const Aws::Utils::DateTime& GetUpdatedAt() const{ return m_updatedAt; } + + /** + *The time at which the finding was updated.
+ */ + inline void SetUpdatedAt(const Aws::Utils::DateTime& value) { m_updatedAt = value; } + + /** + *The time at which the finding was updated.
+ */ + inline void SetUpdatedAt(Aws::Utils::DateTime&& value) { m_updatedAt = std::move(value); } + + /** + *The time at which the finding was updated.
+ */ + inline GetFindingV2Result& WithUpdatedAt(const Aws::Utils::DateTime& value) { SetUpdatedAt(value); return *this;} + + /** + *The time at which the finding was updated.
+ */ + inline GetFindingV2Result& WithUpdatedAt(Aws::Utils::DateTime&& value) { SetUpdatedAt(std::move(value)); return *this;} + + + /** + *A localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline const Aws::VectorA localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline void SetFindingDetails(const Aws::VectorA localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline void SetFindingDetails(Aws::VectorA localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline GetFindingV2Result& WithFindingDetails(const Aws::VectorA localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline GetFindingV2Result& WithFindingDetails(Aws::VectorA localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline GetFindingV2Result& AddFindingDetails(const FindingDetails& value) { m_findingDetails.push_back(value); return *this; } + + /** + *A localized message that explains the finding and provides guidance on how to + * address it.
+ */ + inline GetFindingV2Result& AddFindingDetails(FindingDetails&& value) { m_findingDetails.push_back(std::move(value)); return *this; } + + + /** + *The type of the finding. For external access analyzers, the type is + *