Skip to content

Commit

Permalink
AMB Query: update GetTransaction to include transactionId as input
Browse files Browse the repository at this point in the history
This release adds support for new webhook events (RELEASED and PRERELEASED) and filter types (TAG_NAME and RELEASE_NAME).
Introducing the Savings Plans Return feature enabling customers to return their Savings Plans within 7 days of purchase.
This release updates the *InstanceStorageConfig APIs to support a new ResourceType: REAL_TIME_CONTACT_ANALYSIS_CHAT_SEGMENTS. Use this resource type to enable streaming for real-time analysis of chat contacts and to associate a Kinesis stream where real-time analysis chat segments will be published.
This release adds support for policy validation and external access findings for DynamoDB tables and streams. IAM Access Analyzer helps you author functional and secure resource-based policies and identify cross-account access. Updated service API, documentation, and paginators.
This release introduces 3 new APIs ('GetResourcePolicy', 'PutResourcePolicy' and 'DeleteResourcePolicy') and modifies the existing 'CreateTable' API for the resource-based policy support. It also modifies several APIs to accept a 'TableArn' for the 'TableName' parameter.
  • Loading branch information
aws-sdk-cpp-automation committed Mar 20, 2024
1 parent e5134ae commit 53259b8
Show file tree
Hide file tree
Showing 107 changed files with 4,762 additions and 1,205 deletions.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.11.289
1.11.290
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
#include <aws/accessanalyzer/model/SnsTopicConfiguration.h>
#include <aws/accessanalyzer/model/SqsQueueConfiguration.h>
#include <aws/accessanalyzer/model/S3ExpressDirectoryBucketConfiguration.h>
#include <aws/accessanalyzer/model/DynamodbStreamConfiguration.h>
#include <aws/accessanalyzer/model/DynamodbTableConfiguration.h>
#include <utility>

namespace Aws
Expand Down Expand Up @@ -427,6 +429,68 @@ namespace Model
*/
inline Configuration& WithS3ExpressDirectoryBucket(S3ExpressDirectoryBucketConfiguration&& value) { SetS3ExpressDirectoryBucket(std::move(value)); return *this;}


/**
* <p>The access control configuration is for a DynamoDB stream.</p>
*/
inline const DynamodbStreamConfiguration& GetDynamodbStream() const{ return m_dynamodbStream; }

/**
* <p>The access control configuration is for a DynamoDB stream.</p>
*/
inline bool DynamodbStreamHasBeenSet() const { return m_dynamodbStreamHasBeenSet; }

/**
* <p>The access control configuration is for a DynamoDB stream.</p>
*/
inline void SetDynamodbStream(const DynamodbStreamConfiguration& value) { m_dynamodbStreamHasBeenSet = true; m_dynamodbStream = value; }

/**
* <p>The access control configuration is for a DynamoDB stream.</p>
*/
inline void SetDynamodbStream(DynamodbStreamConfiguration&& value) { m_dynamodbStreamHasBeenSet = true; m_dynamodbStream = std::move(value); }

/**
* <p>The access control configuration is for a DynamoDB stream.</p>
*/
inline Configuration& WithDynamodbStream(const DynamodbStreamConfiguration& value) { SetDynamodbStream(value); return *this;}

/**
* <p>The access control configuration is for a DynamoDB stream.</p>
*/
inline Configuration& WithDynamodbStream(DynamodbStreamConfiguration&& value) { SetDynamodbStream(std::move(value)); return *this;}


/**
* <p>The access control configuration is for a DynamoDB table or index.</p>
*/
inline const DynamodbTableConfiguration& GetDynamodbTable() const{ return m_dynamodbTable; }

/**
* <p>The access control configuration is for a DynamoDB table or index.</p>
*/
inline bool DynamodbTableHasBeenSet() const { return m_dynamodbTableHasBeenSet; }

/**
* <p>The access control configuration is for a DynamoDB table or index.</p>
*/
inline void SetDynamodbTable(const DynamodbTableConfiguration& value) { m_dynamodbTableHasBeenSet = true; m_dynamodbTable = value; }

/**
* <p>The access control configuration is for a DynamoDB table or index.</p>
*/
inline void SetDynamodbTable(DynamodbTableConfiguration&& value) { m_dynamodbTableHasBeenSet = true; m_dynamodbTable = std::move(value); }

/**
* <p>The access control configuration is for a DynamoDB table or index.</p>
*/
inline Configuration& WithDynamodbTable(const DynamodbTableConfiguration& value) { SetDynamodbTable(value); return *this;}

