Fabric Warehouse の所有権を変更する
適用対象:✅Microsoft Fabric のウェアハウス
Warehouse アイテムは、OneLake 上のデータにアクセスするときに所有者の ID を使用します。 これらのアイテムの所有者を変更する場合、現時点のソリューション メソッドは、この記事で説明するように API 呼び出しを使用することです。
このガイドでは、Warehouse の所有者を組織アカウントに変更する手順について説明します。 それぞれの引き継ぎ API を使用すると、この所有者の ID を SPN または他の組織アカウント (Microsoft Entra ID) に変更できます。 詳細については、「Microsoft Fabric の SQL 認証の代替え手段とする Microsoft Entra 認証」を参照してください。
引き継ぎ API は、SQL 分析エンドポイントではなく、Warehouse に対してのみ機能します。
前提条件
開始する前に、次のことが必要です。
アクティブな容量または試用版の容量を持つ Fabric ワークスペース。
Lakehouse 上の Fabric Warehouse。
ワークスペースの 管理者ロール、メンバーロール、または 投稿者ロールのメンバーである必要があります。
Power BI PowerShell モジュールをインストールしてインポートします (まだインストールされていない場合)。 インターネットに接続されたワークステーションで管理者として Windows PowerShell を開き、次のコマンドを実行します。
Install-Module -Name MicrosoftPowerBIMgmt Import-Module MicrosoftPowerBIMgmt
のインスタンスに接続するときには、
- Windows PowerShell を管理者として開きます。
- Power BI サービスに接続する:
Connect-PowerBIServiceAccount
Warehouse の所有権を取得する
- ワークスペースの所有者を変更する Warehouse アイテムに移動します。 SQL エディターが開きます。
- ブラウザーから URL をコピーし、後で使用するためにテキスト エディターを配置します。
- たとえば、 URL から最初の GUID (
11aaa111-a11a-1111-1aaa-aa111111aaa
など) をコピーします。/
文字は含めないでください。 これをすぐに使用するためにテキスト エディターに保存します。 - URL から 2 番目の GUID (
11aaa111-a11a-1111-1aaa-aa111111aaa
など) をコピーします。/
文字は含めないでください。 これをすぐに使用するためにテキスト エディターに保存します。 - 次のスクリプトでは、
workspaceID
をコピーした最初の GUID に置き換えます。 次のコマンドを実行します。$workspaceID = 'workspaceID'
- 次のスクリプトでは、
warehouseID
をコピーした 2 番目の GUID に置き換えます。 次のコマンドを実行します。$warehouseid = 'warehouseID'
- 次のコマンドを実行します。
$url = 'groups/' + $workspaceID + '/datawarehouses/' + $warehouseid + '/takeover'
- 次のコマンドを実行します。
Invoke-PowerBIRestMethod -Url $url -Method Post -Body ""
- ウェアハウス アイテムの所有者が変更されました。
完全なスクリプト
# Install the Power BI PowerShell module if not already installed
Install-Module -Name MicrosoftPowerBIMgmt
# Import the Power BI PowerShell module
Import-Module MicrosoftPowerBIMgmt
# Fill the parameters
$workspaceID = 'workspaceID'
$warehouseid = 'warehouseID'
# Connect to the Power BI service
Connect-PowerBIServiceAccount
#Invoke warehouse takeover
$url = 'groups/' + $workspaceID + '/datawarehouses/' + $warehouseid + '/takeover'
Invoke-PowerBIRestMethod -Url $url -Method Post -Body ""