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