azure - Azure Logic App Http Connector 是否有一种内置方式可以获取用于访问受 OIDC/OAuth2 保护的 API 的令牌?
问题描述
我们有一个带有 Http 连接器的逻辑应用程序,它需要通过 IdentityServer4 3.x 访问受 OAuth2 保护的 API
据我所知,没有可以通过客户端凭据获取令牌的选项或连接器
我意识到您实际上可以编写一个 Http 连接器来调用 /token 端点,但是使用一个函数可以更轻松地将客户端凭据存储在 keyvault、AAS 应用程序设置或 Azure DevOps 和转换中,您还可以使用内存缓存.
这个想法是创建一个函数,它使用客户端凭据获取令牌,然后使用 LA http 连接器使用它,并使用令牌进行 Http 调用。除非这是一个坏主意。
解决方案
据我所知,没有可以通过客户端凭据获取令牌的选项或连接器
您可以参考以下步骤使用逻辑应用传递“承载”令牌。
1.您可以使用Http
Connector 发送 post 请求以通过Client Credential获取访问令牌。
2.一旦您的 HTTP 响应具有有效的令牌值,您将需要解析 JSON 数据以捕获该值。您可以从 HTTP 复制输出并将输出粘贴到Parse JSON
触发器的相应架构输入中。这将允许逻辑应用将 JSON 解析为动态内容值,您可以在以后引用这些值。
HTTP
3.使用您要调用的所需 API 端点创建一个新请求。此时,您需要向 HTTP 标头添加一些附加信息,以验证您的 API 请求。添加Authorization
到http头。
更多细节,你可以参考这篇文章。
推荐阅读
- typescript - 在 Typescript 中创建类时出现重复标识符错误
- python - 在opencv python中限制扫描区域
- google-apps-script - 在 Google Apps 脚本线性优化服务中添加约束
- python - Python 在给定路径内浏览并获取所有扩展名为“.txt”的文件,但路径存储在字典中
- mysql - 在laravel中将多个值插入数据库
- python - 如何使用groupby获取与列最大值对应的所有行
- java - 如何在 NatTables 的一列中对各种数据类型进行排序
- json - 我在尝试将我的 json 文件分成块 amd 然后创建 sifferent csv 文件并最终合并为一个 csv 文件时遇到错误
- ios - 添加“use_frameworks!” 在 podfile 中
- postgresql - TimescaleDB 时间戳类型