分享方式:


將權限授與工作區受控識別

本文說明如何在 Azure synapse 工作區中授與受控識別的權限。 接著,權限會允許存取工作區中的專用 SQL 集區,並可透過 Azure 入口網站存取 ADLS Gen2 儲存體帳戶。

注意

本文件的其餘部分會將此工作區受控識別稱為受控識別。

授與 ADLS Gen2 儲存體帳戶 的受控識別權限

建立 Azure Synapse 工作區需要 ADLS Gen2 儲存體帳戶。 若要在 Azure Synapse 工作區中成功啟動 Spark 集區,Azure Synapse 受控識別需要該儲存體帳戶的儲存體 Blob 資料參與者角色。 Azure Synapse 中的準銷售案源協調流程也受益於此角色。

在工作區建立期間將權限授與受控識別

使用 Azure 入口網站建立 Azure Synapse 工作區後,Azure Synapse 會嘗試將儲存體 Blob 資料參與者角色授與受控識別。 您可以在 [基本] 索引標籤中提供 ADLS Gen2 儲存體帳戶的詳細資料。

工作區建立流程中 [基本] 索引標籤的螢幕擷取畫面。

選擇帳戶名稱檔案系統名稱中的 ADLS Gen2 儲存體帳戶和檔案系統。

提供 ADLS Gen2 儲存體帳戶詳細資料的螢幕擷取畫面。

如果工作區建立者也是 ADLS Gen2 儲存體帳戶的擁有者,Azure Synapse 會將儲存體 Blob 資料參與者角色指派給受控識別。 在輸入儲存體帳戶的詳細資料下方,您會看到下列訊息。

成功儲存體 Blob 資料參與者指派的螢幕擷取畫面。

如果工作區建立者不是 ADLS Gen2 儲存體帳戶的擁有者,Azure Synapse 不會將儲存體 Blob 資料參與者角色指派給受控識別。 儲存體帳戶詳細資料下方顯示的訊息會通知工作區建立者沒有足夠的權限,可將儲存體 Blob 資料參與者角色授與受控識別。

成功儲存體 Blob 資料參與者指派的螢幕擷取畫面,已醒目提示錯誤方塊。

按照訊息所述,除非將儲存體 Blob 資料參與者指派給受控識別,否則您無法建立 Spark 集區。

建立工作區後,將權限授與受控識別

在工作區建立期間,如果您未將儲存體 Blob 資料參與者指派給受控識別,ADLS Gen2 儲存體帳戶的擁有者即需手動為身分識別指派角色。 下列步驟可協助您完成手動指派。

步驟 1:前往 Azure 入口網站中的 ADLS Gen2 儲存體帳戶

在 Azure 入口網站中,開啟 ADLS Gen2 儲存體帳戶後,在左側功能窗格中選取 [概觀]。 接著只要在容器或檔案系統層級指派儲存體 Blob 資料參與者角色。 選取 [容器]

Azure 入口網站的螢幕擷取畫面,其中顯示 ADLS Gen2 儲存體帳戶的概觀。

步驟 2:選取容器

受控識別應具有建立工作區時提供的容器 (檔案系統) 資料存取權。 您可在 Azure 入口網站中找到該容器或檔案系統。 在 Azure 入口網站中開啟 Azure Synapse 工作區,並在左側功能窗格中選取 [概觀] 索引標籤。

Azure 入口網站的螢幕擷取畫面,其中顯示 ADLS Gen2 儲存體檔案 'contosocontainer' 的名稱。

選取相同的容器或檔案系統,即可將儲存體 Blob 資料參與者角色授與受控識別。

此螢幕擷取畫面顯示您應該選取的容器或檔案系統。

步驟 3:開啟存取控制並新增角色指派

  1. 選取 [存取控制 (IAM)]。

  2. 選取 [新增 > 角色指派 ] 以開啟 [新增角色指派] 頁面。

  3. 指派下列角色。 如需詳細步驟,請參閱使用 Azure 入口網站指派 Azure 角色

    設定
    角色 儲存體 Blob 資料參與者
    存取權指派對象 MANAGEDIDENTITY
    成員 受控識別名稱

    注意

    受控識別名稱也就是工作區名稱。

    Azure 入口網站中 [新增角色指派] 頁面的螢幕擷取畫面。

  4. 若要新增角色指派,請選取 [儲存]。

步驟 4:確認儲存體 Blob 資料參與者角色已指派給受控識別

選取 [存取控制 (IAM)],然後選取 [角色指派]

Azure 入口網站中 [角色指派] 按鈕的螢幕擷取畫面,可用來驗證角色指派。

您應該會看到您的受控識別列在 [儲存體 blob 資料參與者] 區段下方,並已指派儲存體 Blob 資料參與者角色。
Azure 入口網站的螢幕擷取畫面,其中顯示 ADLS Gen2 儲存體帳戶容器選取項目。

「儲存體 Blob 資料參與者」的替代角色

除了對自己授與儲存體 Blob 資料參與者角色之外,您也可以授與更精細的檔案子集權限。

需要存取此容器中某些資料的所有使用者也必須擁有所有父代資料夾 (直到根目錄的容器) 的執行權限。

深入了解如何在 Azure Data Lake Storage Gen2 中設定 ACL

注意

必須在 Data Lake Storage Gen2 內設定容器層級的執行權限。 您可以在 Azure Synapse Analytics 中設定資料夾的權限。

如果要查詢在此範例中 data2.csv,則需要下列權限:

  • 容器上的執行權限
  • folder1 上的執行權限
  • data2.csv 上的讀取權限

顯示資料湖上的權限結構的圖表。

  1. 使用對欲存取的資料具有完整權限的系統管理員使用者身分,登入 Azure Synapse Analytics。

  2. 在資料窗格中,以滑鼠右鍵按一下檔案,然後選取 [管理存取]

    顯示 [管理存取權] 選項的螢幕擷取畫面。

  3. 至少選取 [讀取] 權限。 輸入使用者的 UPN 或物件識別碼,例如 user@contoso.com。 選取 [新增]。

  4. 授與此使用者讀取權限。

    顯示授與讀取權限的螢幕擷取畫面。

注意

若是來賓使用者,此步驟必須直接使用 Azure Data Lake 完成,因為其無法直接透過 Azure Synapse 完成。

下一步

深入了解工作區受控識別