サービス プリンシパルを使用して Microsoft Entra ID (旧称 Azure Active Directory) でストレージにアクセスする

アプリケーションを Microsoft Entra ID (旧称 Azure Active Directory) に登録すると、Azure ストレージ アカウントへのアクセスを提供するために使用できるサービス プリンシパルが作成されます。

その後、 Secretに保存された資格情報を使用して、これらのサービスプリンシパルへのアクセスを構成できます。 Databricks では、クラスターまたは SQL ウェアハウスをスコープとする <entra-service-principal> を使用してデータ アクセスを構成することをお勧めします。 「 Azure Data Lake Storage Gen2 および Blob Storage への接続」と「データ アクセス構成の有効化」を参照してください。

Microsoft Entra ID アプリケーションを登録する

登録する Microsoft Entra ID (旧称 Azure Active Directory) アプリケーション を作成し、適切なアクセス許可を割り当てると、Azure Data Lake Storage Gen2 または Blob Storage リソースにアクセスできるサービス プリンシパルが作成されます。

Microsoft Entra ID アプリケーションを登録するには、Microsoft Entra ID の Application Administrator ロールまたは Application.ReadWrite.All 権限が必要です。

  1. Azure portal で、 Microsoft Entra ID サービスに移動します。

  2. [管理] で [アプリの登録] をクリックします。

  3. [ + 新規登録] をクリックします。 アプリケーションの名前を入力し、[ 登録する] をクリックします。

  4. [ Certificates & Secrets] をクリックします。

  5. + 新しいクライアントのシークレット」をクリックします。

  6. シークレットの説明を追加し、「 追加」をクリックします。

  7. 新しいシークレットの値をコピーして保存します。

  8. アプリケーション登録の概要で、 アプリケーション (クライアント ) ID と ディレクトリ (テナント) ID をコピーして保存します。

役割の割り当て

ストレージ リソースへのアクセスを制御するには、ストレージ アカウントに関連付けられている Microsoft Entra ID アプリケーション登録にロールを割り当てます。 特定の要件に応じて、他のロールを割り当てる必要がある場合があります。

ストレージ アカウントにロールを割り当てるには、ストレージ アカウントに対する所有者またはユーザー アクセス管理者の Azure RBAC ロールが必要です。

  1. Azure portal で、 ストレージ アカウント サービスに移動します。

  2. このアプリケーションの登録で使用する Azure ストレージ アカウントを選択します。

  3. アクセス制御 (IAM)」をクリックします。

  4. [ + 追加 ] をクリックし、ドロップダウン メニューから [ ロールの割り当てを追加 ] を選択します。

  5. [ 選択 ] フィールドを Microsoft Entra ID アプリケーション名に設定し、 [ ロール ] を [ストレージ BLOB データ共同作成者] に設定します。

  6. [保存]をクリックします。