azure-api-management 相关问题

Azure API Management是一种云托管服务,可以在任何平台上为现有HTTP API添加许多功能。这包括与安全性,API密钥管理,缓存,文档和许多其他交叉策略相关的功能。有关详细信息,请参阅:http://azure.microsoft.com/apim

如何使用 apim 和逻辑应用将代理应用程序数据读取到 azure sql

我有代理应用程序,它生成需要使用 APIM 和逻辑应用程序将其推送到 azure sql 的数据。 我创建了代理应用程序将以 json 格式发布数据 我已经创建了空白...

回答 1 投票 0

将 Azure 前门与 APIM 和 Azure Web App 连接

我们计划将Azure Front Door用于Azure App Service(Web应用程序),并计划使用可能不需要向外部公开或直接向公众公开的APIM。只有 Azure Web 应用程序才能...

回答 1 投票 0

在 Azure API 管理中将最低 apiVersion 启用为 2021-08-01,导致现有逻辑应用出现保存问题或部署错误

将 API 管理的最低 apiVersion 保存或启用到 2021 年 8 月 1 日后,我无法保存或部署(通过 ARM 模板)在

回答 1 投票 0

如何在 Azure API 管理中绕过 API 中单个端点的订阅密钥

我想避免为 API 中的单个端点提供订阅密钥。到目前为止,我发现我可以禁用整个产品或 API 的订阅,这不是我想要的。这还算...

回答 2 投票 0

登录 Azure APIM 开发者门户后,最好不要手动传递授权标头

我们已将 API 集成到 API 管理中,并通过利用 Azure AD B2C 身份提供商实施安全措施,我们通过创建新的 Azure AD B2C 租户来配置 Azure AD B2C...

回答 1 投票 0

Azure APIM:检查参数是否已存在于字典中

在 APIM 中,在其中一个 API 内,我在“所有操作”内有一个与此类似的策略: 在 APIM 中,其中一个 API 内,我在“所有操作”内有一个与此类似的策略: <policies> <inbound> <base /> </inbound> <backend> <base /> </backend> <outbound> <base /> <choose> <when condition="@(context.Variables["xvar"] == null || (string)context.Variables["xvar"] == "oneValue")"> <trace source="info" severity="information"> <message>Hi, xvar exist</message> </trace> </when> <otherwise /> </choose> </outbound> <on-error> <base /> </on-error> </policies> 变量 xvar 确实存在于该 API 中的少数操作中,例如t1。那里的政策看起来与此类似: <policies> <inbound> <set-variable name="xvar" value="oneValue" /> <base /> <set-backend-service base-url="https://testingtest.com" /> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies> 但是,此 API 中的大多数操作中并不存在此变量,例如t2。因此,当我调用此操作时,我收到此错误: choose (1.469 ms) { "messages": [ { "message": "Expression evaluation failed.", "expression": "context.Variables[\"xvar\"] == null || (string)context.Variables[\"xvar\"] == \"oneValue\"", "details": "The given key was not present in the dictionary.\r\n at System.Collections.Generic.Dictionary`2.get_Item(TKey key)" }, "Expression evaluation failed. The given key was not present in the dictionary.\r\n at System.Collections.Generic.Dictionary`2.get_Item(TKey key)", "The given key was not present in the dictionary." ] } 我应该改变“所有操作”中的条件来检查字典中是否存在或不存在变量 请使用以下表达式检查所有操作中变量是否存在: context.Variables.ContainsKey("xvar") 所有操作 - 政策: <policies> <inbound> <base /> <set-backend-service base-url="http://echoapi.cloudapp.net/api" /> </inbound> <backend> <base /> </backend> <outbound> <base /> <choose> <when condition="@(context.Variables.ContainsKey("xvar") && !context.Variables.GetValueOrDefault<string>("xvar").Equals(string.Empty))"> <trace source="info" severity="information"> <message>Hi, xvar exist</message> <metadata name="xvar" value="@(context.Variables.GetValueOrDefault<string>("xvar"))" /> </trace> </when> <otherwise /> </choose> </outbound> <on-error> <base /> </on-error> </policies> t1 - 政策: <policies> <inbound> <set-variable name="xvar" value="oneValue" /> <base /> <set-backend-service base-url="http://echoapi.cloudapp.net/api" /> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies> t2 - 政策: <policies> <inbound> <base /> <set-backend-service base-url="http://echoapi.cloudapp.net/api" /> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies> 这会跟踪 t1 和 t2 的以下消息: 出站 t1 - 选择: { "message": "Expression was successfully evaluated.", "expression": "context.Variables.ContainsKey(\"xvar\") && !context.Variables.GetValueOrDefault<string>(\"xvar\").Equals(string.Empty)", "value": true } 出站 t1 - 追踪: { "message": "Expression was successfully evaluated.", "expression": "context.Variables.GetValueOrDefault<string>(\"xvar\")", "value": "oneValue" } 出境t2 - 选择: { "message": "Expression was successfully evaluated.", "expression": "context.Variables.ContainsKey(\"xvar\") && !context.Variables.GetValueOrDefault<string>(\"xvar\").Equals(string.Empty)", "value": false }

回答 1 投票 0

