创建与服务主体的连接

要创建与服务主体的连接,最佳方法是使用无提示注册服务主体注册计算机。 或者,您可以将权限授予计算机或计算机组上的服务主体,然后使用服务主体创建连接。

授予对计算机或计算机组的权限

要在计算机上授予权限:

  1. 登录到 Power Automate,然后在左侧导航窗格中选择计算机。 如果项目不在左侧导航窗格中,请选择 …更多,然后选择所需项目。
  2. 选择要共享的计算机或计算机组。
  3. 选择共享,然后在您的Dataverse实例中搜索并选择应用程序用户 AAD
  4. 选择用户,然后选择保存

计算机共享面板的屏幕截图

使用服务主体创建连接

与应用程序用户共享计算机后,创建连接。 您需要创建作为服务主体的连接。 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:环境 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。 您将在下一步中用来为自动部署预填充连接引用

后续步骤