サービス プリンシパルで接続を作成する
サービス プリンシパルとの接続を作成するには、サイレント登録でサービス プリンシパルを使用してマシンを登録するのが最良の方法です。 あるいは、マシンまたはマシン グループ上のサービス プリンシパルにアクセス許可を付与し、サービス プリンシパルを使用して接続を作成することもできます。
マシンまたはマシン グループにアクセス許可を与える
マシンにアクセス許可を付与する方法:
- Power Automate にサインインし、左側のナビゲーション ウィンドウで マシン を選択します。 項目が左側のナビゲーション ウィンドウに表示されない場合は、…さらに表示 を選択して、目的の項目を選択します。
- 共有するマシンまたはマシングループを選択します。
- 共有 を選択し、Dataverse インスタンスの アプリケーション ユーザー AAD を検索して選択します。
- ユーザーを選択し、保存 を選択します。
サービス プリンシパルを使用して接続を作成する
マシンをアプリケーション ユーザーと共有したら、接続を作成します。 サービス プリンシパルとして接続を作成する必要があります。 サービス プリンシパルとしての接続の作成は、Power Automate Web ポータルではサポートされていません。 これは現在、Web API への直接呼び出しでのみサポートされています。
アクセス トークンの要求
まず、Power Platform API とのやりとりに使用するアクセス トークンをリクエストします。 詳しくは、アクセス トークン をリクエストする を参照してください。
マシンまたはグループのグループ ID を取得する
接続を作成できるようにするには、マシンまたはマシン グループに関連付けられたグループ ID を取得します。
- グループの場合は、監視>マシン>マシン グループ に移動し、グループを選択します。 そして、URL からグループ ID を取得できます。
- マシンの場合は、データ>テーブル>すべて>フロー マシン グループ に移動します。 リストでマシンを検索し、フロー マシン グループ の列を表示します、これは、マシンに関連するグループ ID です。
サービス プリンシパルを使用して接続を作成する
接続を作成するには、先ほど取得したアクセストークンを使用して、Power Apps API に HTTP PUT
を送信し、接続を作成します。
PUT https://{ENVIRONMENT_ID_URL}.environment.api.powerplatform.com/connectivity/connectors/shared_uiflow/connections/{CONNECTION_ID}?api-version=1
Content-Type: application/json
Host: {ENVIRONMENT_ID_URL}.environment.api.powerplatform.com
Accept: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJu...
BODY:
{
"properties":
{
"environment":
{
"id": "/providers/Microsoft.PowerApps/environments/{ENVIRONMENT_ID}",
"name":"{ENVIRONMENT_ID}"
},
"connectionParametersSet":
{
"name":"azureRelay",
"values":
{
"username":{"value":"{MACHINE_ACCOUNT}"},
"password":{"value":"{MACHINE_PASSWORD}"},
"targetId":{"value":"{GROUP_ID}"}
}
}
}
}
上の例にはプレースホルダーが含まれています:
ENVIRONMENT_ID_URL
: すべての区切り文字を削除し、最後の 2 文字をピリオドで区切った環境 ID です。 (例: 37520647-dbdf-49fa-ba01-6134c14680c4 -> 37520647dbdf49faba016134c14680.c4)。ENVIRONMENT_ID
: 環境 ID です。- CONNECTION_ID: 接続の作成に使用される接続 ID です。 これは、有効な GUID である必要があります。 (
New-Guid
PowerShell コマンドを使用すると、次のようになります)。 MACHINE_ACCOUNT
: Windows セッションを開くために使用されるアカウントのユーザー名。MACHINE_PASSWORD
: アカウントのパスワードです。GROUP_ID
: 接続を作成したいグループ ID です。 詳細情報: マシンまたはグループのグループ ID を取得する
リクエストの完了後は、リクエストで使用した接続 ID を保存します。 次のステップでこれを使用して 自動展開用の接続参照を事前に設定 します。