症状
自定义连接器连接因身份验证失败而失败。 出现此问题时,会收到以下错误消息:
警报:<ConnectionName>连接未正常工作
原因
自定义连接创建期间设置了一个或多个不正确的 URL。
解决方案
在尝试配置自定义连接器之前,所有操作都应使用 Postman 等工具在 Power Automate 外部进行验证。
在配置自定义连接器之前,应在 Postman 等工具中成功完成以下每个步骤:
-
调用 OAUTH 令牌检索终结点。
-
使用返回的令牌调用 API 操作。
-
在令牌过期后调用 OAUTH 令牌刷新终结点。
-
使用刷新的新令牌调用 API 操作。
请注意,只有授权代码授予流和代理流支持刷新令牌。 (有关详细信息,请参阅 此 Microsoft Graph:开发人员博客文章.) 隐式授予和客户端凭据授予不支持刷新令牌。 因此,不能使用这些授权对自定义连接器进行身份验证。
使用 Postman 测试 OAUTH 令牌的生成
Postman 允许轻松测试通过 OAUTH2 进行身份验证的终结点。 若要执行此测试,必须在终结点上提供有关或配置的以下信息:
-
获取 Microsoft Azure 租户 ID。 租户 ID 显示在 Azure AD (Azure AD) 的"Azure Active Directory"边栏选项卡上,并位于 "属性"选项卡 上。
-
获取应用程序 (客户端) ID。 这也可在 Azure AD 边栏选项卡上找到,可在"应用注册 "选项卡 上找到。
下一个屏幕如下所示。 -
请确保https://oauth.pstmn.io/v1/callback应用程序的有效回调 URI。
-
记录应用程序必须进行身份验证的范围。
注意: 某些第三方身份验证提供商要求提供额外的范围,以使用 Power Automate 和 Power Apps 完全正常运行。 这包括脱机身份验证等功能 (相关连接自动刷新自定义连接器令牌) 。 这些附加范围超出了 Microsoft 的信息范围。 有关详细信息,请参阅身份验证提供程序的文档。
创建集合并获取新的访问令牌
在 Postman 中,创建一个集合。 在" 授权 "选项卡上,指定以下值:
-
类型: OAuth 2.0
-
标头前缀:Bearer
-
令牌名称:<用户选项>
-
授权类型:授权代码
-
回调 URL:选择此选项旁边的"使用浏览器进行授权"。 请注意,可能无法编辑 URL 本身。
-
身份验证 URL:https://login.microsoftonline.com/</oauth2/v2.0/authorize>租户ID
-
访问令牌 URL:https://login.microsoftonline.com/</oauth2/v2.0/authorize>租户ID
-
客户端 ID:<应用程序ID>
-
客户端机密: (可选,保留空白)
-
范围: (输入以空格分隔)
-
状态:<可选,保留空白>
-
客户端身份验证:在正文中发送客户端凭据。
选择此 对话框 底部的"获取新访问令牌"时,会进入浏览器向 Azure AD 进行身份验证,然后自动返回到 Postman。 如果在生成的对话框中看到访问令牌和刷新令牌条目,这意味着已成功配置 URL,可以继续创建自定义连接器。
定义自定义连接器的 OAUTH 设置
验证所有信息后,可以在"自定义连接器授权"部分中填充这些信息,如下所示。
外部资源
本文中讨论的第三方产品由独立于 Microsoft 的公司制造。 对于这些产品的性能或可靠性,Microsoft 不作任何默示或明示的担保。