

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

# 使用 AWS Toolkit 時設定自動化 Studio 空間篩選
<a name="remote-access-remote-setup-filter"></a>

使用者可以篩選 AWS Toolkit for Visual Studio Code 瀏覽器中的空格，只顯示相關的空格。本節提供有關篩選以及如何設定自動篩選的資訊。

此設定僅適用於使用 [遠端 IDE 中的方法 2： AWS Toolkit](remote-access-local-ide-setup.md#remote-access-local-ide-setup-local-vs-code-method-2-aws-toolkit-in-vs-code)方法從遠端 IDE 連線到 Amazon SageMaker Studio 空間時。如需詳細資訊，請參閱[設定遠端存取](remote-access-remote-setup.md)。

**Topics**
+ [篩選概觀](#remote-access-remote-setup-filter-overview)
+ [使用 IAM 憑證進行連線時設定](#remote-access-remote-setup-filter-set-up-iam-credentials)

## 篩選概觀
<a name="remote-access-remote-setup-filter-overview"></a>

**手動篩選**可讓使用者手動選取要透過 AWS Toolkit 界面顯示 空間的使用者設定檔。此方法適用於所有驗證類型，並優先於自動篩選。若要手動篩選，請參閱[手動篩選](remote-access-local-ide-setup-filter.md#remote-access-local-ide-setup-filter-manual)。

**自動篩選**會自動僅顯示與已驗證使用者相關的空間。此篩選行為取決於登入期間的驗證方法。如需詳細資訊[AWS ，請參閱 Toolkit for VS 程式碼使用者指南中的 Toolkit 連接至](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/connect.html#connect-to-aws) 。以下列出登入選項。
+ **使用 SSO 進行驗證與連線**：根據預設，自動篩選可正常運作。
+ **使用 IAM 憑證進行驗證與連線**：自動篩選**需要管理員設定**下列 IAM 憑證。如果沒有此設定， AWS Toolkit 無法識別屬於使用者的空格，因此預設會顯示所有空格。
  + **使用 IAM 使用者憑證**
  + **使用擔任的 IAM 角色工作階段憑證**

## 使用 IAM 憑證進行連線時設定
<a name="remote-access-remote-setup-filter-set-up-iam-credentials"></a>

**使用 IAM 使用者憑證時**

Toolkit for VS Code 可以比對屬於使用者設定檔的空間，而這些使用者設定檔以已驗證的 IAM 使用者名稱或擔任的角色工作階段名稱開頭。若要設定此項目：

**注意**  
管理員必須設定 Studio 使用者設定檔名稱，以遵循此命名慣例，自動篩選才能正常運作。
+ 管理員必須確保 Studio 使用者設定檔名稱遵循命名慣例：
  + 對於 IAM 使用者：字首為 `{{IAM-user-name}}-`
  + 對於擔任的角色：字首為 `{{assumed-role-session-name}}-`
+ `aws sts get-caller-identity` 傳回用於比對的身分資訊
+ 屬於相符使用者設定檔的空間將在 Toolkit for VS Code 中自動篩選

**使用擔任的 IAM 角色工作階段憑證時** 除了使用上述 IAM 使用者憑證時的設定之外，您還需要確保工作階段 ARN 包含使用者識別碼做為比對的字首。您可以設定信任政策，確保工作階段 ARN 包含使用者識別碼做為字首。[建立信任政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)，並將其連接到用於驗證的擔任角色。

直接 IAM 使用者憑證或 IdC 驗證不需要此設定。

**設定 IAM 角色工作階段憑證的信任政策範例** 建立信任政策，強制角色工作階段包含 IAM 使用者名稱。以下為政策的範例：

```
{
    "Statement": [
        {
            "Sid": "RoleTrustPolicyRequireUsernameForSessionName",
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Principal": {"AWS": "arn:aws:iam::{{ACCOUNT}}:root"},
            "Condition": {
                "StringLike": {"sts:RoleSessionName": "${aws:username}"}
            }
        }
    ]
}
```