Skip to content

Commit d6b0058

Browse files
author
awstools
committed
feat(client-cloudwatch-logs): This change adds support for account level data protection policies using 3 new APIs, PutAccountPolicy, DeleteAccountPolicy and DescribeAccountPolicy. DescribeLogGroup API has been modified to indicate if account level policy is applied to the LogGroup via "inheritedProperties" list in the response.
1 parent 1f9abd0 commit d6b0058

19 files changed

+2115
-1605
lines changed

clients/client-cloudwatch-logs/README.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,14 @@ CreateLogStream
276276

277277
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/classes/createlogstreamcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/createlogstreamcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/createlogstreamcommandoutput.html)
278278

279+
</details>
280+
<details>
281+
<summary>
282+
DeleteAccountPolicy
283+
</summary>
284+
285+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/classes/deleteaccountpolicycommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/deleteaccountpolicycommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/deleteaccountpolicycommandoutput.html)
286+
279287
</details>
280288
<details>
281289
<summary>
@@ -348,6 +356,14 @@ DeleteSubscriptionFilter
348356

349357
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/classes/deletesubscriptionfiltercommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/deletesubscriptionfiltercommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/deletesubscriptionfiltercommandoutput.html)
350358

359+
</details>
360+
<details>
361+
<summary>
362+
DescribeAccountPolicies
363+
</summary>
364+
365+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/classes/describeaccountpoliciescommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/describeaccountpoliciescommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/describeaccountpoliciescommandoutput.html)
366+
351367
</details>
352368
<details>
353369
<summary>
@@ -492,6 +508,14 @@ ListTagsLogGroup
492508

493509
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/classes/listtagsloggroupcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/listtagsloggroupcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/listtagsloggroupcommandoutput.html)
494510

511+
</details>
512+
<details>
513+
<summary>
514+
PutAccountPolicy
515+
</summary>
516+
517+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/classes/putaccountpolicycommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/putaccountpolicycommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-cloudwatch-logs/interfaces/putaccountpolicycommandoutput.html)
518+
495519
</details>
496520
<details>
497521
<summary>