我可以使用 OAuth 令牌作为 Ocp-Apim-Subscription-Key 的替代品吗?

我正在考虑使用 Azure API 管理为许多后端 API 提供一致的前端。 大多数 API 使用 OAuth 2.0 应用程序流程进行保护(ClientID + 客户端密钥,...

回答 2 投票 0

为 Azure 中的一个 API 创建多个订阅密钥

我正在寻求快速胜利来保护具有多个订阅密钥的 API,以便将它们分配给不同的提供商并允许单独访问。我知道 Oauth2 可能是最好的...

回答 1 投票 0

Azure APIM 导入 OpenAPI 规范在 GitHub 构建操作中失败

从我的 GitHub Build 操作登录到 Azure 后,我尝试更新我的 APIM OpenAPI 规范以使其与我的源代码保持同步。 我尝试通过执行以下命令来做到这一点: - 名称:更新

回答 1 投票 0

尝试通过 Terraform 更新 Azure API 网关操作后端时出现问题

我想要的只是使用开放 API yaml 文档中定义的 api 操作来部署我的 Azure API 网关。我的下面的代码部署了 Windows 函数应用程序和 API 网关,我也可以看到

回答 1 投票 0

如何在 Blazor Wasm 中阻止 HttpClient/浏览器请求客户端证书

使用 HTTP 客户端从 Blazor WASM 调用 APIM 上的 API 时,系统会要求用户选择客户端证书。我们不需要这种额外的身份验证方法,因为该方法的安全性是...

回答 1 投票 0

除非取消并立即调用 Azure API 服务 (APIM),否则为什么我会收到 ECONNRESET?

我有一个经过身份验证的 Azure 应用服务证书。该服务位于 APIM 后面,负责进行身份验证。自某些天以来,此服务现在会系统地返回 ECONNRESET 错误,当...

回答 1 投票 0

Azure API 管理 - 命名值

有没有办法让命名值记录文本和表达式的组合。下面给出了我想要实现的示例格式,不幸的是我尝试了所有方法,但表达式是...

回答 1 投票 0

Azure API 管理 URL 未连接到 API

我是 API 管理新手。我创建了一个管理资源,已将函数应用程序连接到该资源,此外,我还确保需要订阅才能访问 API/函数...

回答 1 投票 0

将 SignalR 与 Azure APIM 和应用程序网关结合使用时连接失败

就上下文而言,我当前使用的 Azure 环境具有以下核心组件: Azure APIM > 应用程序网关 > Web 应用程序防火墙 > Vnet > ASE > 应用程序服务...

回答 1 投票 0

内部和外部的 Azure Api 管理基本层

您对我应该如何使用端点创建 Azure api 管理有什么建议吗 GET /users 只能从我们公司内部网络访问 使用 ip 过滤获取内部和外部的 /cars...

回答 1 投票 0

通过 Azure APIM 将 AD 令牌传递到 Dynamics Web API 服务

我有一个 Azure APIM 服务,它在后台连接到 Dynamics Web API。我有一个现有的应用程序注册 (backend-crm-api),它公开对 Dynamics Web Api 的访问 - 这是做的...

回答 1 投票 0

Azure 的速率限制策略,用于限制特定订阅无法按预期工作

我的入境政策中有此内容: 我的入境政策中有此内容: <choose> <when condition="@(context.Subscription.Name=="someName")" /> <when condition="@(context.Subscription.Name=="otherName")" /> <otherwise> <rate-limit calls="50" renewal-period="300" remaining-calls-variable-name="remainingCallsPerSubscription" /> </otherwise> </choose> 它似乎没有按预期工作,还限制了上面指定的订阅,我错过了什么吗? 附注我属于消费模式 我使用了相同的策略来免除正在使用的订阅密钥 rate-limit 策略。 出于测试目的,我接听了 10 个电话。 <policies> <inbound> <base /> <choose> <when condition="@(context.Subscription.Name=="test")" /> <when condition="@(context.Subscription.Name=="demo")" /> <otherwise> <rate-limit calls="10" renewal-period="300" remaining-calls-variable-name="remainingCallsPerSubscription" /> </otherwise> </choose> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies> 测试时,您需要传递订阅密钥名称为Ocp-Apim-Subscription-Key,该值将是您的订阅密钥的值,否则它将获取context.Subscription.Name的值作为Built-in all-access subscription默认情况下。 当 context.Subscription.Name 的值为 false 时,我得到如下所示的预期响应。 为了获得预期的响应,请确保您没有在全局或 API 级别定义任何其他策略。

回答 1 投票 0

Azure API 管理 DevOps 资源工具包的 GitHub 存储库页面上缺少 GitHub 操作示例链接

有 Azure API Management Devops Resource Toolkit GitHub 存储库,它描述了如何将 Azure API 部署到其他 API < instance using resource toolkit and provided some links of samples for

回答 1 投票 0

将 Azure API 管理实例部署到虚拟网络时出现问题 - 内部模式

我在内部模式下将 Azure API 管理实例部署到虚拟网络时遇到一些奇怪的问题。本质上,我正在关注 Microsoft 的这篇文章。 在...中部署 Azure APIM

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.