捕获用户身份验证和刷新令牌 Power Automate

Capturing User Authentication and Refresh Tokens Power Automate

我已经使用 Power Apps 和 Power Automate 开发了一个自动化文档流程,创建自定义连接器和到 Docusign 的 HTTP 连接。

我遇到的问题是,一旦用户凭据在 Docusign 中过期(8 小时),自定义连接器就需要刷新。这会导致 Power Automate 流程失败,因为必须手动刷新连接器,并且不会自动提示用户更新其登录凭据。这会导致应用程序出现故障并且不可靠。

我已经成功创建了一个使用刷新令牌更新我的凭据的流程,该令牌使用自定义连接器解析(HTTP API 调用 Docusign)但是,我需要为其他用户获取刷新令牌并更新刷新令牌以获得相同的结果并避免必须使用自定义连接器。

我可以手动指向浏览器会话以调用用户 'login' 进行文档签名,然后在浏览器重定向响应中查看授权代码。

https://global.consent.azure-apim.net/redirect?code=eyJ0eXAiOiJNVCIsImFsZyI6IlJTMjU2Iiwia2lkIjoiNjgxODVmZjEtNGU1MS00Y2U5LWFmMWMtNjg5ODEyMjAzMzE3In0.AQsAAAABAAYABwAAoKHP_yXZSAgAACwoFwAm2UgCAOid-3Oz8jJHsDvIUG5hRR8VAAEAAAAYAAIAAAAFAAAAHQAAAA0AJAAAAGYwOWNlODQ0LTNlOWMtNDYxMy05MDc3LTRmOTJhYWNjY2U3OCIAJAAAAGYwOWNlODQ0LTNlOWMtNDYxMy05MDc3LTRmOTJhYWNjY2U3ODAAAKChz_8l2UgSAAEAAAALAAAAaW50ZXJhY3RpdmU3AEEOMo4J2G9Jo1RaIjs77bU.EcaJgCJHR2wsW_F0k9NJLbC3Q1F-uNuDm6YRTErVxmo2SCReyGF2KKfYlkWWJhg0bYWI-IO9PQclf5dk89adxGKTUMf_lpoUCibkg_l7yXCYi-tCZiI1gXpENlEFAkvMMH15CJVREfK4KQWvdhIxLaKIrUCMShhEaSP-U2kCoJea9BPpBDV0kmjT2LTiBdVkzCxqwZbqjik4ehpeH1uxWVpStGyUD1sLpXIYrU4uhC5B4yLPmgVZ7SbtGQPf-RCHeIYpOL6XJftrDiZMGHBlXVCwADndk1WhrCSnIs9YGKz1k2nJa1XPT-_bqrzM7wsvXn_QbpJ1ntvFJ6WmdabepQ

然后我可以应用此授权码使用 Postman 获取身份验证和刷新令牌。

我不知道如何拦截 returns Power Automate 中的用户授权代码(Http 触发器等)的浏览器会话。如果我能获得授权码,我就可以在 Power Automate 中获得身份验证令牌和刷新令牌。

(很遗憾,我是 Power Automate 新手。希望以下内容对您有所帮助。)

如果我可以重新表述你的问题:你想编写一个电源自动化连接器,它可以使用 oauth 刷新令牌根据需要创建新的访问令牌。这将使您的电源自动化连接器能够继续处理,而无需用户每 8 小时使用 DocuSign 进行身份验证。

是吗?如果我正确理解你的问题,你的连接器应该有一个服务器后端可用于管理身份验证。 (OAuth 授权码授予只能与可以保护应用程序机密的服务器一起使用。)

如果您的连接器(全部或部分)在服务器上运行,则使用您的服务器提供的不同重定向 URL。

然后,当用户使用 DocuSign 进行身份验证时,来自 DocuSign 的响应将发送到 your-app.example.com://oauth_response,您的连接器将收到它,然后您的连接器可以使用 authorization code 获取访问令牌刷新令牌

如果 Power Automate 调用进行身份验证调用

这些 stackover 流程​​答案也可能有帮助:

还有 google Power Automate custom connector OAuth2

也可以在 Power Automate 论坛上提问。这可能是最好的选择。您的问题实际上是关于 Power Automate,而不是 DocuSign。对于这个问题,DocuSign 只是另一个 OAuth 服务提供商。