本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
加密的 WorkSpaces
WorkSpaces 已與 AWS Key Management Service (AWS KMS) 整合。這可讓您使用 AWS KMS 金鑰來加密 WorkSpaces 的儲存磁碟區。當您啟動 WorkSpace 時,您可以加密根磁碟區 (在 Microsoft Windows 中為 C 磁碟機;在 Linux 中為 /) 和使用者磁碟區 (在 Windows 中為 D 磁碟機;在 Linux 中為 /home)。這麼做可確保靜態儲存的資料、磁碟區的磁碟 I/O,以及從磁碟區建立的快照全都加密。
注意
除了加密 WorkSpaces 之外,您還可以在某些 AWS 美國地區使用 FIPS 端點加密。如需詳細資訊,請參閱 針對 FedRAMP 授權或 DoD SRG 合規設定 Amazon WorkSpaces。
目錄
先決條件
您需要有 AWS KMS 金鑰,才能開始加密程序。此 KMS 金鑰可以是 Amazon WorkSpaces 適用的 AWS受管 KMS 金鑰 (aws/workspaces),也可以是對稱的客戶受管 KMS 金鑰。
-
AWS 受管 KMS 金鑰 – 當您第一次從區域中的 WorkSpaces 主控台啟動未加密的 WorkSpace 時,Amazon WorkSpaces 會在您的帳戶中自動建立 AWS 受管 KMS 金鑰 (aws/workspaces)。您可以選取此 AWS 受管 KMS 金鑰來加密 WorkSpace 的使用者和根磁碟區。如需詳細資訊,請參閱 WorkSpaces 使用 AWS KMS 加密的概觀。
您可以檢視此 AWS 受管 KMS 金鑰 (包括其政策和授權),並可追蹤其在 AWS CloudTrail 記錄中的使用情況,但無法使用或管理此 KMS 金鑰。Amazon WorkSpaces 可建立和管理此 KMS 金鑰。只有 Amazon WorkSpaces 可以使用此 KMS 金鑰,而且 WorkSpaces 只能此金鑰用來加密您帳戶中的 WorkSpaces 資源。
AWS 受管 KMS 金鑰 (包括 Amazon WorkSpaces 支援的金鑰) 會每三年輪換一次。如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的輪換 AWS KMS 金鑰。
-
客戶受管 KMS 金鑰 – 或者,您可以選取您使用 AWS KMS 建立的對稱客戶受管 KMS 金鑰。您可以檢視、使用和管理此 KMS 金鑰,包括設定其政策。如需有關建立 KMS 金鑰的詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的建立金鑰。如需有關使用 AWS KMS API 建立 KMS 金鑰的詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的使用金鑰。
除非您決定啟用自動金鑰輪換,否則不會自動輪換客戶受管 KMS 金鑰。如需詳細資訊,請參閱《AWS Key Management Service 開發人員指南》中的輪換 AWS KMS 金鑰。
重要
手動輪換 KMS 金鑰時,您必須讓原始 KMS 金鑰和新的 KMS 金鑰同時保持啟用狀態,AWS KMS 才能將原始 KMS 金鑰加密的 WorkSpaces 解密。如果您不想讓原始 KMS 金鑰保持啟用狀態,則必須重建 WorkSpaces 並使用新的 KMS 金鑰予以加密。
您必須符合下列要求,才能使用 AWS KMS 金鑰來加密 WorkSpaces:
-
KMS 金鑰必須為對稱金鑰。Amazon WorkSpaces 不支援非對稱 KMS 金鑰。如需區分對稱與非對稱 KMS 金鑰的相關資訊,請參閱《AWS Key Management Service 開發人員指南》中的識別對稱與非對稱 KMS 金鑰。
-
必須啟用 KMS 金鑰。若要判斷 KMS 金鑰是否已啟用,請參閱《AWS Key Management Service 開發人員指南》中的顯示 KMS 金鑰詳細資訊。
-
您必須擁有與 KMS 金鑰相關聯的正確許可和政策。如需詳細資訊,請參閱 第 2 部分:使用 IAM 政策授予 WorkSpaces 管理員額外的許可。
限制
-
您無法加密現有的 WorkSpace。您必須在啟動 WorkSpace 時將其加密。
-
不支援從加密的 WorkSpace 建立自訂映像。
-
目前不支援停用已加密 WorkSpace 的加密功能。
-
在啟用根磁碟區加密狀態下啟動的 WorkSpaces 可能需要長達一個小時才能佈建。
-
若要重新啟動或重新建置加密的 WorkSpace,請先確定 AWS KMS 金鑰已啟用;否則,WorkSpace 會變得無法使用。若要判斷 KMS 金鑰是否已啟用,請參閱《AWS Key Management Service 開發人員指南》中的顯示 KMS 金鑰詳細資訊。
WorkSpaces 使用 AWS KMS 加密的概觀
當您建立具備加密磁碟區的 WorkSpace 時,WorkSpaces 會使用 Amazon Elastic Block Store (Amazon EBS) 來建立和管理這些磁碟區。Amazon EBS 會使用業界標準的 AES-256 演算法資料金鑰加密您的磁碟區。Amazon EBS 和 Amazon WorkSpaces 都使用 KMS 金鑰來處理已加密的磁碟區。如需有關 EBS 磁碟區加密的詳細資訊,請參閱《Windows 執行個體適用的 Amazon EC2 使用者指南》中的 Amazon EBS 加密。
當您啟動具備加密磁碟區的 WorkSpace,端對端程序的運作方式如下:
-
您可指定要用於加密的 KMS 金鑰,以及 WorkSpace 的使用者和目錄。這個動作會建立授予,只允許 WorkSpaces 將 KMS 金鑰用於此 WorkSpace,即為僅適用於與指定之使用者和目錄相關聯的 WorkSpace。
-
WorkSpaces 會為 WorkSpace 建立加密的 EBS 磁碟區,並指定要使用的 KMS 金鑰以及磁碟區的使用者和目錄。這個動作會建立授予,只允許 Amazon EBS 將 KMS 金鑰用於此 WorkSpace 和磁碟區,即為僅適用於與指定之使用者和目錄相關聯的 WorkSpace 以及僅適用於指定的磁碟區。
-
Amazon EBS 會請求在 KMS 金鑰下加密的磁碟區資料金鑰,並指定 WorkSpace 使用者的 Active Directory 安全識別符 (SID) 和 AWS Directory Service 目錄 ID,以及指定 Amazon EBS 磁碟區 ID 做為加密內容。
-
AWS KMS 建立新的資料加密金鑰,在 KMS 金鑰下將其加密,然後將加密的資料金鑰傳送給 Amazon EBS。
-
WorkSpaces 使用 Amazon EBS 將加密的磁碟區連接到您的 WorkSpace。Amazon EBS 會使用
Decrypt
請求將已加密的資料金鑰傳送給 AWS KMS,並指定 WorkSpace 使用者的 SID、目錄 ID 及磁碟區 ID 做為加密內容。 -
AWS KMS 使用您的 KMS 金鑰來解密資料金鑰,然後將純文字資料金鑰傳送到 Amazon EBS。
-
Amazon EBS 使用純文字資料金鑰來加密進出已加密磁碟區的所有資料。Amazon EBS 會在磁碟區連接至 WorkSpace 的期間,將純文字資料金鑰保存在記憶體中。
-
Amazon EBS 會將加密的資料金鑰 (於 步驟 4 收到) 與磁碟區中繼資料一起存放,以供日後重新啟動或重建 WorkSpace 時使用。
-
當您使用 AWS Management Console 移除 WorkSpace (或使用 WorkSpaces API 中的
TerminateWorkspaces
動作) 時,WorkSpaces 和 Amazon EBS 會淘汰允許其為該 WorkSpaces 使用 KMS 金鑰的授予。
WorkSpaces 加密內容
WorkSpaces 不會將 KMS 金鑰直接用於密碼編譯操作 (例如 Encrypt
、Decrypt
、GenerateDataKey
等),這表示 WorkSpaces 不會傳送包含加密內容的請求給 AWS KMS。但是,當 Amazon EBS 為 WorkSpaces (WorkSpaces 使用 AWS KMS 加密的概觀 中的 步驟 3) 的已加密磁碟區請求加密的資料金鑰時,以及當它請求該資料金鑰的純文字複本 (步驟 5) 時,它會在請求中包含加密內容。
加密內容提供額外驗證資料 (AAD),供 AWS KMS 用來確保資料完整性。加密內容也會寫入 AWS CloudTrail 日誌檔案,以協助您了解為何使用指定的 KMS 金鑰。Amazon EBS 將以下項目用於加密內容:
-
與 WorkSpace 相關聯之 Active Directory 使用者的安全識別符 (SID)
-
與 WorkSpace 相關聯之 AWS Directory Service 目錄的目錄 ID
-
已加密磁碟區的 Amazon EBS 磁碟區 ID
以下範例顯示 Amazon EBS 所用加密內容的 JSON 顯示方式:
{
"aws:workspaces:sid-directoryid": "[S-1-5-21-277731876-1789304096-451871588-1107
]@[d-1234abcd01
]",
"aws:ebs:id": "vol-1234abcd
"
}
授予 WorkSpaces 代表您使用 KMS 金鑰的許可
您可以在 WorkSpaces 適用的 AWS 受管 KMS 金鑰 (aws/workspaces) 或客戶受管 KMS 金鑰之下保護您的 WorkSpace 資料。如果您使用客戶受管 KMS 金鑰,則需要授予 WorkSpaces 代表您帳戶中的 WorkSpaces 管理員使用 KMS 金鑰的許可。在預設情況下,WorkSpaces 適用的 AWS 受管 KMS 金鑰具有所需許可。
為了準備您的客戶受管 KMS 金鑰以搭配使用 WorkSpaces,請使用下列步驟。
WorkSpaces 管理員還需要使用 WorkSpaces 的許可。如需這些許可的詳細資訊,請前往 適用於 WorkSpaces 的身分和存取管理。
第 1 部分:將 WorkSpaces 管理員新增為金鑰使用者
若要提供 WorkSpaces 管理員他們所需的許可,您可以使用 AWS Management Console 或 AWS KMS API。
若要新增 WorkSpaces 管理員做為 KMS 金鑰的金鑰使用者 (主控台)
-
請登入 AWS Management Console,並開啟 AWS Key Management Service (AWS KMS) 主控台 (網站:https://console.aws.amazon.com/kms
)。 -
若要變更 AWS 區域,請使用頁面右上角的區域選取器。
-
在導覽窗格中,選擇 Customer managed keys (客戶受管金鑰)。
-
選擇您偏好的客戶受管 KMS 金鑰的金鑰 ID 或別名。
-
選擇 Key policy (金鑰政策) 標籤。在 Key users (金鑰使用者) 中,選擇 Add (新增)。
-
在 IAM 使用者和角色清單中,選取對應到您 WorkSpaces 管理員的使用者和角色,然後選擇新增。
若要新增 WorkSpaces 管理員做為 KMS 金鑰的金鑰使用者 (API)
-
使用 GetKeyPolicy 操作來取得現有的金鑰政策,然後將金鑰政策文件儲存至檔案。
-
在您偏好的文字編輯器中開啟政策文件。將對應到您 WorkSpaces 管理員的 IAM 使用者和角色新增到提供許可給金鑰使用者的政策陳述式。接著儲存檔案。
-
使用 PutKeyPolicy 操作將金鑰政策套用到 KMS 金鑰。
第 2 部分:使用 IAM 政策授予 WorkSpaces 管理員額外的許可
如果您選取用於加密的客戶受管 KMS 金鑰,則必須建立 IAM 政策,以允許 Amazon WorkSpaces 代表您帳戶中啟動已加密 WorkSpaces 的 IAM 使用者使用 KMS 金鑰。該使用者還需要使用 Amazon WorkSpaces 的許可。如需建立和編輯 IAM 使用者政策的詳細資訊,請參閱《IAM 使用者指南》中的受管 IAM 政策和適用於 WorkSpaces 的身分和存取管理。
WorkSpaces 加密需要有限的 KMS 金鑰存取權。下列是您可以使用的範例金鑰政策。此政策會將可管理 AWS KMS 金鑰的主體與可使用該金鑰的主體分開。在您使用本範例金鑰政策之前,請將範例帳戶 ID 和 IAM 使用者名稱取代為您帳戶的實際值。
第一個陳述式符合預設 AWS KMS 金鑰政策。它提供您的帳戶使用 IAM 政策來控制 KMS 金鑰存取的許可。第二個和第三個陳述式分別定義哪些 AWS 主體可以管理和使用金鑰。第四個陳述式可讓與 AWS KMS 整合的 AWS 服務代表指定的主體使用金鑰。此陳述式使 AWS 服務能夠建立和管理授與。陳述式會使用條件元素,將 KMS 金鑰授與限制為 AWS 服務代表您帳戶中的使用者所做的授與。
注意
此外,如果 WorkSpaces 管理員使用 AWS Management Console 來建立包含已加密磁碟區的 WorkSpace,WorkSpace 管理員則需要許可才能列出別名及列出金鑰 ("kms:ListAliases"
和 "kms:ListKeys"
許可)。如果 WorkSpace 管理員只會使用 Amazon WorkSpaces API (而不使用主控台),您可以省略 "kms:ListAliases"
和 "kms:ListKeys"
許可。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::
123456789012
:root"}, "Action": "kms:*", "Resource": "*" }, { "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::123456789012
:user/Alice
"}, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*" ], "Resource": "*" }, { "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::123456789012
:user/Alice
"}, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::123456789012
:user/Alice
"}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": "true"}} } ] }
正在加密 WorkSpace 之使用者或角色的 IAM 政策必須包含客戶受管 KMS 金鑰的使用許可,以及對 WorkSpaces 的存取權限。若要將 WorkSpaces 許可提供給 IAM 使用者或角色,您可以將下列範例政策附加至 IAM 使用者或角色。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ds:*", "ds:DescribeDirectories", "workspaces:*", "workspaces:DescribeWorkspaceBundles", "workspaces:CreateWorkspaces", "workspaces:DescribeWorkspaceBundles", "workspaces:DescribeWorkspaceDirectories", "workspaces:DescribeWorkspaces", "workspaces:RebootWorkspaces", "workspaces:RebuildWorkspaces" ], "Resource": "*" } ] }
使用者需要下列 IAM 政策才能使用 AWS KMS。其將對 KMS 金鑰的唯讀存取權以及建立授與的能力提供給使用者。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:Describe*", "kms:List*" ], "Resource": "*" } ] }
如果您想要在政策中指定 KMS 金鑰,請使用類似以下的 IAM 政策。以有效的 KMS 金鑰 ARN 取代範例 KMS 金鑰 ARN。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": "
arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab
" }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:ListKeys" ], "Resource": "*" } ] }
加密 WorkSpace
若要加密 WorkSpace
開啟 WorkSpaces 主控台,網址為 https://console.aws.amazon.com/workspaces/
。 -
選擇啟動 WorkSpaces 並完成前三個步驟。
-
針對 WorkSpaces 設定步驟,執行下列操作:
-
選取要加密的磁碟區:根磁碟區、使用者磁碟區或兩個磁碟區。
-
針對加密金鑰,選取 AWS KMS 金鑰,即 Amazon WorkSpaces 所建立的 AWS 受管 KMS 金鑰或您建立的 KMS 金鑰。您選取的 KMS 金鑰必須是對稱金鑰。Amazon WorkSpaces 不支援非對稱 KMS 金鑰。
-
選擇 Next Step (後續步驟)。
-
-
選擇啟動 WorkSpaces。
檢視已加密的 WorkSpaces
若要查看已從 WorkSpaces 主控台加密哪些 WorkSpaces 和磁碟區,請從左側導覽列中選擇 WorkSpaces。磁碟區加密欄會顯示每個 WorkSpace 是否已啟用或停用加密。若要查看哪些特定磁碟區已加密,請展開 WorkSpace 項目以查看加密的磁碟區欄位。