

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 選擇桌面檢視或應用程式檢視
<a name="choosing-desktop-view-or-application-view"></a>

 選擇應用程式檢視或桌面檢視的判斷不會影響效能或成本。每個 WorkSpaces 應用程式機群隨時只能存取一個檢視。您可以變更**串流檢視**選項。在離峰上班時間規劃此變更，因為變更串流檢視需要重新啟動機群。

 串流檢視沒有單一最佳實務。串流檢視選項的影響摘要如下：
+  透過管理員的用量報告功能，詳細**報告應用程式用量** 
+  最終使用者的整體體驗和工作流程 （例如，完整的桌面是否滿足使用案例的需求，或只檢視應用程式是否足夠？)。

## 桌面檢視
<a name="desktop-view"></a>

 對於在工作階段中執行所有使用者工作流程的使用案例，桌面檢視透過將所有應用程式集中在一個環境中來簡化使用者體驗。桌面檢視可為需要與作業系統 (OS) 整合的 3-5 個以上應用程式提供更一致的使用者體驗。桌面檢視在維護兩個獨立且不同的環境時有效。例如，使用者可以同時存取生產環境和生產前桌面環境，以驗證配置、組態和應用程式存取的變更。

 WorkSpaces 應用程式用量報告會建立桌面檢視的每日應用程式報告。應用程式產生的輸出只是「桌面」，直接映射到 WorkSpaces 應用程式工作階段。如需詳細資訊，請參閱本文件的[**監控使用者用量**](monitoring.md#monitoring-user-usage)一節。

## 僅限應用程式檢視
<a name="applications-only-view"></a>

 當 WorkSpaces 應用程式堆疊旨在間歇性地提供一些應用程式時，僅限應用程式檢視也有效。在資訊站環境中，透過 Application View 交付安全鎖定的應用程式交付。透過應用程式檢視，WorkSpaces 應用程式會將預設 Windows shell 取代為自訂 shell。此自訂 Shell 僅呈現執行中的應用程式，將作業系統的攻擊面降至最低。

 對於使用 WorkSpaces 應用程式來擴增現有組織的桌面環境的使用案例，偏好僅應用程式檢視。允許完整使用鍵盤快速鍵，以[*原生應用程式模式*](https://docs.aws.amazon.com/appstream2/latest/developerguide/client-system-requirements-feature-support.html#feature-support-native-application-mode)部署 WorkSpaces 應用程式 Windows 用戶端，將使用者的混淆降到最低。

 Amazon WorkSpaces 應用程式用量報告會建立應用程式檢視的每日應用程式報告。如需更精細的應用程式報告和執行使用，請考慮在作業系統層級報告第三方解決方案。您可以在報告模式中使用 Microsoft AppLocker，或考慮 中提供的解決方案 AWS Marketplace，例如 Liquidware 的 [*Stratusphere UX*](https://aws.amazon.com/marketplace/pp/prodview-ghxb36werkone)。

## AWS Identity and Access Management 角色組態
<a name="identity-and-access-management-role-configuration"></a>

如果工作負載需要 WorkSpaces 應用程式最終使用者 AWS 從其工作階段內存取其他服務，最佳實務是透過使用 [AWS Identity and Access Management (IAM) 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)委派存取權。IAM 角色可以透過機[群層級的指派](https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html#how-to-use-iam-role-with-streaming-instances)直接連接到最終使用者的工作階段。如需搭配 WorkSpaces 應用程式使用 IAM 角色的其他最佳實務，請參閱 [管理員指南的本節](https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html#best-practices-for-using-iam-role-with-streaming-instances)。

### 使用靜態登入資料
<a name="using-static-credentials"></a>

有些工作負載可能需要 IAM 存取金鑰的靜態輸入，而不是從連接的角色繼承它們。有兩種方法可以接收這些登入資料。第一種方法是將存取金鑰存放在 AWS 服務中，然後提供最終使用者明確的 IAM 存取權，以從服務提取該特定值。存取金鑰儲存機制的兩個範例是使用 [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/tutorials_basic.html)或 [AWS SSM 參數存放區](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-paramstore-su-create.html)。第二個方法是使用 WorkSpaces 應用程式登入資料提供者來存取連接角色的存取金鑰。這可以透過叫用登入資料提供者並剖析存取金鑰和私密金鑰的輸出來完成。以下範例說明如何在 PowerShell 中執行此動作。

```
$CMD = 'C:\Program Files\Amazon\Photon\PhotonRoleCredentialProvider\PhotonRoleCredentialProvider.exe'
$role = 'Machine'

$output = & $CMD --role=$role
$parsed = $output | ConvertFrom-Json

$access_key = $parsed.AccessKeyId
$secret_key = $parsed.SecretAccessKey
$session_token = $parsed.SessionToken
```

### 保護您的 WorkSpaces 應用程式 S3 儲存貯體
<a name="protecting-appstream-bucket"></a>

如果您的 WorkSpaces 應用程式工作負載使用主資料夾和/或應用程式持久性設定，則最佳實務是保護存放持久性資料的 Amazon S3 儲存貯體，避免未經授權的存取或意外刪除。第一層保護是新增 Amazon S3 儲存貯體政策，[以防止意外刪除儲存貯體](https://docs.aws.amazon.com/appstream2/latest/developerguide/s3-iam-policy.html#s3-iam-policy-delete)。第二層保護是新增符合最低權限原則的儲存貯體政策。僅[允許儲存貯體存取必要方，](https://docs.aws.amazon.com/appstream2/latest/developerguide/s3-iam-policy.html#s3-iam-policy-restricted-access)即可與原則保持一致。