Skip to content

Commit 567956e

Browse files
author
awstools
committed
feat(client-s3-control): Amazon S3 adds support for S3 Access Points for directory buckets in AWS Dedicated Local Zones
1 parent 3740252 commit 567956e

27 files changed

+5011
-2103
lines changed

clients/client-s3-control/README.md

+32
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,14 @@ DeleteAccessPointPolicyForObjectLambda
346346

347347
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/DeleteAccessPointPolicyForObjectLambdaCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/DeleteAccessPointPolicyForObjectLambdaCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/DeleteAccessPointPolicyForObjectLambdaCommandOutput/)
348348

349+
</details>
350+
<details>
351+
<summary>
352+
DeleteAccessPointScope
353+
</summary>
354+
355+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/DeleteAccessPointScopeCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/DeleteAccessPointScopeCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/DeleteAccessPointScopeCommandOutput/)
356+
349357
</details>
350358
<details>
351359
<summary>
@@ -554,6 +562,14 @@ GetAccessPointPolicyStatusForObjectLambda
554562

555563
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/GetAccessPointPolicyStatusForObjectLambdaCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/GetAccessPointPolicyStatusForObjectLambdaCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/GetAccessPointPolicyStatusForObjectLambdaCommandOutput/)
556564

565+
</details>
566+
<details>
567+
<summary>
568+
GetAccessPointScope
569+
</summary>
570+
571+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/GetAccessPointScopeCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/GetAccessPointScopeCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/GetAccessPointScopeCommandOutput/)
572+
557573
</details>
558574
<details>
559575
<summary>
@@ -714,6 +730,14 @@ ListAccessPoints
714730

715731
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/ListAccessPointsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/ListAccessPointsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/ListAccessPointsCommandOutput/)
716732

733+
</details>
734+
<details>
735+
<summary>
736+
ListAccessPointsForDirectoryBuckets
737+
</summary>
738+
739+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/ListAccessPointsForDirectoryBucketsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/ListAccessPointsForDirectoryBucketsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/ListAccessPointsForDirectoryBucketsCommandOutput/)
740+
717741
</details>
718742
<details>
719743
<summary>
@@ -810,6 +834,14 @@ PutAccessPointPolicyForObjectLambda
810834

811835
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/PutAccessPointPolicyForObjectLambdaCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/PutAccessPointPolicyForObjectLambdaCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/PutAccessPointPolicyForObjectLambdaCommandOutput/)
812836

837+
</details>
838+
<details>
839+
<summary>
840+
PutAccessPointScope
841+
</summary>
842+
843+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/s3-control/command/PutAccessPointScopeCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/PutAccessPointScopeCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-s3-control/Interface/PutAccessPointScopeCommandOutput/)
844+
813845
</details>
814846
<details>
815847
<summary>

clients/client-s3-control/src/S3Control.ts