clients/client-cloudwatch-logs/src/CloudWatchLogs.ts

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,11 @@ import {
2828
CreateLogStreamCommandInput,
2929
CreateLogStreamCommandOutput,
3030
} from "./commands/CreateLogStreamCommand";
31+
import {
32+
DeleteAccountPolicyCommand,
33+
DeleteAccountPolicyCommandInput,
34+
DeleteAccountPolicyCommandOutput,
35+
} from "./commands/DeleteAccountPolicyCommand";
3136
import {
3237
DeleteDataProtectionPolicyCommand,
3338
DeleteDataProtectionPolicyCommandInput,
@@ -73,6 +78,11 @@ import {
7378
DeleteSubscriptionFilterCommandInput,
7479
DeleteSubscriptionFilterCommandOutput,
7580
} from "./commands/DeleteSubscriptionFilterCommand";
81+
import {
82+
DescribeAccountPoliciesCommand,
83+
DescribeAccountPoliciesCommandInput,
84+
DescribeAccountPoliciesCommandOutput,
85+
} from "./commands/DescribeAccountPoliciesCommand";
7686
import {
7787
DescribeDestinationsCommand,
7888
DescribeDestinationsCommandInput,
@@ -163,6 +173,11 @@ import {
163173
ListTagsLogGroupCommandInput,
164174
ListTagsLogGroupCommandOutput,
165175
} from "./commands/ListTagsLogGroupCommand";
176+
import {
177+
PutAccountPolicyCommand,
178+
PutAccountPolicyCommandInput,
179+
PutAccountPolicyCommandOutput,
180+
} from "./commands/PutAccountPolicyCommand";
166181
import {
167182
PutDataProtectionPolicyCommand,
168183
PutDataProtectionPolicyCommandInput,
@@ -234,6 +249,7 @@ const commands = {
234249
CreateExportTaskCommand,
235250
CreateLogGroupCommand,
236251
CreateLogStreamCommand,
252+
DeleteAccountPolicyCommand,
237253
DeleteDataProtectionPolicyCommand,
238254
DeleteDestinationCommand,
239255
DeleteLogGroupCommand,
@@ -243,6 +259,7 @@ const commands = {
243259
DeleteResourcePolicyCommand,
244260
DeleteRetentionPolicyCommand,
245261
DeleteSubscriptionFilterCommand,
262+
DescribeAccountPoliciesCommand,
246263
DescribeDestinationsCommand,
247264
DescribeExportTasksCommand,
248265
DescribeLogGroupsCommand,
@@ -261,6 +278,7 @@ const commands = {
261278
GetQueryResultsCommand,
262279
ListTagsForResourceCommand,
263280
ListTagsLogGroupCommand,
281+
PutAccountPolicyCommand,
264282
PutDataProtectionPolicyCommand,
265283
PutDestinationCommand,
266284
PutDestinationPolicyCommand,
@@ -356,6 +374,23 @@ export interface CloudWatchLogs {
356374
cb: (err: any, data?: CreateLogStreamCommandOutput) => void
357375
): void;
358376

377+
/**
378+
* @see {@link DeleteAccountPolicyCommand}
379+
*/
380+
deleteAccountPolicy(
381+
args: DeleteAccountPolicyCommandInput,
382+
options?: __HttpHandlerOptions
383+
): Promise<DeleteAccountPolicyCommandOutput>;
384+
deleteAccountPolicy(
385+
args: DeleteAccountPolicyCommandInput,
386+
cb: (err: any, data?: DeleteAccountPolicyCommandOutput) => void
387+
): void;
388+
deleteAccountPolicy(
389+
args: DeleteAccountPolicyCommandInput,
390+
options: __HttpHandlerOptions,
391+
cb: (err: any, data?: DeleteAccountPolicyCommandOutput) => void
392+
): void;
393+
359394
/**
360395
* @see {@link DeleteDataProtectionPolicyCommand}
361396
*/
@@ -503,6 +538,23 @@ export interface CloudWatchLogs {
503538
cb: (err: any, data?: DeleteSubscriptionFilterCommandOutput) => void
504539
): void;
505540

541+
/**
542+
* @see {@link DescribeAccountPoliciesCommand}
543+
*/
544+
describeAccountPolicies(
545+
args: DescribeAccountPoliciesCommandInput,
546+
options?: __HttpHandlerOptions
547+
): Promise<DescribeAccountPoliciesCommandOutput>;
548+
describeAccountPolicies(
549+
args: DescribeAccountPoliciesCommandInput,
550+
cb: (err: any, data?: DescribeAccountPoliciesCommandOutput) => void
551+
): void;
552+
describeAccountPolicies(
553+
args: DescribeAccountPoliciesCommandInput,
554+
options: __HttpHandlerOptions,
555+
cb: (err: any, data?: DescribeAccountPoliciesCommandOutput) => void
556+
): void;
557+
506558
/**
507559
* @see {@link DescribeDestinationsCommand}
508560
*/
@@ -788,6 +840,23 @@ export interface CloudWatchLogs {
788840
cb: (err: any, data?: ListTagsLogGroupCommandOutput) => void
789841
): void;
790842

843+
/**
844+
* @see {@link PutAccountPolicyCommand}
845+
*/
846+
putAccountPolicy(
847+
args: PutAccountPolicyCommandInput,
848+
options?: __HttpHandlerOptions
849+
): Promise<PutAccountPolicyCommandOutput>;
850+
putAccountPolicy(
851+
args: PutAccountPolicyCommandInput,
852+
cb: (err: any, data?: PutAccountPolicyCommandOutput) => void
853+
): void;
854+
putAccountPolicy(
855+
args: PutAccountPolicyCommandInput,
856+
options: __HttpHandlerOptions,
857+
cb: (err: any, data?: PutAccountPolicyCommandOutput) => void
858+
): void;
859+
791860
/**
792861
* @see {@link PutDataProtectionPolicyCommand}
793862
*/

clients/client-cloudwatch-logs/src/CloudWatchLogsClient.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ import { CancelExportTaskCommandInput, CancelExportTaskCommandOutput } from "./c
5656
import { CreateExportTaskCommandInput, CreateExportTaskCommandOutput } from "./commands/CreateExportTaskCommand";
5757
import { CreateLogGroupCommandInput, CreateLogGroupCommandOutput } from "./commands/CreateLogGroupCommand";
5858
import { CreateLogStreamCommandInput, CreateLogStreamCommandOutput } from "./commands/CreateLogStreamCommand";
59+
import {
60+
DeleteAccountPolicyCommandInput,
61+
DeleteAccountPolicyCommandOutput,
62+
} from "./commands/DeleteAccountPolicyCommand";
5963
import {
6064
DeleteDataProtectionPolicyCommandInput,
6165
DeleteDataProtectionPolicyCommandOutput,
@@ -80,6 +84,10 @@ import {
8084
DeleteSubscriptionFilterCommandInput,
8185
DeleteSubscriptionFilterCommandOutput,
8286
} from "./commands/DeleteSubscriptionFilterCommand";
87+
import {
88+
DescribeAccountPoliciesCommandInput,
89+
DescribeAccountPoliciesCommandOutput,
90+
} from "./commands/DescribeAccountPoliciesCommand";
8391
import {
8492
DescribeDestinationsCommandInput,
8593
DescribeDestinationsCommandOutput,
@@ -122,6 +130,7 @@ import {
122130
ListTagsForResourceCommandOutput,
123131
} from "./commands/ListTagsForResourceCommand";
124132
import { ListTagsLogGroupCommandInput, ListTagsLogGroupCommandOutput } from "./commands/ListTagsLogGroupCommand";
133+
import { PutAccountPolicyCommandInput, PutAccountPolicyCommandOutput } from "./commands/PutAccountPolicyCommand";
125134
import {
126135
PutDataProtectionPolicyCommandInput,
127136
PutDataProtectionPolicyCommandOutput,
@@ -166,6 +175,7 @@ export type ServiceInputTypes =
166175
| CreateExportTaskCommandInput
167176
| CreateLogGroupCommandInput
168177
| CreateLogStreamCommandInput
178+
| DeleteAccountPolicyCommandInput
169179
| DeleteDataProtectionPolicyCommandInput
170180
| DeleteDestinationCommandInput
171181
| DeleteLogGroupCommandInput
@@ -175,6 +185,7 @@ export type ServiceInputTypes =
175185
| DeleteResourcePolicyCommandInput
176186
| DeleteRetentionPolicyCommandInput
177187
| DeleteSubscriptionFilterCommandInput
188+
| DescribeAccountPoliciesCommandInput
178189
| DescribeDestinationsCommandInput
179190
| DescribeExportTasksCommandInput
180191
| DescribeLogGroupsCommandInput
@@ -193,6 +204,7 @@ export type ServiceInputTypes =
193204
| GetQueryResultsCommandInput
194205
| ListTagsForResourceCommandInput
195206
| ListTagsLogGroupCommandInput
207+
| PutAccountPolicyCommandInput
196208
| PutDataProtectionPolicyCommandInput
197209
| PutDestinationCommandInput
198210
| PutDestinationPolicyCommandInput
@@ -219,6 +231,7 @@ export type ServiceOutputTypes =
219231
| CreateExportTaskCommandOutput
220232
| CreateLogGroupCommandOutput
221233
| CreateLogStreamCommandOutput
234+
| DeleteAccountPolicyCommandOutput
222235
| DeleteDataProtectionPolicyCommandOutput
223236
| DeleteDestinationCommandOutput
224237
| DeleteLogGroupCommandOutput
@@ -228,6 +241,7 @@ export type ServiceOutputTypes =
228241
| DeleteResourcePolicyCommandOutput
229242
| DeleteRetentionPolicyCommandOutput
230243
| DeleteSubscriptionFilterCommandOutput
244+
| DescribeAccountPoliciesCommandOutput
231245
| DescribeDestinationsCommandOutput
232246
| DescribeExportTasksCommandOutput
233247
| DescribeLogGroupsCommandOutput
@@ -246,6 +260,7 @@ export type ServiceOutputTypes =
246260
| GetQueryResultsCommandOutput
247261
| ListTagsForResourceCommandOutput
248262
| ListTagsLogGroupCommandOutput
263+
| PutAccountPolicyCommandOutput
249264
| PutDataProtectionPolicyCommandOutput
250265
| PutDestinationCommandOutput
251266
| PutDestinationPolicyCommandOutput

clients/client-cloudwatch-logs/src/commands/CreateLogGroupCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export interface CreateLogGroupCommandOutput extends __MetadataBearer {}
5858
* encrypted using the KMS key. This association is stored as long as the data
5959
* encrypted with the KMS key is still within CloudWatch Logs. This enables
6060
* CloudWatch Logs to decrypt this data whenever it is requested.</p>
61-
* <p>If you attempt to associate a KMS key with the log group but the KMS keydoes not exist or the KMS key is disabled, you receive an
61+
* <p>If you attempt to associate a KMS key with the log group but the KMS key does not exist or the KMS key is disabled, you receive an
6262
* <code>InvalidParameterException</code> error. </p>
6363
* <important>
6464
* <p>CloudWatch Logs supports only symmetric KMS keys. Do not associate an

0 commit comments

Comments
 (0)