AWS Tools for PowerShell 版本 5(V5)已经发布!
要开始使用新版本的工具,请参阅《AWS Tools for PowerShell 用户指南(V5)》,特别是关于迁移到 V5 的主题。
使用 Tools for PowerShell V4 的 WorkSpaces 示例
以下代码示例演示如何通过将 AWS Tools for PowerShell V4 与 WorkSpaces 结合使用,来执行操作和实现常见场景。
操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。
每个示例都包含一个指向完整源代码的链接,您可以从中找到有关如何在上下文中设置和运行代码的说明。
主题
操作
以下代码示例演示了如何使用 Approve-WKSIpRule。
- Tools for PowerShell V4
-
示例 1:此示例向现有 IP 组添加规则
$Rule = @( @{IPRule = "10.1.0.0/0"; RuleDesc = "First Rule Added"}, @{IPRule = "10.2.0.0/0"; RuleDesc = "Second Rule Added"} ) Approve-WKSIpRule -GroupId wsipg-abcnx2fcw -UserRule $Rule-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 AuthorizeIpRules。
-
以下代码示例演示了如何使用 Copy-WKSWorkspaceImage。
- Tools for PowerShell V4
-
示例 1:此示例将具有指定 ID 的工作空间映像从 us-west-2 复制到名为“CopiedImageTest”的当前区域
Copy-WKSWorkspaceImage -Name CopiedImageTest -SourceRegion us-west-2 -SourceImageId wsi-djfoedhw6输出:
wsi-456abaqfe-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 CopyWorkspaceImage。
-
以下代码示例演示了如何使用 Edit-WKSClientProperty。
- Tools for PowerShell V4
-
示例 1:此示例为 Workspaces 客户端启用重新连接
Edit-WKSClientProperty -Region us-west-2 -ClientProperties_ReconnectEnabled "ENABLED" -ResourceId d-123414a369-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 ModifyClientProperties。
-
以下代码示例演示了如何使用 Edit-WKSSelfServicePermission。
- Tools for PowerShell V4
-
示例 1:此示例启用自助服务权限,以便为指定的目录更改计算类型并增加卷大小
Edit-WKSSelfservicePermission -Region us-west-2 -ResourceId d-123454a369 -SelfservicePermissions_ChangeComputeType ENABLED -SelfservicePermissions_IncreaseVolumeSize ENABLED-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 ModifySelfservicePermissions。
-
以下代码示例演示了如何使用 Edit-WKSWorkspaceAccessProperty。
- Tools for PowerShell V4
-
示例 1:此示例在 Android 和 Chrome 操作系统上针对指定目录启用工作空间访问
Edit-WKSWorkspaceAccessProperty -Region us-west-2 -ResourceId d-123454a369 -WorkspaceAccessProperties_DeviceTypeAndroid ALLOW -WorkspaceAccessProperties_DeviceTypeChromeOs ALLOW-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 ModifyWorkspaceAccessProperties。
-
以下代码示例演示了如何使用 Edit-WKSWorkspaceCreationProperty。
- Tools for PowerShell V4
-
示例 1:此示例支持在创建工作空间时将互联网访问和维护模式设置为 true 作为默认值
Edit-WKSWorkspaceCreationProperty -Region us-west-2 -ResourceId d-123454a369 -WorkspaceCreationProperties_EnableInternetAccess $true -WorkspaceCreationProperties_EnableMaintenanceMode $true-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 ModifyWorkspaceCreationProperties。
-
以下代码示例演示了如何使用 Edit-WKSWorkspaceProperty。
- Tools for PowerShell V4
-
示例 1:此示例将指定工作空间的“工作空间运行模式”属性更改为“自动停止
Edit-WKSWorkspaceProperty -WorkspaceId ws-w361s100v -Region us-west-2 -WorkspaceProperties_RunningMode AUTO_STOP-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 ModifyWorkspaceProperties。
-
以下代码示例演示了如何使用 Edit-WKSWorkspaceState。
- Tools for PowerShell V4
-
示例 1:此示例将指定工作空间的状态更改为“可用
Edit-WKSWorkspaceState -WorkspaceId ws-w361s100v -Region us-west-2 -WorkspaceState AVAILABLE-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 ModifyWorkspaceState。
-
以下代码示例演示了如何使用 Get-WKSClientProperty。
- Tools for PowerShell V4
-
示例 1:此示例获取指定目录的工作空间客户端的客户端属性
Get-WKSClientProperty -ResourceId d-223562a123-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeClientProperties。
-
以下代码示例演示了如何使用 Get-WKSIpGroup。
- Tools for PowerShell V4
-
示例 1:此示例获取指定区域中指定 IP 组的详细信息
Get-WKSIpGroup -Region us-east-1 -GroupId wsipg-8m1234v45输出:
GroupDesc GroupId GroupName UserRules --------- ------- --------- --------- wsipg-8m1234v45 TestGroup {Amazon.WorkSpaces.Model.IpRuleItem, Amazon.WorkSpaces.Model.IpRuleItem}-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeIpGroups。
-
以下代码示例演示了如何使用 Get-WKSTag。
- Tools for PowerShell V4
-
示例 1:此示例获取给定工作空间的标签
Get-WKSTag -WorkspaceId ws-w361s234r -Region us-west-2输出:
Key Value --- ----- auto-delete no purpose Workbench-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeTags。
-
以下代码示例演示了如何使用 Get-WKSWorkspace。
- Tools for PowerShell V4
-
示例 1:将所有 WorkSpaces 的详细信息检索到管道。
Get-WKSWorkspace输出:
BundleId : wsb-1a2b3c4d ComputerName : DirectoryId : d-1a2b3c4d ErrorCode : ErrorMessage : IpAddress : RootVolumeEncryptionEnabled : False State : PENDING SubnetId : UserName : myuser UserVolumeEncryptionEnabled : False VolumeEncryptionKey : WorkspaceId : ws-1a2b3c4d WorkspaceProperties : Amazon.WorkSpaces.Model.WorkspaceProperties示例 2:此命令显示
us-west-2区域中某个工作空间的WorkSpaceProperties的各个子属性的值。有关WorkSpaceProperties的子属性的更多信息,请参阅 https://docs.aws.amazon.com/workspaces/latest/api/API_WorkspaceProperties.html。(Get-WKSWorkspace -Region us-west-2 -WorkSpaceId ws-xdaf7hc9s).WorkspaceProperties输出:
ComputeTypeName : STANDARD RootVolumeSizeGib : 80 RunningMode : AUTO_STOP RunningModeAutoStopTimeoutInMinutes : 60 UserVolumeSizeGib : 50示例 3:此命令显示
us-west-2区域中某个工作空间的WorkSpaceProperties的子属性RootVolumeSizeGib的值。根卷大小(以 GiB 为单位)为 80。(Get-WKSWorkspace -Region us-west-2 -WorkSpaceId ws-xdaf7hc9s).WorkspaceProperties.RootVolumeSizeGib输出:
80-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeWorkspaces。
-
以下代码示例演示了如何使用 Get-WKSWorkspaceBundle。
- Tools for PowerShell V4
-
示例 1:此示例获取当前区域中所有工作空间捆绑包的详细信息
Get-WKSWorkspaceBundle输出:
BundleId : wsb-sfhdgv342 ComputeType : Amazon.WorkSpaces.Model.ComputeType Description : This bundle is custom ImageId : wsi-235aeqges LastUpdatedTime : 12/26/2019 06:44:07 Name : CustomBundleTest Owner : 233816212345 RootStorage : Amazon.WorkSpaces.Model.RootStorage UserStorage : Amazon.WorkSpaces.Model.UserStorage-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeWorkspaceBundles。
-
以下代码示例演示了如何使用 Get-WKSWorkspaceDirectory。
- Tools for PowerShell V4
-
示例 1:此示例列出已注册目录的目录详细信息
Get-WKSWorkspaceDirectory输出:
Alias : TestWorkspace CustomerUserName : Administrator DirectoryId : d-123414a369 DirectoryName : TestDirectory.com DirectoryType : MicrosoftAD DnsIpAddresses : {172.31.43.45, 172.31.2.97} IamRoleId : arn:aws:iam::761234567801:role/workspaces_RoleDefault IpGroupIds : {} RegistrationCode : WSpdx+4RRT43 SelfservicePermissions : Amazon.WorkSpaces.Model.SelfservicePermissions State : REGISTERED SubnetIds : {subnet-1m3m7b43, subnet-ard11aba} Tenancy : SHARED WorkspaceAccessProperties : Amazon.WorkSpaces.Model.WorkspaceAccessProperties WorkspaceCreationProperties : Amazon.WorkSpaces.Model.DefaultWorkspaceCreationProperties WorkspaceSecurityGroupId : sg-0ed2441234a123c43-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeWorkspaceDirectories。
-
以下代码示例演示了如何使用 Get-WKSWorkspaceImage。
- Tools for PowerShell V4
-
示例 1:此示例获取区域中所有映像的所有详细信息
Get-WKSWorkspaceImage输出:
Description :This image is copied from another image ErrorCode : ErrorMessage : ImageId : wsi-345ahdjgo Name : CopiedImageTest OperatingSystem : Amazon.WorkSpaces.Model.OperatingSystem RequiredTenancy : DEFAULT State : AVAILABLE-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeWorkspaceImages。
-
以下代码示例演示了如何使用 Get-WKSWorkspaceSnapshot。
- Tools for PowerShell V4
-
示例 1:此示例演示为指定 Workspace 创建的最新快照的时间戳
Get-WKSWorkspaceSnapshot -WorkspaceId ws-w361s100v输出:
RebuildSnapshots RestoreSnapshots ---------------- ---------------- {Amazon.WorkSpaces.Model.Snapshot} {Amazon.WorkSpaces.Model.Snapshot}-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeWorkspaceSnapshots。
-
以下代码示例演示了如何使用 Get-WKSWorkspacesConnectionStatus。
- Tools for PowerShell V4
-
示例 1:此示例获取指定 Workspace 的连接状态
Get-WKSWorkspacesConnectionStatus -WorkspaceId ws-w123s234r-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DescribeWorkspacesConnectionStatus。
-
以下代码示例演示了如何使用 New-WKSIpGroup。
- Tools for PowerShell V4
-
示例 1:此示例创建一个名为 FreshEmptyIpGroup 的空 Ip 组
New-WKSIpGroup -GroupName "FreshNewIPGroup"输出:
wsipg-w45rty4ty-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 CreateIpGroup。
-
以下代码示例演示了如何使用 New-WKSTag。
- Tools for PowerShell V4
-
示例 1:此示例向名为
ws-wsname的工作空间添加一个新标签。该标签的键为“Name”,键值为AWS_Workspace。$tag = New-Object Amazon.WorkSpaces.Model.Tag $tag.Key = "Name" $tag.Value = "AWS_Workspace" New-WKSTag -Region us-west-2 -WorkspaceId ws-wsname -Tag $tag示例 2:此示例向名为
ws-wsname的工作空间添加多个标签。一个标签的键为“Name”,键值为AWS_Workspace;另一个标签的标签键为“Stage”,键值为“Test”。$tag = New-Object Amazon.WorkSpaces.Model.Tag $tag.Key = "Name" $tag.Value = "AWS_Workspace" $tag2 = New-Object Amazon.WorkSpaces.Model.Tag $tag2.Key = "Stage" $tag2.Value = "Test" New-WKSTag -Region us-west-2 -WorkspaceId ws-wsname -Tag $tag,$tag2-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 CreateTags。
-
以下代码示例演示了如何使用 New-WKSWorkspace。
- Tools for PowerShell V4
-
示例 1:为提供的捆绑包、目录和用户创建 WorkSpace。
New-WKSWorkspace -Workspace @{"BundleID" = "wsb-1a2b3c4d"; "DirectoryId" = "d-1a2b3c4d"; "UserName" = "USERNAME"}示例 2:此示例创建多个 WorkSpace
New-WKSWorkspace -Workspace @{"BundleID" = "wsb-1a2b3c4d"; "DirectoryId" = "d-1a2b3c4d"; "UserName" = "USERNAME_1"},@{"BundleID" = "wsb-1a2b3c4d"; "DirectoryId" = "d-1a2b3c4d"; "UserName" = "USERNAME_2"}-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 CreateWorkspaces。
-
以下代码示例演示了如何使用 Register-WKSIpGroup。
- Tools for PowerShell V4
-
示例 1:此示例将指定的 IP 组注册到指定的目录
Register-WKSIpGroup -GroupId wsipg-23ahsdres -DirectoryId d-123412e123-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 AssociateIpGroups。
-
以下代码示例演示了如何使用 Register-WKSWorkspaceDirectory。
- Tools for PowerShell V4
-
示例 1:此示例注册 Workspaces 服务的指定目录
Register-WKSWorkspaceDirectory -DirectoryId d-123412a123 -EnableWorkDoc $false-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 RegisterWorkspaceDirectory。
-
以下代码示例演示了如何使用 Remove-WKSIpGroup。
- Tools for PowerShell V4
-
示例 1:此示例删除指定的 IP 组
Remove-WKSIpGroup -GroupId wsipg-32fhgtred输出:
Confirm Are you sure you want to perform this action? Performing the operation "Remove-WKSIpGroup (DeleteIpGroup)" on target "wsipg-32fhgtred". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DeleteIpGroup。
-
以下代码示例演示了如何使用 Remove-WKSTag。
- Tools for PowerShell V4
-
示例 1:此示例移除与工作空间关联的标签
Remove-WKSTag -ResourceId ws-w10b3abcd -TagKey "Type"输出:
Confirm Are you sure you want to perform this action? Performing the operation "Remove-WKSTag (DeleteTags)" on target "ws-w10b3abcd". [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): Y-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DeleteTags。
-
以下代码示例演示了如何使用 Remove-WKSWorkspace。
- Tools for PowerShell V4
-
示例 1:终止多个 WorkSpace。使用 -Force 开关可阻止 cmdlet 提示进行确认。
Remove-WKSWorkspace -WorkspaceId "ws-1a2b3c4d5","ws-6a7b8c9d0" -Force示例 2:检索所有 WorkSpace 的集合,然后将 ID 通过管道传输到 Remove-WKSWorkspace 的 -WorkSpaceId 参数,同时终止所有 WorkSpace。cmdlet 将在终止每个 WorkSpace 之前发出提示。要禁止确认提示,请添加 -Force 开关。
Get-WKSWorkspaces | Remove-WKSWorkspace示例 3:此示例演示如何传递 TerminateRequest 对象,这些对象定义要终止的 WorkSpace。除非也指定了 -Force 开关参数,否则在继续操作之前,cmdlet 会提示您进行确认。
$arrRequest = @() $request1 = New-Object Amazon.WorkSpaces.Model.TerminateRequest $request1.WorkspaceId = 'ws-12345678' $arrRequest += $request1 $request2 = New-Object Amazon.WorkSpaces.Model.TerminateRequest $request2.WorkspaceId = 'ws-abcdefgh' $arrRequest += $request2 Remove-WKSWorkspace -Request $arrRequest-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 TerminateWorkspaces。
-
以下代码示例演示了如何使用 Reset-WKSWorkspace。
- Tools for PowerShell V4
-
示例 1:重建指定的 WorkSpace。
Reset-WKSWorkspace -WorkspaceId "ws-1a2b3c4d"示例 2:检索所有 WorkSpace 的集合,然后将 ID 通过管道传输到 Reset-WKSWorkspace 的 -WorkSpaceId 参数,从而重建 WorkSpace。
Get-WKSWorkspaces | Reset-WKSWorkspace-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 RebuildWorkspaces。
-
以下代码示例演示了如何使用 Restart-WKSWorkspace。
- Tools for PowerShell V4
-
示例 1:重启指定的 WorkSpace。
Restart-WKSWorkspace -WorkspaceId "ws-1a2b3c4d"示例 2:重启多个 WorkSpace。
Restart-WKSWorkspace -WorkspaceId "ws-1a2b3c4d","ws-5a6b7c8d"示例 3:检索所有 WorkSpace 的集合,然后将 ID 通过管道传输到 Restart-WKSWorkspace 的 -WorkSpaceId 参数,从而重启 WorkSpace。
Get-WKSWorkspaces | Restart-WKSWorkspace-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 RebootWorkspaces。
-
以下代码示例演示了如何使用 Stop-WKSWorkspace。
- Tools for PowerShell V4
-
示例 1:停止多个 WorkSpace。
Stop-WKSWorkspace -WorkspaceId "ws-1a2b3c4d5","ws-6a7b8c9d0"示例 2:检索所有 WorkSpace 的集合,然后将 ID 通过管道传输到 Stop-WKSWorkspace 的 -WorkSpaceId 参数,从而停止 WorkSpace。
Get-WKSWorkspaces | Stop-WKSWorkspace示例 3:此示例演示如何传递 StopRequest 对象,这些对象定义要停止的 WorkSpace。
$arrRequest = @() $request1 = New-Object Amazon.WorkSpaces.Model.StopRequest $request1.WorkspaceId = 'ws-12345678' $arrRequest += $request1 $request2 = New-Object Amazon.WorkSpaces.Model.StopRequest $request2.WorkspaceId = 'ws-abcdefgh' $arrRequest += $request2 Stop-WKSWorkspace -Request $arrRequest-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 StopWorkspaces。
-
以下代码示例演示了如何使用 Unregister-WKSIpGroup。
- Tools for PowerShell V4
-
示例 1:此示例从指定的目录中取消注册指定的 IP 组
Unregister-WKSIpGroup -GroupId wsipg-12abcdphq -DirectoryId d-123454b123-
有关 API 详细信息,请参阅《AWS Tools for PowerShell Cmdlet 参考(V4)》中的 DisassociateIpGroups。
-