【问题标题】:Add Authorization to a specific Endpoint in Azure API Management在 Azure API 管理中向特定终结点添加授权
【发布时间】:2018-05-09 11:01:59
【问题描述】:

我正在对我的 API 使用 Azure API 管理。
在我的 API APP 中,我有一个需要 JWT 验证的端点。
我正在尝试使用 API 管理直接添加授权,如下图所示。

但是,当我直接添加承载授权并保存时,当我重新打开 OPEN API 规范时,它会消失。
我是否将其添加到正确的位置?还是应该去其他地方。

我正在尝试添加的 BEARER 令牌:

  Bearer:
    type: apiKey
    name: Authorization
    in: header

【问题讨论】:

  • 虽然使用validate-jwt 策略几乎可以实现,但我们不能使用swagger/openApi Spec 明确指定它吗?

标签: azure swagger azure-api-management openapi


【解决方案1】:

目前只有几种方法可以用来控制 securityDefinitions 和安全属性:

  1. 在开放产品中包含/排除 API 使订阅密钥成为可选的。如果 API 仅包含在开放产品中,则整个 securityDefinition 和安全属性都将丢失。如果两者都 - 将创建 apiKey 安全定义,并且应该显示安全中的空对象以表明它们是可选的。

  2. 注册 OAuth/OpenID 服务器并将其分配给 API 会在 securityDefinitions 和安全属性中呈现相应的内容。它还向开发人员显示控件以在开发门户的控制台中获取令牌以进行测试 API 调用。请注意,此时 APIM 服务仍然没有为用户获取令牌,也没有对其进行验证。将 OAuth/OpenID 服务器与 API 关联纯粹是文档的事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-28
    • 1970-01-01
    • 2015-10-30
    • 2019-07-16
    • 2021-08-03
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多