

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

# Amazon EMR Studio 運作方式
<a name="how-emr-studio-works"></a>

Amazon EMR Studio 是您為使用者團隊建立的 Amazon EMR 資源。每個 Studio 都是獨立的、基於 Web 的整合式開發環境，適用於在 Amazon EMR 叢集上執行的 Jupyter 筆記本。使用者使用公司憑證進行登入。

您建立的每個 EMR Studio 使用以下 AWS 資源：
+ **具有子網路的 Amazon 虛擬私有雲端 (VPC)** - 使用者在指定 VPC 中的 Amazon EMR 和 Amazon EMR on EKS 叢集上執行 Studio 核心和應用程式。EMR Studio 可以連接到您建立 Studio 時指定之子網路中的任何叢集。
+ **IAM 角色和許可政策** - 若要管理使用者許可，可以建立 IAM 許可政策，將其附接至使用者的 IAM 身分或使用者角色。EMR Studio 也會使用 IAM 服務角色和安全群組與其他 AWS 服務互通。如需詳細資訊，請參閱[存取控制](#emr-studio-access-control)及[定義安全群組，以控制 EMR Studio 網路流量](emr-studio-security-groups.md)。
+ **安全群組** - EMR Studio 會使用安全群組，在 Studio 和 EMR 叢集之間建立安全的網路通道。
+ **Amazon S3 備份位置** - EMR Studio 可將筆記本工作儲存在 Amazon S3 位置中。

以下步驟概述了如何建立和管理 EMR Studio：

1.  AWS 帳戶 使用 IAM 或 IAM Identity Center 身分驗證在 中建立 Studio。如需說明，請參閱[設定 EMR Studio](emr-studio-set-up.md)。

1. 將使用者和群組指派給您的 Studio。使用許可政策為每個使用者設定精細的許可。如需詳細資訊，請參閱 [指派和管理 EMR Studio 使用者](emr-studio-manage-users.md) 主題。

1. 使用 AWS CloudTrail 事件開始監控 EMR Studio 動作。如需詳細資訊，請參閱[監控 Amazon EMR Studio 動作](emr-studio-manage-studio.md#emr-studio-monitor)。

1. 透過叢集範本和 Amazon EMR on EKS 受管端點，為 Studio 使用者提供更多叢集選項。

## 身分驗證和使用者登入
<a name="emr-studio-login"></a>

Amazon EMR Studio 支援兩種身分驗證模式：IAM 身分驗證模式和 IAM Identity Center 身分驗證模式。IAM 模式使用 AWS Identity and Access Management (IAM)，而 IAM Identity Center 模式使用 AWS IAM Identity Center。建立 EMR Studio 時，可以為該 Studio 的所有使用者選擇身分驗證模式。

### IAM 身分驗證模式
<a name="emr-studio-login-iam-mode"></a>

使用 IAM 身分驗證模式，您可以使用 IAM 身分驗證或 IAM 聯合。

IAM *身分驗證*可讓您管理 IAM 身分，例如 IAM 中的使用者、群組和角色。可以使用 IAM 許可政策和[屬性型存取控制 (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 授予使用者對 Studio 的存取權。

IAM *聯合*可讓您在第三方身分提供者 (IdP) 和 之間建立信任， AWS 以便您可以透過 IdP 管理使用者身分。

### IAM Identity Center 身分驗證模式
<a name="emr-studio-login-sso-mode"></a>

IAM Identity Center 身分驗證模式可讓您為使用者提供對 EMR Studio 的聯合存取權。可以使用 IAM Identity Center 從 IAM Identity Center 目錄、現有的公司目錄或外部 IdP (例如 Azure Active Directory (AD)) 中驗證使用者和群組。然後，使用身分提供者 (IdP) 來管理使用者。

EMR Studio 支援將下列身分提供者用於 IAM Identity Center：
+ **AWS Managed Microsoft AD 和自我管理 Active Directory** – 如需詳細資訊，請參閱[連線至 Microsoft AD 目錄](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-ad.html)。
+ **基於 SAML 的提供者** – 如需完整清單，請參閱[支援的身分提供者](https://docs.aws.amazon.com/singlesignon/latest/userguide/supported-idps.html)。
+ **IAM Identity Center 目錄** – 如需詳細資訊，請參閱*AWS IAM Identity Center 《 使用者指南*》中的在 [IAM Identity Center 中管理身分](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-sso.html)和[跨應用程式進行受信任身分傳播](https://docs.aws.amazon.com/singlesignon/latest/userguide/trustedidentitypropagation.html)。

### 身分驗證如何影響登入和使用者指派
<a name="emr-studio-login-auth-differences"></a>

您為 EMR Studio 選擇的身分驗證模式會影響使用者登入 Studio 的方式、將使用者指派給 Studio 的方式以及您*授權* (授予許可) 使用者執行動作的方式，例如建立新的 Amazon EMR 叢集。

下表根據身分驗證模式，總結了 EMR Studio 的登入方法。


**身分驗證模式的 EMR Studio 登入選項**  

| 身分驗證模式 | 登入方式 | Description | 
| --- | --- | --- | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/how-emr-studio-works.html)  | EMR Studio URL |  使用者使用 Studio 存取 URL 登入 Studio。例如 `https://xxxxxxxxxxxxxxxxxxxxxxx.emrstudio-prod.us-east-1.amazonaws.com`。 使用者在使用 IAM 身分驗證時輸入 IAM 憑證。當您使用 IAM 聯合或 IAM Identity Center 時，EMR Studio 會將使用者重新導向至身分提供者的登入 URL，以輸入憑證。 如果為聯合身分，此登入選項稱為服務提供者 (SP) 啟動的登入。  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/how-emr-studio-works.html)  | 身分提供者 (IdP) 入口網站 |  使用者登入您的身分提供者的入口網站 (例如 Azure 入口網站)，然後啟動 Amazon EMR 主控台。啟動 Amazon EMR 主控台後，使用者可以從 **Studio 清單**中選取並開啟 Studio。 也可以將 EMR Studio 設定為 SAML 應用程式，讓使用者可以從身分提供者的入口網站登入特定 Studio。如需指示，請參閱[在 IdP 入口網站中將 EMR Studio 設定為 SAML 應用程式](emr-studio-authentication.md#emr-studio-create-federation-deeplink)。 如果為聯合身分，此登入選項稱為身分提供者 (IdP) 啟動的登入。  | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/emr/latest/ManagementGuide/how-emr-studio-works.html)  | AWS 管理主控台 | 使用者 AWS 管理主控台 使用 IAM 登入資料登入 ，並從 Amazon EMR 主控台的 Studios 清單中開啟 Studio。 | 

下表概述了透過身分驗證模式對 EMR Studio 進行的使用者指派和授權。


**透過身分驗證模式進行 EMR Studio 使用者指派和授權**  

| 身分驗證模式 | 使用者指派 | 使用者授權 | 
| --- | --- | --- | 
|  IAM (身分驗證和聯合)  |  允許附接至 IAM 身分 (使用者、群組或角色) 的 IAM 許可政策中的 `CreateStudioPresignedUrl` 動作。 若為聯合身分使用者，在為用於聯合的 IAM 角色而設定的許可政策中，允許 IAM 中的 `CreateStudioPresignedUrl` 動作。 使用屬性型存取控制 (ABAC) 來指定使用者可以存取的一個或多個 Studio。 如需說明，請參閱[將使用者或群組指派給 EMR Studio](emr-studio-manage-users.md#emr-studio-assign-users-groups)。  |  定義允許某些 EMR Studio 動作的 IAM 許可政策。 若為原生使用者，請將 IAM 許可政策附接至 IAM 身分 (使用者、群組或角色)。若為聯合身分使用者，在為用於聯合的 IAM 角色而設定的許可政策中允許 Studio 動作。 如需詳細資訊，請參閱[設定 Amazon EC2 或 Amazon EKS 的 EMR Studio 使用者許可](emr-studio-user-permissions.md)。  | 
| IAM Identity Center |  對於使用 `IdCUserAssignment` 設定為 `REQUIRED` 所建立的 Studio，請使用指定的工作階段政策將使用者映射至 Studio。如需詳細資訊，請參閱[將使用者或群組指派給 EMR Studio](emr-studio-manage-users.md#emr-studio-assign-users-groups)。 對於使用 `IdCUserAssignment` 設定為 `OPTIONAL` 所建立的 Studio，任何 Identity Center 使用者或群組均可存取 Studio。  |  *選用：*定義允許某些 EMR Studio 動作的 IAM 工作階段政策。將使用者指派給 Studio 時，將工作階段政策映射至使用者。 如需詳細資訊，請參閱[IAM Identity Center 身分驗證模式的使用者許可](#emr-studio-sso-authorization)。  | 

## 存取控制
<a name="emr-studio-access-control"></a>

在 Amazon EMR Studio 中，可以使用 AWS Identity and Access Management (IAM) 身分型政策來設定使用者授權 (許可)。在這些政策中，可以指定允許的動作和資源，以及在何種條件下允許動作。

### IAM 身分驗證模式的使用者許可
<a name="emr-studio-iam-authorization"></a>

若要在針對 EMR Studio 使用 IAM 身分驗證時設定使用者許可，則可以在 IAM 許可政策中允許諸如 `elasticmapreduce:RunJobFlow` 等動作。可以建立一個或多個許可政策以供使用。例如，可以建立不允許使用者建立新 Amazon EMR 叢集的基礎政策，以及另一個允許建立叢集的政策。如需所有 Studio 動作的清單，請參閱 [AWS Identity and Access Management EMR Studio 使用者的 許可](emr-studio-user-permissions.md#emr-studio-iam-permissions-table)。

### IAM Identity Center 身分驗證模式的使用者許可
<a name="emr-studio-sso-authorization"></a>

使用 IAM Identity Center 身分驗證時，可以建立單一 EMR Studio 使用者角色。*使用者角色*是使用者登入時 Studio 擔任的專用 IAM 角色。

可以將 IAM 工作階段政策附接至 EMR Studio 使用者角色。*工作階段政策*是一種特殊的 IAM 許可政策，可限制聯合身分使用者在 Studio 登入工作階段期間可執行的操作。工作階段政策可讓您為使用者或群組設定特定許可，而無需為 EMR Studio 建立多個使用者角色。

[將使用者和群組指派給](emr-studio-manage-users.md#emr-studio-assign-users-groups) Studio 時，會將工作階段政策映射至該使用者或群組，以套用精細的許可。也可以隨時更新使用者或群組的工作階段政策。Amazon EMR 會儲存您建立的每個工作階段政策映射。

如需有關工作階段政策的詳細資訊，請參閱《AWS Identity and Access Management 使用者指南》**中的[政策與許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)。

## 工作區
<a name="emr-studio-workspaces"></a>

工作區是 Amazon EMR Studio 的主要構成部分。若要組織筆記本，使用者可以在 Studio 中建立一個或多個工作區。如需詳細資訊，請參閱[了解 EMR Studio 工作區](emr-studio-configure-workspace.md)。

與 [JupyterLab 中的工作區](https://jupyterlab.readthedocs.io/en/latest/user/urls.html#managing-workspaces-ui)類似，工作區會保留筆記本工作的狀態。不過，作業區使用者介面會使用其他工具來擴充開放原始碼 [JupyterLab](https://jupyterlab.readthedocs.io/en/latest/user/interface.html) 介面，讓您能夠建立和附接 EMR 叢集、執行作業、探索範例筆記本以及連結 Git 儲存庫。

下列清單包含 EMR Studio Workspaces 的主要功能：
+ 工作區可見性是以 Studio 為基礎。您在某個 Studio 中建立的工作區在其他 Studio 中不可見。
+ 預設情況下，可共用工作區，所有 Studio 使用者都可以看到它。但是，一次只能有一個使用者在工作區中開啟和工作。若要與其他使用者同時使用，您可以 [在 EMR Studio 中設定工作區協同合作](emr-studio-workspace-collaboration.md)
+ 當您啟用工作區協同合作時，可以與工作區中的其他使用者同時進行協作。如需詳細資訊，請參閱[在 EMR Studio 中設定工作區協同合作](emr-studio-workspace-collaboration.md)。
+ 工作區中的筆記本可共用相同的 EMR 叢集以執行命令。可以將工作區附接至在 Amazon EC2 上執行的 Amazon EMR 叢集，或附接到 Amazon EMR on EKS 虛擬叢集和受管端點。
+ 工作區可以切換到與 Studio 子網路關聯的另一個可用區域。可以停止並重新啟動工作區，以提示容錯移轉程序。當您重新啟動工作區時，當 Studio 設定為可存取多個可用區域時，EMR Studio 會在 Studio VPC 的不同可用區域中啟動工作區。若 Studio 只有一個可用區域，EMR Studio 會嘗試在不同的子網路中啟動工作區。如需詳細資訊，請參閱[解決工作區連線問題](emr-studio-workspace-stop-start.md)。
+ 工作區可以連接到與 Studio 相關聯的任何子網路中的叢集。

如需有關建立和設定 EMR Studio Workspaces 的詳細資訊，請參閱 [了解 EMR Studio 工作區](emr-studio-configure-workspace.md)。

## Amazon EMR Studio 中的筆記本儲存
<a name="emr-studio-storage"></a>

當您使用工作區時，EMR Studio 會在與您的 Studio 相關聯的 Amazon S3 位置定期自動儲存筆記本檔案中的儲存格。此備份程序會保留工作階段之間的工作，以供您稍後使用，而不需要將變更遞交至 Git 儲存庫。如需詳細資訊，請參閱[在 EMR Studio 中儲存工作區內容](emr-studio-save-workspace.md)。

當您從工作區刪除筆記本檔案時，EMR Studio 會為您從 Amazon S3 中刪除備份版本。但是，如果在未先刪除其筆記本檔案的情況下刪除工作區，筆記本檔案會保留在 Amazon S3 中，並繼續產生儲存費用。如需進一步了解，請參閱[在 EMR Studio 中刪除工作區和筆記本檔案](emr-studio-delete-workspace.md)。