0

我希望生活一切顺利。我正在尝试通过 PowerShell 为用户账户创建 AWS 工作区。我已经熟悉通过 AWS CLI 执行此操作的过程,并且使用 JSON 模板取得了巨大成功。但是,在 PowerShell 中执行此操作时,我遇到了困难。我的总体目标是让创建 WorkSpaces 的过程更具可编程性。当前行:

New-WKSWorkspace -Workspace @{"BundleId" = "xxxxxx"; "UserName" = "xxxxxx"; "DirectoryId" = "xxxxxxx";} 

该行执行得很好,并根据输入的参数创建工作区。我的问题是我需要在创建工作区时在初始阶段设置“VolumeEncryptionKey”。但是,在阅读适用于 PowerShell 的 AWS 工具文档并运行此命令时:

Get-Command Get-WKSWorkspace -ShowCommandInfo

我找不到导致问题的“VolumeEncryptionKey”的参数。我想我可以通过以下方式设置值:

(Get-WKSWorkspace -WorkspaceId xxxxxxxxxx).VolumeEncryptionKey

但这并没有真正的帮助,而且似乎也没有“Set-WKSWorkspace”命令。之前有没有人使用 AWS Tools for PowerShell 构建工作区的经验?请告诉我。

所以我之前尝试过执行那个特别的命令:

New-WKSWorkspace -Workspace @{ "VolumeEncryptionKey" = "xxxxxx"; "BundleId" = "xxxxxx"; "UserName" = "xxxxxx"; "DirectoryId" = "xxxxxxx";}

但它会产生一个错误:

在此处输入图像描述

在此处输入图像描述

这是我使用的 JSON 骨架,效果非常好:

{
"Workspaces": [
  {
    "DirectoryId": "xxxxxxxxxxx",
    "UserName": "xxxxxxxx",
    "BundleId": "xxxxxxxx",
    "VolumeEncryptionKey": "xxxxxxxxxxxx",
    "UserVolumeEncryptionEnabled": true,
    "RootVolumeEncryptionEnabled": true,
    "WorkspaceProperties": {
      "RunningMode": "ALWAYS_ON",
      "RootVolumeSizeGib": 175,
      "UserVolumeSizeGib": 100,
      "ComputeTypeName": "PERFORMANCE"
    },
    "Tags": [
      {
        "Key": "xxxxxxx",
        "Value": "xxxxxxxxxxx"
      }
    ]
  }
]

}

游戏计划是尝试通过适用于 PowerShell 的 AWS 工具运行它。

4

1 回答 1

0

通过粗略阅读文档,我得出结论,您需要将其包含在-Workspace参数中:

New-WKSWorkspace -Workspace @{"VolumeEncryptionKey" = "<VEK goes here>"; "BundleId" = "xxxxxx"; "UserName" = "xxxxxx"; "DirectoryId" = "xxxxxxx"; } 
于 2020-08-21T16:38:30.033 回答