+93
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,11 @@ import {
8888
DeleteAccessPointPolicyForObjectLambdaCommandInput,
8989
DeleteAccessPointPolicyForObjectLambdaCommandOutput,
9090
} from "./commands/DeleteAccessPointPolicyForObjectLambdaCommand";
91+
import {
92+
DeleteAccessPointScopeCommand,
93+
DeleteAccessPointScopeCommandInput,
94+
DeleteAccessPointScopeCommandOutput,
95+
} from "./commands/DeleteAccessPointScopeCommand";
9196
import {
9297
DeleteBucketCommand,
9398
DeleteBucketCommandInput,
@@ -214,6 +219,11 @@ import {
214219
GetAccessPointPolicyStatusForObjectLambdaCommandInput,
215220
GetAccessPointPolicyStatusForObjectLambdaCommandOutput,
216221
} from "./commands/GetAccessPointPolicyStatusForObjectLambdaCommand";
222+
import {
223+
GetAccessPointScopeCommand,
224+
GetAccessPointScopeCommandInput,
225+
GetAccessPointScopeCommandOutput,
226+
} from "./commands/GetAccessPointScopeCommand";
217227
import { GetBucketCommand, GetBucketCommandInput, GetBucketCommandOutput } from "./commands/GetBucketCommand";
218228
import {
219229
GetBucketLifecycleConfigurationCommand,
@@ -310,6 +320,11 @@ import {
310320
ListAccessPointsCommandInput,
311321
ListAccessPointsCommandOutput,
312322
} from "./commands/ListAccessPointsCommand";
323+
import {
324+
ListAccessPointsForDirectoryBucketsCommand,
325+
ListAccessPointsForDirectoryBucketsCommandInput,
326+
ListAccessPointsForDirectoryBucketsCommandOutput,
327+
} from "./commands/ListAccessPointsForDirectoryBucketsCommand";
313328
import {
314329
ListAccessPointsForObjectLambdaCommand,
315330
ListAccessPointsForObjectLambdaCommandInput,
@@ -366,6 +381,11 @@ import {
366381
PutAccessPointPolicyForObjectLambdaCommandInput,
367382
PutAccessPointPolicyForObjectLambdaCommandOutput,
368383
} from "./commands/PutAccessPointPolicyForObjectLambdaCommand";
384+
import {
385+
PutAccessPointScopeCommand,
386+
PutAccessPointScopeCommandInput,
387+
PutAccessPointScopeCommandOutput,
388+
} from "./commands/PutAccessPointScopeCommand";
369389
import {
370390
PutBucketLifecycleConfigurationCommand,
371391
PutBucketLifecycleConfigurationCommandInput,
@@ -468,6 +488,7 @@ const commands = {
468488
DeleteAccessPointForObjectLambdaCommand,
469489
DeleteAccessPointPolicyCommand,
470490
DeleteAccessPointPolicyForObjectLambdaCommand,
491+
DeleteAccessPointScopeCommand,
471492
DeleteBucketCommand,
472493
DeleteBucketLifecycleConfigurationCommand,
473494
DeleteBucketPolicyCommand,
@@ -494,6 +515,7 @@ const commands = {
494515
GetAccessPointPolicyForObjectLambdaCommand,
495516
GetAccessPointPolicyStatusCommand,
496517
GetAccessPointPolicyStatusForObjectLambdaCommand,
518+
GetAccessPointScopeCommand,
497519
GetBucketCommand,
498520
GetBucketLifecycleConfigurationCommand,
499521
GetBucketPolicyCommand,
@@ -514,6 +536,7 @@ const commands = {
514536
ListAccessGrantsInstancesCommand,
515537
ListAccessGrantsLocationsCommand,
516538
ListAccessPointsCommand,
539+
ListAccessPointsForDirectoryBucketsCommand,
517540
ListAccessPointsForObjectLambdaCommand,
518541
ListCallerAccessGrantsCommand,
519542
ListJobsCommand,
@@ -526,6 +549,7 @@ const commands = {
526549
PutAccessPointConfigurationForObjectLambdaCommand,
527550
PutAccessPointPolicyCommand,
528551
PutAccessPointPolicyForObjectLambdaCommand,
552+
PutAccessPointScopeCommand,
529553
PutBucketLifecycleConfigurationCommand,
530554
PutBucketPolicyCommand,
531555
PutBucketReplicationCommand,
@@ -843,6 +867,23 @@ export interface S3Control {
843867
cb: (err: any, data?: DeleteAccessPointPolicyForObjectLambdaCommandOutput) => void
844868
): void;
845869

870+
/**
871+
* @see {@link DeleteAccessPointScopeCommand}
872+
*/
873+
deleteAccessPointScope(
874+
args: DeleteAccessPointScopeCommandInput,
875+
options?: __HttpHandlerOptions
876+
): Promise<DeleteAccessPointScopeCommandOutput>;
877+
deleteAccessPointScope(
878+
args: DeleteAccessPointScopeCommandInput,
879+
cb: (err: any, data?: DeleteAccessPointScopeCommandOutput) => void
880+
): void;
881+
deleteAccessPointScope(
882+
args: DeleteAccessPointScopeCommandInput,
883+
options: __HttpHandlerOptions,
884+
cb: (err: any, data?: DeleteAccessPointScopeCommandOutput) => void
885+
): void;
886+
846887
/**
847888
* @see {@link DeleteBucketCommand}
848889
*/
@@ -1271,6 +1312,23 @@ export interface S3Control {
12711312
cb: (err: any, data?: GetAccessPointPolicyStatusForObjectLambdaCommandOutput) => void
12721313
): void;
12731314

1315+
/**
1316+
* @see {@link GetAccessPointScopeCommand}
1317+
*/
1318+
getAccessPointScope(
1319+
args: GetAccessPointScopeCommandInput,
1320+
options?: __HttpHandlerOptions
1321+
): Promise<GetAccessPointScopeCommandOutput>;
1322+
getAccessPointScope(
1323+
args: GetAccessPointScopeCommandInput,
1324+
cb: (err: any, data?: GetAccessPointScopeCommandOutput) => void
1325+
): void;
1326+
getAccessPointScope(
1327+
args: GetAccessPointScopeCommandInput,
1328+
options: __HttpHandlerOptions,
1329+
cb: (err: any, data?: GetAccessPointScopeCommandOutput) => void
1330+
): void;
1331+
12741332
/**
12751333
* @see {@link GetBucketCommand}
12761334
*/
@@ -1595,6 +1653,24 @@ export interface S3Control {
15951653
cb: (err: any, data?: ListAccessPointsCommandOutput) => void
15961654
): void;
15971655

1656+
/**
1657+
* @see {@link ListAccessPointsForDirectoryBucketsCommand}
1658+
*/
1659+
listAccessPointsForDirectoryBuckets(): Promise<ListAccessPointsForDirectoryBucketsCommandOutput>;
1660+
listAccessPointsForDirectoryBuckets(
1661+
args: ListAccessPointsForDirectoryBucketsCommandInput,
1662+
options?: __HttpHandlerOptions
1663+
): Promise<ListAccessPointsForDirectoryBucketsCommandOutput>;
1664+
listAccessPointsForDirectoryBuckets(
1665+
args: ListAccessPointsForDirectoryBucketsCommandInput,
1666+
cb: (err: any, data?: ListAccessPointsForDirectoryBucketsCommandOutput) => void
1667+
): void;
1668+
listAccessPointsForDirectoryBuckets(
1669+
args: ListAccessPointsForDirectoryBucketsCommandInput,
1670+
options: __HttpHandlerOptions,
1671+
cb: (err: any, data?: ListAccessPointsForDirectoryBucketsCommandOutput) => void
1672+
): void;
1673+
15981674
/**
15991675
* @see {@link ListAccessPointsForObjectLambdaCommand}
16001676
*/
@@ -1800,6 +1876,23 @@ export interface S3Control {
18001876
cb: (err: any, data?: PutAccessPointPolicyForObjectLambdaCommandOutput) => void
18011877
): void;
18021878

1879+
/**
1880+
* @see {@link PutAccessPointScopeCommand}
1881+
*/
1882+
putAccessPointScope(
1883+
args: PutAccessPointScopeCommandInput,
1884+
options?: __HttpHandlerOptions
1885+
): Promise<PutAccessPointScopeCommandOutput>;
1886+
putAccessPointScope(
1887+
args: PutAccessPointScopeCommandInput,
1888+
cb: (err: any, data?: PutAccessPointScopeCommandOutput) => void
1889+
): void;
1890+
putAccessPointScope(
1891+
args: PutAccessPointScopeCommandInput,
1892+
options: __HttpHandlerOptions,
1893+
cb: (err: any, data?: PutAccessPointScopeCommandOutput) => void
1894+
): void;
1895+
18031896
/**
18041897
* @see {@link PutBucketLifecycleConfigurationCommand}
18051898
*/

clients/client-s3-control/src/S3ControlClient.ts

+24
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,10 @@ import {
116116
DeleteAccessPointPolicyForObjectLambdaCommandInput,
117117
DeleteAccessPointPolicyForObjectLambdaCommandOutput,
118118
} from "./commands/DeleteAccessPointPolicyForObjectLambdaCommand";
119+
import {
120+
DeleteAccessPointScopeCommandInput,
121+
DeleteAccessPointScopeCommandOutput,
122+
} from "./commands/DeleteAccessPointScopeCommand";
119123
import { DeleteBucketCommandInput, DeleteBucketCommandOutput } from "./commands/DeleteBucketCommand";
120124
import {
121125
DeleteBucketLifecycleConfigurationCommandInput,
@@ -202,6 +206,10 @@ import {
202206
GetAccessPointPolicyStatusForObjectLambdaCommandInput,
203207
GetAccessPointPolicyStatusForObjectLambdaCommandOutput,
204208
} from "./commands/GetAccessPointPolicyStatusForObjectLambdaCommand";
209+
import {
210+
GetAccessPointScopeCommandInput,
211+
GetAccessPointScopeCommandOutput,
212+
} from "./commands/GetAccessPointScopeCommand";
205213
import { GetBucketCommandInput, GetBucketCommandOutput } from "./commands/GetBucketCommand";
206214
import {
207215
GetBucketLifecycleConfigurationCommandInput,
@@ -261,6 +269,10 @@ import {
261269
ListAccessGrantsLocationsCommandOutput,
262270
} from "./commands/ListAccessGrantsLocationsCommand";
263271
import { ListAccessPointsCommandInput, ListAccessPointsCommandOutput } from "./commands/ListAccessPointsCommand";
272+
import {
273+
ListAccessPointsForDirectoryBucketsCommandInput,
274+
ListAccessPointsForDirectoryBucketsCommandOutput,
275+
} from "./commands/ListAccessPointsForDirectoryBucketsCommand";
264276
import {
265277
ListAccessPointsForObjectLambdaCommandInput,
266278
ListAccessPointsForObjectLambdaCommandOutput,
@@ -306,6 +318,10 @@ import {
306318
PutAccessPointPolicyForObjectLambdaCommandInput,
307319
PutAccessPointPolicyForObjectLambdaCommandOutput,
308320
} from "./commands/PutAccessPointPolicyForObjectLambdaCommand";
321+
import {
322+
PutAccessPointScopeCommandInput,
323+
PutAccessPointScopeCommandOutput,
324+
} from "./commands/PutAccessPointScopeCommand";
309325
import {
310326
PutBucketLifecycleConfigurationCommandInput,
311327
PutBucketLifecycleConfigurationCommandOutput,
@@ -386,6 +402,7 @@ export type ServiceInputTypes =
386402
| DeleteAccessPointForObjectLambdaCommandInput
387403
| DeleteAccessPointPolicyCommandInput
388404
| DeleteAccessPointPolicyForObjectLambdaCommandInput
405+
| DeleteAccessPointScopeCommandInput
389406
| DeleteBucketCommandInput
390407
| DeleteBucketLifecycleConfigurationCommandInput
391408
| DeleteBucketPolicyCommandInput
@@ -412,6 +429,7 @@ export type ServiceInputTypes =
412429
| GetAccessPointPolicyForObjectLambdaCommandInput
413430
| GetAccessPointPolicyStatusCommandInput
414431
| GetAccessPointPolicyStatusForObjectLambdaCommandInput
432+
| GetAccessPointScopeCommandInput
415433
| GetBucketCommandInput
416434
| GetBucketLifecycleConfigurationCommandInput
417435
| GetBucketPolicyCommandInput
@@ -432,6 +450,7 @@ export type ServiceInputTypes =
432450
| ListAccessGrantsInstancesCommandInput
433451
| ListAccessGrantsLocationsCommandInput
434452
| ListAccessPointsCommandInput
453+
| ListAccessPointsForDirectoryBucketsCommandInput
435454
| ListAccessPointsForObjectLambdaCommandInput
436455
| ListCallerAccessGrantsCommandInput
437456
| ListJobsCommandInput
@@ -444,6 +463,7 @@ export type ServiceInputTypes =
444463
| PutAccessPointConfigurationForObjectLambdaCommandInput
445464
| PutAccessPointPolicyCommandInput
446465
| PutAccessPointPolicyForObjectLambdaCommandInput
466+
| PutAccessPointScopeCommandInput
447467
| PutBucketLifecycleConfigurationCommandInput
448468
| PutBucketPolicyCommandInput
449469
| PutBucketReplicationCommandInput
@@ -484,6 +504,7 @@ export type ServiceOutputTypes =
484504
| DeleteAccessPointForObjectLambdaCommandOutput
485505
| DeleteAccessPointPolicyCommandOutput
486506
| DeleteAccessPointPolicyForObjectLambdaCommandOutput
507+
| DeleteAccessPointScopeCommandOutput
487508
| DeleteBucketCommandOutput
488509
| DeleteBucketLifecycleConfigurationCommandOutput
489510
| DeleteBucketPolicyCommandOutput
@@ -510,6 +531,7 @@ export type ServiceOutputTypes =
510531
| GetAccessPointPolicyForObjectLambdaCommandOutput
511532
| GetAccessPointPolicyStatusCommandOutput
512533
| GetAccessPointPolicyStatusForObjectLambdaCommandOutput
534+
| GetAccessPointScopeCommandOutput
513535
| GetBucketCommandOutput
514536
| GetBucketLifecycleConfigurationCommandOutput
515537
| GetBucketPolicyCommandOutput
@@ -530,6 +552,7 @@ export type ServiceOutputTypes =
530552
| ListAccessGrantsInstancesCommandOutput
531553
| ListAccessGrantsLocationsCommandOutput
532554
| ListAccessPointsCommandOutput
555+
| ListAccessPointsForDirectoryBucketsCommandOutput
533556
| ListAccessPointsForObjectLambdaCommandOutput
534557
| ListCallerAccessGrantsCommandOutput
535558
| ListJobsCommandOutput
@@ -542,6 +565,7 @@ export type ServiceOutputTypes =
542565
| PutAccessPointConfigurationForObjectLambdaCommandOutput
543566
| PutAccessPointPolicyCommandOutput
544567
| PutAccessPointPolicyForObjectLambdaCommandOutput
568+
| PutAccessPointScopeCommandOutput
545569
| PutBucketLifecycleConfigurationCommandOutput
546570
| PutBucketPolicyCommandOutput
547571
| PutBucketReplicationCommandOutput

clients/client-s3-control/src/commands/CreateAccessPointCommand.ts

+17-5
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,10 @@ export interface CreateAccessPointCommandInput extends CreateAccessPointRequest
2929
export interface CreateAccessPointCommandOutput extends CreateAccessPointResult, __MetadataBearer {}
3030

3131
/**
32-
* <note>
33-
* <p>This operation is not supported by directory buckets.</p>
34-
* </note>
35-
* <p>Creates an access point and associates it with the specified bucket. For more information, see
32+
* <p>Creates an access point and associates it to a specified bucket. For more information, see
3633
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">Managing
37-
* Data Access with Amazon S3 Access Points</a> in the
34+
* access to shared datasets in general purpose buckets with access points</a> or <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-directory-buckets.html">Managing
35+
* access to shared datasets in directory buckets with access points</a> in the
3836
* <i>Amazon S3 User Guide</i>.</p>
3937
* <p></p>
4038
* <note>
@@ -62,6 +60,11 @@ export interface CreateAccessPointCommandOutput extends CreateAccessPointResult,
6260
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPoints.html">ListAccessPoints</a>
6361
* </p>
6462
* </li>
63+
* <li>
64+
* <p>
65+
* <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ListAccessPointsForDirectoryBuckets.html">ListAccessPointsForDirectoryBuckets</a>
66+
* </p>
67+
* </li>
6568
* </ul>
6669
* @example
6770
* Use a bare-bones client and the command you need to make an API call.
@@ -83,6 +86,14 @@ export interface CreateAccessPointCommandOutput extends CreateAccessPointResult,
8386
* RestrictPublicBuckets: true || false,
8487
* },
8588
* BucketAccountId: "STRING_VALUE",
89+
* Scope: { // Scope
90+
* Prefixes: [ // PrefixesList
91+
* "STRING_VALUE",
92+
* ],
93+
* Permissions: [ // ScopePermissionList
94+
* "GetObject" || "GetObjectAttributes" || "ListMultipartUploadParts" || "ListBucket" || "ListBucketMultipartUploads" || "PutObject" || "DeleteObject" || "AbortMultipartUpload",
95+
* ],
96+
* },
8697
* };
8798
* const command = new CreateAccessPointCommand(input);
8899
* const response = await client.send(command);
@@ -116,6 +127,7 @@ export class CreateAccessPointCommand extends $Command
116127
.ep({
117128
...commonParams,
118129
RequiresAccountId: { type: "staticContextParams", value: true },
130+
AccessPointName: { type: "contextParams", name: "Name" },
119131
AccountId: { type: "contextParams", name: "AccountId" },
120132
Bucket: { type: "contextParams", name: "Bucket" },
121133
})

0 commit comments

Comments
 (0)