Skip to content

Commit 84a664c

Browse files
author
awstools
committed
feat(client-workspaces): Added a new ModifyEndpointEncryptionMode API for managing endpoint encryption settings.
1 parent ad76edc commit 84a664c

14 files changed

+356
-46
lines changed

clients/client-workspaces/README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -715,6 +715,14 @@ ModifyClientProperties
715715

716716
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/workspaces/command/ModifyClientPropertiesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-workspaces/Interface/ModifyClientPropertiesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-workspaces/Interface/ModifyClientPropertiesCommandOutput/)
717717

718+
</details>
719+
<details>
720+
<summary>
721+
ModifyEndpointEncryptionMode
722+
</summary>
723+
724+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/workspaces/command/ModifyEndpointEncryptionModeCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-workspaces/Interface/ModifyEndpointEncryptionModeCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-workspaces/Interface/ModifyEndpointEncryptionModeCommandOutput/)
725+
718726
</details>
719727
<details>
720728
<summary>

clients/client-workspaces/src/WorkSpaces.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,6 +304,11 @@ import {
304304
ModifyClientPropertiesCommandInput,
305305
ModifyClientPropertiesCommandOutput,
306306
} from "./commands/ModifyClientPropertiesCommand";
307+
import {
308+
ModifyEndpointEncryptionModeCommand,
309+
ModifyEndpointEncryptionModeCommandInput,
310+
ModifyEndpointEncryptionModeCommandOutput,
311+
} from "./commands/ModifyEndpointEncryptionModeCommand";
307312
import {
308313
ModifySamlPropertiesCommand,
309314
ModifySamlPropertiesCommandInput,
@@ -499,6 +504,7 @@ const commands = {
499504
ModifyAccountCommand,
500505
ModifyCertificateBasedAuthPropertiesCommand,
501506
ModifyClientPropertiesCommand,
507+
ModifyEndpointEncryptionModeCommand,
502508
ModifySamlPropertiesCommand,
503509
ModifySelfservicePermissionsCommand,
504510
ModifyStreamingPropertiesCommand,
@@ -1555,6 +1561,23 @@ export interface WorkSpaces {
15551561
cb: (err: any, data?: ModifyClientPropertiesCommandOutput) => void
15561562
): void;
15571563

1564+
/**
1565+
* @see {@link ModifyEndpointEncryptionModeCommand}
1566+
*/
1567+
modifyEndpointEncryptionMode(
1568+
args: ModifyEndpointEncryptionModeCommandInput,
1569+
options?: __HttpHandlerOptions
1570+
): Promise<ModifyEndpointEncryptionModeCommandOutput>;
1571+
modifyEndpointEncryptionMode(
1572+
args: ModifyEndpointEncryptionModeCommandInput,
1573+
cb: (err: any, data?: ModifyEndpointEncryptionModeCommandOutput) => void
1574+
): void;
1575+
modifyEndpointEncryptionMode(
1576+
args: ModifyEndpointEncryptionModeCommandInput,
1577+
options: __HttpHandlerOptions,
1578+
cb: (err: any, data?: ModifyEndpointEncryptionModeCommandOutput) => void
1579+
): void;
1580+
15581581
/**
15591582
* @see {@link ModifySamlPropertiesCommand}
15601583
*/

clients/client-workspaces/src/WorkSpacesClient.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,10 @@ import {
253253
ModifyClientPropertiesCommandInput,
254254
ModifyClientPropertiesCommandOutput,
255255
} from "./commands/ModifyClientPropertiesCommand";
256+
import {
257+
ModifyEndpointEncryptionModeCommandInput,
258+
ModifyEndpointEncryptionModeCommandOutput,
259+
} from "./commands/ModifyEndpointEncryptionModeCommand";
256260
import {
257261
ModifySamlPropertiesCommandInput,
258262
ModifySamlPropertiesCommandOutput,
@@ -413,6 +417,7 @@ export type ServiceInputTypes =
413417
| ModifyAccountCommandInput
414418
| ModifyCertificateBasedAuthPropertiesCommandInput
415419
| ModifyClientPropertiesCommandInput
420+
| ModifyEndpointEncryptionModeCommandInput
416421
| ModifySamlPropertiesCommandInput
417422
| ModifySelfservicePermissionsCommandInput
418423
| ModifyStreamingPropertiesCommandInput
@@ -506,6 +511,7 @@ export type ServiceOutputTypes =
506511
| ModifyAccountCommandOutput
507512
| ModifyCertificateBasedAuthPropertiesCommandOutput
508513
| ModifyClientPropertiesCommandOutput
514+
| ModifyEndpointEncryptionModeCommandOutput
509515
| ModifySamlPropertiesCommandOutput
510516
| ModifySelfservicePermissionsCommandOutput
511517
| ModifyStreamingPropertiesCommandOutput

clients/client-workspaces/src/commands/CopyWorkspaceImageCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export interface CopyWorkspaceImageCommandOutput extends CopyWorkspaceImageResul
3232
* information about copying images, see <a href="https://docs.aws.amazon.com/workspaces/latest/adminguide/copy-custom-image.html"> Copy a Custom WorkSpaces
3333
* Image</a>.</p>
3434
* <p>In the China (Ningxia) Region, you can copy images only within the same Region.</p>
35-
* <p>In Amazon Web Services GovCloud (US), to copy images to and from other Regions, contact Amazon Web Services Support.</p>
35+
* <p>In Amazon Web Services GovCloud (US), to copy images to and from other Regions, contact Amazon Web ServicesSupport.</p>
3636
* <important>
3737
* <p>Before copying a shared image, be sure to verify that it has been shared from the
3838
* correct Amazon Web Services account. To determine if an image has been shared and to see

clients/client-workspaces/src/commands/DescribeWorkspaceDirectoriesCommand.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ export interface DescribeWorkspaceDirectoriesCommandOutput
118118
* // Status: "DISABLED" || "ENABLED",
119119
* // CertificateAuthorityArn: "STRING_VALUE",
120120
* // },
121+
* // EndpointEncryptionMode: "STANDARD_TLS" || "FIPS_VALIDATED",
121122
* // MicrosoftEntraConfig: { // MicrosoftEntraConfig
122123
* // TenantId: "STRING_VALUE",
123124
* // ApplicationConfigSecretArn: "STRING_VALUE",
Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
// smithy-typescript generated code
2+
import { getEndpointPlugin } from "@smithy/middleware-endpoint";
3+
import { getSerdePlugin } from "@smithy/middleware-serde";
4+
import { Command as $Command } from "@smithy/smithy-client";
5+
import { MetadataBearer as __MetadataBearer } from "@smithy/types";
6+
7+
import { commonParams } from "../endpoint/EndpointParameters";
8+
import { ModifyEndpointEncryptionModeRequest, ModifyEndpointEncryptionModeResponse } from "../models/models_0";
9+
import {
10+
de_ModifyEndpointEncryptionModeCommand,
11+
se_ModifyEndpointEncryptionModeCommand,
12+
} from "../protocols/Aws_json1_1";
13+
import { ServiceInputTypes, ServiceOutputTypes, WorkSpacesClientResolvedConfig } from "../WorkSpacesClient";
14+
15+
/**
16+
* @public
17+
*/
18+
export type { __MetadataBearer };
19+
export { $Command };
20+
/**
21+
* @public
22+
*
23+
* The input for {@link ModifyEndpointEncryptionModeCommand}.
24+
*/
25+
export interface ModifyEndpointEncryptionModeCommandInput extends ModifyEndpointEncryptionModeRequest {}
26+
/**
27+
* @public
28+
*
29+
* The output of {@link ModifyEndpointEncryptionModeCommand}.
30+
*/
31+
export interface ModifyEndpointEncryptionModeCommandOutput
32+
extends ModifyEndpointEncryptionModeResponse,
33+
__MetadataBearer {}
34+
35+
/**
36+
* <p>Modifies the endpoint encryption mode that allows you to configure the specified
37+
* directory between Standard TLS and FIPS 140-2 validated mode. </p>
38+
* @example
39+
* Use a bare-bones client and the command you need to make an API call.
40+
* ```javascript
41+
* import { WorkSpacesClient, ModifyEndpointEncryptionModeCommand } from "@aws-sdk/client-workspaces"; // ES Modules import
42+
* // const { WorkSpacesClient, ModifyEndpointEncryptionModeCommand } = require("@aws-sdk/client-workspaces"); // CommonJS import
43+
* const client = new WorkSpacesClient(config);
44+
* const input = { // ModifyEndpointEncryptionModeRequest
45+
* DirectoryId: "STRING_VALUE", // required
46+
* EndpointEncryptionMode: "STANDARD_TLS" || "FIPS_VALIDATED", // required
47+
* };
48+
* const command = new ModifyEndpointEncryptionModeCommand(input);
49+
* const response = await client.send(command);
50+
* // {};
51+
*
52+
* ```
53+
*
54+
* @param ModifyEndpointEncryptionModeCommandInput - {@link ModifyEndpointEncryptionModeCommandInput}
55+
* @returns {@link ModifyEndpointEncryptionModeCommandOutput}
56+
* @see {@link ModifyEndpointEncryptionModeCommandInput} for command's `input` shape.
57+
* @see {@link ModifyEndpointEncryptionModeCommandOutput} for command's `response` shape.
58+
* @see {@link WorkSpacesClientResolvedConfig | config} for WorkSpacesClient's `config` shape.
59+
*
60+
* @throws {@link AccessDeniedException} (client fault)
61+
* <p>The user is not authorized to access a resource.</p>
62+
*
63+
* @throws {@link OperationNotSupportedException} (client fault)
64+
* <p>This operation is not supported.</p>
65+
*
66+
* @throws {@link ResourceNotFoundException} (client fault)
67+
* <p>The resource could not be found.</p>
68+
*
69+
* @throws {@link WorkSpacesServiceException}
70+
* <p>Base exception class for all service exceptions from WorkSpaces service.</p>
71+
*
72+
* @public
73+
*/
74+
export class ModifyEndpointEncryptionModeCommand extends $Command
75+
.classBuilder<
76+
ModifyEndpointEncryptionModeCommandInput,
77+
ModifyEndpointEncryptionModeCommandOutput,
78+
WorkSpacesClientResolvedConfig,
79+
ServiceInputTypes,
80+
ServiceOutputTypes
81+
>()
82+
.ep(commonParams)
83+
.m(function (this: any, Command: any, cs: any, config: WorkSpacesClientResolvedConfig, o: any) {
84+
return [
85+
getSerdePlugin(config, this.serialize, this.deserialize),
86+
getEndpointPlugin(config, Command.getEndpointParameterInstructions()),
87+
];
88+
})
89+
.s("WorkspacesService", "ModifyEndpointEncryptionMode", {})
90+
.n("WorkSpacesClient", "ModifyEndpointEncryptionModeCommand")
91+
.f(void 0, void 0)
92+
.ser(se_ModifyEndpointEncryptionModeCommand)
93+
.de(de_ModifyEndpointEncryptionModeCommand)
94+
.build() {
95+
/** @internal type navigation helper, not in runtime. */
96+
protected declare static __types: {
97+
api: {
98+
input: ModifyEndpointEncryptionModeRequest;
99+
output: {};
100+
};
101+
sdk: {
102+
input: ModifyEndpointEncryptionModeCommandInput;
103+
output: ModifyEndpointEncryptionModeCommandOutput;
104+
};
105+
};
106+
}

clients/client-workspaces/src/commands/RebuildWorkspacesCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client";
55
import { MetadataBearer as __MetadataBearer } from "@smithy/types";
66

77
import { commonParams } from "../endpoint/EndpointParameters";
8-
import { RebuildWorkspacesRequest, RebuildWorkspacesResult } from "../models/models_0";
8+
import { RebuildWorkspacesRequest, RebuildWorkspacesResult } from "../models/models_1";
99
import { de_RebuildWorkspacesCommand, se_RebuildWorkspacesCommand } from "../protocols/Aws_json1_1";
1010
import { ServiceInputTypes, ServiceOutputTypes, WorkSpacesClientResolvedConfig } from "../WorkSpacesClient";
1111

clients/client-workspaces/src/commands/TerminateWorkspacesCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export interface TerminateWorkspacesCommandOutput extends TerminateWorkspacesRes
3131
* <p>Terminates the specified WorkSpaces.</p>
3232
* <important>
3333
* <p>Terminating a WorkSpace is a permanent action and cannot be undone. The user's data
34-
* is destroyed. If you need to archive any user data, contact Amazon Web Services Support before
34+
* is destroyed. If you need to archive any user data, contact Amazon Web ServicesSupport before
3535
* terminating the WorkSpace.</p>
3636
* </important>
3737
* <p>You can terminate a WorkSpace that is in any state except <code>SUSPENDED</code>.</p>

clients/client-workspaces/src/commands/UpdateWorkspaceImagePermissionCommand.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ export interface UpdateWorkspaceImagePermissionCommandOutput
4040
* <p>After an image has been shared, the recipient account can copy the image to other
4141
* Regions as needed.</p>
4242
* <p>In the China (Ningxia) Region, you can copy images only within the same Region.</p>
43-
* <p>In Amazon Web Services GovCloud (US), to copy images to and from other Regions, contact Amazon Web Services Support.</p>
43+
* <p>In Amazon Web Services GovCloud (US), to copy images to and from other Regions, contact Amazon Web ServicesSupport.</p>
4444
* <p>For more information about sharing images, see <a href="https://docs.aws.amazon.com/workspaces/latest/adminguide/share-custom-image.html"> Share or Unshare a Custom
4545
* WorkSpaces Image</a>.</p>
4646
* <note>
@@ -52,7 +52,7 @@ export interface UpdateWorkspaceImagePermissionCommandOutput
5252
* <li>
5353
* <p>Sharing Bring Your Own License (BYOL) images across Amazon Web Services accounts
5454
* isn't supported at this time in Amazon Web Services GovCloud (US). To share BYOL images
55-
* across accounts in Amazon Web Services GovCloud (US), contact Amazon Web Services Support.</p>
55+
* across accounts in Amazon Web Services GovCloud (US), contact Amazon Web ServicesSupport.</p>
5656
* </li>
5757
* </ul>
5858
* </note>

clients/client-workspaces/src/commands/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ export * from "./MigrateWorkspaceCommand";
6161
export * from "./ModifyAccountCommand";
6262
export * from "./ModifyCertificateBasedAuthPropertiesCommand";
6363
export * from "./ModifyClientPropertiesCommand";
64+
export * from "./ModifyEndpointEncryptionModeCommand";
6465
export * from "./ModifySamlPropertiesCommand";
6566
export * from "./ModifySelfservicePermissionsCommand";
6667
export * from "./ModifyStreamingPropertiesCommand";

clients/client-workspaces/src/models/models_0.ts

Lines changed: 46 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -4554,6 +4554,20 @@ export const WorkspaceDirectoryType = {
45544554
*/
45554555
export type WorkspaceDirectoryType = (typeof WorkspaceDirectoryType)[keyof typeof WorkspaceDirectoryType];
45564556

4557+
/**
4558+
* @public
4559+
* @enum
4560+
*/
4561+
export const EndpointEncryptionMode = {
4562+
FIPS_VALIDATED: "FIPS_VALIDATED",
4563+
STANDARD_TLS: "STANDARD_TLS",
4564+
} as const;
4565+
4566+
/**
4567+
* @public
4568+
*/
4569+
export type EndpointEncryptionMode = (typeof EndpointEncryptionMode)[keyof typeof EndpointEncryptionMode];
4570+
45574571
/**
45584572
* <p>Specifies the configurations of the identity center.</p>
45594573
* @public
@@ -5098,6 +5112,13 @@ export interface WorkspaceDirectory {
50985112
*/
50995113
CertificateBasedAuthProperties?: CertificateBasedAuthProperties | undefined;
51005114

5115+
/**
5116+
* <p>Endpoint encryption mode that allows you to configure the specified directory between
5117+
* Standard TLS and FIPS 140-2 validated mode.</p>
5118+
* @public
5119+
*/
5120+
EndpointEncryptionMode?: EndpointEncryptionMode | undefined;
5121+
51015122
/**
51025123
* <p>Specifies details about Microsoft Entra configurations.</p>
51035124
* @public
@@ -5785,7 +5806,8 @@ export interface DescribeWorkspacesPoolSessionsRequest {
57855806
UserId?: string | undefined;
57865807

57875808
/**
5788-
* <p>The maximum number of items to return.</p>
5809+
* <p>The maximum size of each page of results. The default value is 20 and the maximum value
5810+
* is 50.</p>
57895811
* @public
57905812
*/
57915813
Limit?: number | undefined;
@@ -6531,6 +6553,29 @@ export interface ModifyClientPropertiesRequest {
65316553
*/
65326554
export interface ModifyClientPropertiesResult {}
65336555

6556+
/**
6557+
* @public
6558+
*/
6559+
export interface ModifyEndpointEncryptionModeRequest {
6560+
/**
6561+
* <p> The identifier of the directory.</p>
6562+
* @public
6563+
*/
6564+
DirectoryId: string | undefined;
6565+
6566+
/**
6567+
* <p>The encryption mode used for endpoint connections when streaming to WorkSpaces Personal
6568+
* or WorkSpace Pools.</p>
6569+
* @public
6570+
*/
6571+
EndpointEncryptionMode: EndpointEncryptionMode | undefined;
6572+
}
6573+
6574+
/**
6575+
* @public
6576+
*/
6577+
export interface ModifyEndpointEncryptionModeResponse {}
6578+
65346579
/**
65356580
* @public
65366581
*/
@@ -6859,37 +6904,3 @@ export interface RebootWorkspacesResult {
68596904
*/
68606905
FailedRequests?: FailedWorkspaceChangeRequest[] | undefined;
68616906
}
6862-
6863-
/**
6864-
* <p>Describes the information used to rebuild a WorkSpace.</p>
6865-
* @public
6866-
*/
6867-
export interface RebuildRequest {
6868-
/**
6869-
* <p>The identifier of the WorkSpace.</p>
6870-
* @public
6871-
*/
6872-
WorkspaceId: string | undefined;
6873-
}
6874-
6875-
/**
6876-
* @public
6877-
*/
6878-
export interface RebuildWorkspacesRequest {
6879-
/**
6880-
* <p>The WorkSpace to rebuild. You can specify a single WorkSpace.</p>
6881-
* @public
6882-
*/
6883-
RebuildWorkspaceRequests: RebuildRequest[] | undefined;
6884-
}
6885-
6886-
/**
6887-
* @public
6888-
*/
6889-
export interface RebuildWorkspacesResult {
6890-
/**
6891-
* <p>Information about the WorkSpace that could not be rebuilt.</p>
6892-
* @public
6893-
*/
6894-
FailedRequests?: FailedWorkspaceChangeRequest[] | undefined;
6895-
}

0 commit comments

Comments
 (0)