Azure API Management是一种云托管服务,可以在任何平台上为现有HTTP API添加许多功能。这包括与安全性,API密钥管理,缓存,文档和许多其他交叉策略相关的功能。有关详细信息,请参阅:http://azure.microsoft.com/apim
Azure Api Management 使用arm 将 api 附加到现有 api
我想知道如何通过 ARM 部署将第二个 api 附加到 Azure api 管理中已注册的 api 中? 如果我在 Microsoft.ApiManagement/service 中使用相同的名称属性值...
我创建了一个Azure数据工厂管道,它有多个管道参数,当管道触发时我需要一直输入这些参数。现在我想从我的邮递员触发这个管道...
在APIM中我面临这个问题。我尝试了多次但仍然显示未找到。 我已经用我的名字创建了logicapp并尝试从APIM配置它。在API的logicapp资源中检查它...
在混合场景中,APIM 是否应该用于系统到系统 Azure 云到本地的调用?
我正在创建一个有关混合本地/Azure 云场景的集成模式的参考架构。两个世界之间建立了一条Azure Express Route。 在现场...
我注意到在 APIM 测试选项卡中,当您从下拉列表中选择产品时,Ocp-Apim-Subscription-Key 具有 product=。 为什么不直接设置
我正在使用 validate-jwt 参考来验证我的令牌,效果非常好。 我正在使用 validate-jwt 参考来验证我的令牌,效果非常好。 <validate-jwt token-value="@((string)context.Variables["access_token"])" failed-validation-httpcode="401" failed-validation-error-message="Access token is invalid" output-token-variable-name="jwt-token"> <openid-config url="{{well-known-url}}" /> </validate-jwt> 我不明白的是:如果验证失败,我如何不在我的策略中返回错误? 我想以另一条路径继续执行我的策略(例如,通过将变量设置为 false,然后我可以使用 <choose> 进行分支)。 这可能吗? 您可以使用给定的策略来处理验证失败错误,其中我显式设置状态和自定义消息。 <policies> <inbound> <base /> <set-variable name="isTokenValid" value="false" /> <set-variable name="access_token" value="*******" /> <choose> <when condition="@((string)context.Variables["access_token"] != null)"> <validate-jwt token-value="@((string)context.Variables["access_token"])" failed-validation-httpcode="401" failed-validation-error-message="Access token is invalid" output-token-variable-name="jwt-token"> <openid-config url="https://login.microsoftonline.com/******/v2.0/.well-known/openid-configuration" /> </validate-jwt> <set-variable name="isTokenValid" value="true" /> </when> <otherwise> <set-variable name="isTokenValid" value="false" /> </otherwise> </choose> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> <choose> <when condition="@(context.Variables["isTokenValid"] == "true")"> </when> <otherwise> <!-- Do something else if the token validation failed --> <return-response> <set-status code="200" reason="Invalid Token" /> <set-body>Proceed further</set-body> </return-response> </otherwise> </choose> </on-error> </policies>
筛选 Azure API 管理日志以在 Dynatrace 中进行摄取跟踪(2xx-4xx-5xx 响应代码)
我使用 Application Insights 和 OpenTelemetry (OTLP) 与 Dynatrace SaaS 集成,成功从 Azure API 管理 (APIM) 收集了摄取的跟踪。但是,我无法过滤
获取/生成Azure APIm API的swagger url
我在 Azure APIm 中设置了 api,并且各个操作通过各自的 url 进行工作。 我想要这个 API 的 Swagger uri,它具有天蓝色域并列出其中的所有操作。 例如...
验证的开放 API 规范无法上传到 Azure API 管理
我正在尝试在我的 azure api 管理服务上导入与 https://github.com/ccouzens/keycloak-openapi/blob/master/keycloak/9.0.json 类似的 OpenAPI 规范 json。 我验证了我的版本...
我通过java注释生成了以下openapi.json,当我将其导入azure api管理门户时,它会生成一个长名称,例如:
当“重试”设置为“无”时,Azure 逻辑应用 APIM 连接器会重试
我们有一个逻辑应用程序,它使用 APIM 调用后端 API 以使用 POST 请求创建记录。我们发现后端创建的一些记录是重复的。当我们深入观察时...
我在 Azure 中配置了 API 管理服务,在特定时间内不会使用该服务。为了削减成本,我想停止它并能够在需要时启动它。 我有
如何在 Azure API 管理中为查询字符串参数指定重写 url
我正在使用 Azure API 管理将传入的查询字符串转换为另一个查询字符串。 我的转换代码是: 我正在使用 Azure API 管理将传入的查询字符串转换为另一个查询字符串。 我的转换代码是: <policies> <inbound> <rewrite-uri template="api/primes?a={a}&b={b}" /> <base /> </inbound> <backend> <base /> </backend> <outbound> <base /> </outbound> <on-error> <base /> </on-error> </policies> 当我尝试保存编辑时,出现错误: One or more fields contain incorrect values: '=' is an unexpected token. The expected token is ';'. Line 15, position 50. 指的是a={a}中的等号。如何修正rewrite-uri的模板?输入网址例如为https://example.com/sum?a=7&b=5。 尝试更换: <rewrite-uri template="api/primes?a={a}&b={b}" /> 与: <rewrite-uri template="api/primes?a={a}&b={b}" /> 欲了解更多详细信息,请访问 https://azure.microsoft.com/en-us/blog/policy-expressions-in-azure-api-management/。 您只需要在APIM中创建“查询参数”而不是“模板参数”。 然后您的重写 uri 不需要包含查询参数,因为一旦通过入站提供,APIM 就会自动将其添加到后端 url。 <rewrite-uri template="api/primes" /> 如果请求 URL 是这样的: https://example.com/sum?a=7&b=5 那么发送到后端的HTTP请求将是这样的: GET backendapi/api/primes?a=7&b=5 如果请求 URL 没有这样的查询字符串: https://example.com/sum 那么发送到后端的 HTTP 请求就简单如下: GET backendapi/api/primes 在我的例子中,传入的查询参数由 APIM 进行编码,因此我必须执行以下操作才能获得 1:1: <inbound> <base /> <set-variable name="queryDecoded" value="@(System.Net.WebUtility.UrlDecode(context.Request.Url.QueryString))" /> <rewrite-uri template="@{ var queryDecoded = (string)context.Variables["queryDecoded"]; var uri = "/path" + queryDecoded; return uri; }" copy-unmatched-params="false" /> </inbound>
使用 Liquid 模板将 APIM 响应作为有效 JSON 返回
我正在尝试使用 Azure APIM 策略修改响应,如下所示: @{ JObject 响应 = context.Response.Body.As(preserveContent: true); 返回响应.ToStr...
如何通过使用自定义 apiKey(而不是 subscripon id)在 azure api 管理中使用速率限制?
很容易通过使用来限制API的速率, 但我需要使用 apiKey 来限制 api 的速率...
使用受 APIM 保护的 AAD 应用程序配置的 Azure 函数应用程序无法使用重定向 url 进行身份验证
我有一个 Azure 功能应用程序,具有 Microsoft 身份提供商集成(AAD 应用程序)和入站流量配置,并启用了受限制的公共网络访问,设置为“从 sel 启用...”
目前我们正在使用 azure frontdoor 进行联网并将服务公开到互联网。现在我们只想使用 API 管理来向客户端提供服务并删除 Front Door
我希望有人可以帮助理解我在这里做错了什么,因为我完全困惑和迷失了。 我正在尝试以内部模式构建 API 管理,并在其前面有一个应用程序...
Azure APIM 从 JSON 到 XML 的液体转换不适用于 for 循环
我目前遇到了与以下线程中描述的问题类似的问题,并且确实需要一些帮助 - 循环的 Azure API 管理策略不适用于阵列 我有
当我尝试在 Visual Studio Code 中使用 Azure APIM 管理扩展调试策略时出现 404 错误
我正在尝试使用 Visual Studio 代码中的 Azure APIM 管理扩展来调试 APIM 策略。 该请求是 POST,我能够成功使用 TEST 选项。然而,当我尝试...