/**
* <p>The access control configuration is for a DynamoDB table or index.</p>
*/
inline Configuration& WithDynamodbTable(DynamodbTableConfiguration&& value) { SetDynamodbTable(std::move(value)); return *this;}

private:

EbsSnapshotConfiguration m_ebsSnapshot;
Expand Down Expand Up @@ -464,6 +528,12 @@ namespace Model

S3ExpressDirectoryBucketConfiguration m_s3ExpressDirectoryBucket;
bool m_s3ExpressDirectoryBucketHasBeenSet = false;

DynamodbStreamConfiguration m_dynamodbStream;
bool m_dynamodbStreamHasBeenSet = false;

DynamodbTableConfiguration m_dynamodbTable;
bool m_dynamodbTableHasBeenSet = false;
};

} // namespace Model
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/

#pragma once
#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>

namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace AccessAnalyzer
{
namespace Model
{

/**
* <p>The proposed access control configuration for a DynamoDB stream. You can
* propose a configuration for a new DynamoDB stream or an existing DynamoDB stream
* that you own by specifying the policy for the DynamoDB stream. For more
* information, see <a
* href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutResourcePolicy.html">PutResourcePolicy</a>.</p>
* <ul> <li> <p>If the configuration is for an existing DynamoDB stream and you do
* not specify the DynamoDB policy, then the access preview uses the existing
* DynamoDB policy for the stream.</p> </li> <li> <p>If the access preview is for a
* new resource and you do not specify the policy, then the access preview assumes
* a DynamoDB stream without a policy.</p> </li> <li> <p>To propose deletion of an
* existing DynamoDB stream policy, you can specify an empty string for the
* DynamoDB policy.</p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/DynamodbStreamConfiguration">AWS
* API Reference</a></p>
*/
class DynamodbStreamConfiguration
{
public:
AWS_ACCESSANALYZER_API DynamodbStreamConfiguration();
AWS_ACCESSANALYZER_API DynamodbStreamConfiguration(Aws::Utils::Json::JsonView jsonValue);
AWS_ACCESSANALYZER_API DynamodbStreamConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const;


/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline const Aws::String& GetStreamPolicy() const{ return m_streamPolicy; }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline bool StreamPolicyHasBeenSet() const { return m_streamPolicyHasBeenSet; }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline void SetStreamPolicy(const Aws::String& value) { m_streamPolicyHasBeenSet = true; m_streamPolicy = value; }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline void SetStreamPolicy(Aws::String&& value) { m_streamPolicyHasBeenSet = true; m_streamPolicy = std::move(value); }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline void SetStreamPolicy(const char* value) { m_streamPolicyHasBeenSet = true; m_streamPolicy.assign(value); }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline DynamodbStreamConfiguration& WithStreamPolicy(const Aws::String& value) { SetStreamPolicy(value); return *this;}

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline DynamodbStreamConfiguration& WithStreamPolicy(Aws::String&& value) { SetStreamPolicy(std::move(value)); return *this;}

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* stream.</p>
*/
inline DynamodbStreamConfiguration& WithStreamPolicy(const char* value) { SetStreamPolicy(value); return *this;}

private:

Aws::String m_streamPolicy;
bool m_streamPolicyHasBeenSet = false;
};

} // namespace Model
} // namespace AccessAnalyzer
} // namespace Aws
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/

#pragma once
#include <aws/accessanalyzer/AccessAnalyzer_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>

namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace AccessAnalyzer
{
namespace Model
{

/**
* <p>The proposed access control configuration for a DynamoDB table or index. You
* can propose a configuration for a new DynamoDB table or index or an existing
* DynamoDB table or index that you own by specifying the policy for the DynamoDB
* table or index. For more information, see <a
* href="https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutResourcePolicy.html">PutResourcePolicy</a>.</p>
* <ul> <li> <p>If the configuration is for an existing DynamoDB table or index and
* you do not specify the DynamoDB policy, then the access preview uses the
* existing DynamoDB policy for the table or index.</p> </li> <li> <p>If the access
* preview is for a new resource and you do not specify the policy, then the access
* preview assumes a DynamoDB table without a policy.</p> </li> <li> <p>To propose
* deletion of an existing DynamoDB table or index policy, you can specify an empty
* string for the DynamoDB policy.</p> </li> </ul><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/DynamodbTableConfiguration">AWS
* API Reference</a></p>
*/
class DynamodbTableConfiguration
{
public:
AWS_ACCESSANALYZER_API DynamodbTableConfiguration();
AWS_ACCESSANALYZER_API DynamodbTableConfiguration(Aws::Utils::Json::JsonView jsonValue);
AWS_ACCESSANALYZER_API DynamodbTableConfiguration& operator=(Aws::Utils::Json::JsonView jsonValue);
AWS_ACCESSANALYZER_API Aws::Utils::Json::JsonValue Jsonize() const;


/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline const Aws::String& GetTablePolicy() const{ return m_tablePolicy; }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline bool TablePolicyHasBeenSet() const { return m_tablePolicyHasBeenSet; }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline void SetTablePolicy(const Aws::String& value) { m_tablePolicyHasBeenSet = true; m_tablePolicy = value; }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline void SetTablePolicy(Aws::String&& value) { m_tablePolicyHasBeenSet = true; m_tablePolicy = std::move(value); }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline void SetTablePolicy(const char* value) { m_tablePolicyHasBeenSet = true; m_tablePolicy.assign(value); }

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline DynamodbTableConfiguration& WithTablePolicy(const Aws::String& value) { SetTablePolicy(value); return *this;}

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline DynamodbTableConfiguration& WithTablePolicy(Aws::String&& value) { SetTablePolicy(std::move(value)); return *this;}

/**
* <p>The proposed resource policy defining who can access or manage the DynamoDB
* table.</p>
*/
inline DynamodbTableConfiguration& WithTablePolicy(const char* value) { SetTablePolicy(value); return *this;}

private:

Aws::String m_tablePolicy;
bool m_tablePolicyHasBeenSet = false;
};

} // namespace Model
} // namespace AccessAnalyzer
} // namespace Aws
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,9 @@ namespace Model
AWS_RDS_DBSnapshot,
AWS_RDS_DBClusterSnapshot,
AWS_SNS_Topic,
AWS_S3Express_DirectoryBucket
AWS_S3Express_DirectoryBucket,
AWS_DynamoDB_Table,
AWS_DynamoDB_Stream
};

namespace ResourceTypeMapper
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ namespace Model
AWS_S3_AccessPoint,
AWS_S3_MultiRegionAccessPoint,
AWS_S3ObjectLambda_AccessPoint,
AWS_IAM_AssumeRolePolicyDocument
AWS_IAM_AssumeRolePolicyDocument,
AWS_DynamoDB_Table
};

namespace ValidatePolicyResourceTypeMapper
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,9 @@ Configuration::Configuration() :
m_s3BucketHasBeenSet(false),
m_snsTopicHasBeenSet(false),
m_sqsQueueHasBeenSet(false),
m_s3ExpressDirectoryBucketHasBeenSet(false)
m_s3ExpressDirectoryBucketHasBeenSet(false),
m_dynamodbStreamHasBeenSet(false),
m_dynamodbTableHasBeenSet(false)
{
}

Expand All @@ -46,7 +48,9 @@ Configuration::Configuration(JsonView jsonValue) :
m_s3BucketHasBeenSet(false),
m_snsTopicHasBeenSet(false),
m_sqsQueueHasBeenSet(false),
m_s3ExpressDirectoryBucketHasBeenSet(false)
m_s3ExpressDirectoryBucketHasBeenSet(false),
m_dynamodbStreamHasBeenSet(false),
m_dynamodbTableHasBeenSet(false)
{
*this = jsonValue;
}
Expand Down Expand Up @@ -137,6 +141,20 @@ Configuration& Configuration::operator =(JsonView jsonValue)
m_s3ExpressDirectoryBucketHasBeenSet = true;
}

if(jsonValue.ValueExists("dynamodbStream"))
{
m_dynamodbStream = jsonValue.GetObject("dynamodbStream");

m_dynamodbStreamHasBeenSet = true;
}

if(jsonValue.ValueExists("dynamodbTable"))
{
m_dynamodbTable = jsonValue.GetObject("dynamodbTable");

m_dynamodbTableHasBeenSet = true;
}

return *this;
}

Expand Down Expand Up @@ -216,6 +234,18 @@ JsonValue Configuration::Jsonize() const

}

if(m_dynamodbStreamHasBeenSet)
{
payload.WithObject("dynamodbStream", m_dynamodbStream.Jsonize());

}

if(m_dynamodbTableHasBeenSet)
{
payload.WithObject("dynamodbTable", m_dynamodbTable.Jsonize());

}

return payload;
}

Expand Down
Loading

0 comments on commit 53259b8

Please sign in to comment.