Share via


建立記憶體認證以連線到 Azure Data Lake 儲存體 Gen2

本文說明如何在 Unity 目錄中建立記憶體認證,以連線到 Azure Data Lake 儲存體 Gen2。

若要管理保存資料表和磁碟區之基礎雲端記憶體的存取權,Unity 目錄會使用下列物件類型:

  • 儲存體 認證會封裝長期雲端認證,以提供雲端記憶體的存取權。
  • 外部位置 包含記憶體認證和雲端記憶體路徑的參考。

如需詳細資訊,請參閱使用 Unity 目錄 連線 至雲端物件記憶體。

Unity 目錄支援 Azure Databricks 的兩個雲端記憶體選項:Azure Data Lake 儲存體 Gen2 容器和 Cloudflare R2 貯體。 Cloudflare R2 主要適用於您想要避免數據輸出費用的差異共用使用案例。 Azure Data Lake 儲存體 Gen2 適用於大部分的其他使用案例。 本文著重於建立 Azure Data Lake 儲存體 Gen2 容器的記憶體認證。 針對 Cloudflare R2,請參閱 建立記憶體認證以連線到 Cloudflare R2

若要建立記憶體認證以存取 Azure Data Lake 儲存體 Gen2 容器,您可以建立參考 Azure 受控識別的 Azure Databricks 存取連接器,並將它指派給記憶體容器的許可權。 接著,您會在記憶體認證定義中參考該存取連接器。

需求

在 Azure Databricks 中:

  • 已啟用 Unity 目錄的 Azure Databricks 工作區。

  • CREATE STORAGE CREDENTIAL 附加至工作區之 Unity 目錄中繼存放區的許可權。 帳戶管理員和中繼存放區管理員預設具有此許可權。

    注意

    服務主體必須具有帳戶管理員角色,才能建立使用受控識別的記憶體認證。 您無法委派 CREATE STORAGE CREDENTIAL 給服務主體。 這同時適用於 Azure Databricks 服務主體和 Microsoft Entra ID(先前稱為 Azure Active Directory)服務主體。

在您的 Azure 租使用者中:

  • Azure Data Lake 儲存體 Gen2 記憶體容器,與您要從中存取數據的工作區相同區域。

    Azure Data Lake 儲存體 Gen2 儲存器帳戶必須具有階層命名空間。

  • Azure 資源群組的參與者或擁有者。

  • 在記憶體帳戶上具有使用者存取 管理員 istrator Azure RBAC 角色的擁有者或使用者。

使用受控識別建立記憶體認證

您可以使用 Azure 受控識別 或服務主體作為授權存取記憶體容器的身分識別。 強烈建議使用受控識別。 其優點是允許 Unity 目錄存取受網路規則保護的記憶體帳戶,這無法使用服務主體,而且不需要管理和輪替秘密。 如果您想要使用服務主體,請參閱使用服務主體建立 Unity 目錄受控記憶體(舊版)。

  1. 在 Azure 入口網站 中,使用設定 Unity 目錄受控識別中的指示,建立 Azure Databricks 存取連接器,並在您想要存取的記憶體容器上指派許可權。

    Azure Databricks 存取連接器是第一方 Azure 資源,可讓您將受控識別連線到 Azure Databricks 帳戶。 您必須在 Azure 中的存取連接器資源上擁有 參與者 角色或更高角色,才能新增記憶體認證。

    記下存取連接器的資源標識碼。

  2. 以具有 CREATE STORAGE CREDENTIAL 許可權的使用者身分登入已啟用 Unity 目錄的 Azure Databricks 工作區。

    中繼存放區管理員和帳戶管理員角色都包含此許可權。 如果您以服務主體身分登入(無論是 Microsoft Entra ID 或原生 Azure Databricks 服務主體),您必須擁有帳戶管理員角色,才能建立使用受控識別的記憶體認證。

  3. 按兩下 [目錄圖示目錄]。

  4. 按兩下 [ +新增 ] 按鈕,然後從功能表中選取 [新增記憶體認證 ]。

    如果您沒有許可權, CREATE STORAGE CREDENTIAL 則不會出現此選項。

  5. 選取 Azure 受控識別認證類型

  6. 輸入認證的名稱,並以下列格式輸入存取連接器的資源識別碼:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
    
  7. (選擇性)如果您使用使用者指派的受控識別建立存取連接器,請在 [使用者指派的受控識別識別碼] 字段中輸入受控識別的資源識別元,格式如下:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>
    
  8. (選擇性)如果您希望使用者具有使用此記憶體認證之外部位置的唯讀存取權,請選取 [ 只讀]。 如需詳細資訊,請參閱 將記憶體認證標示為唯讀

  9. 按一下 [檔案] 。

  10. 建立參考此記憶體認證的外部位置

下一步

您可以檢視、更新、刪除,以及授與其他使用者使用記憶體認證的許可權。 請參閱 管理記憶體認證

您可以使用記憶體認證來定義外部位置。 請參閱 建立外部位置以將雲端記憶體連線到 Azure Databricks