【问题标题】:API to API - With a Service AccountAPI 到 API - 使用服务帐户
【发布时间】:2021-12-26 00:15:27
【问题描述】:

我正在尝试借助客户端凭据流从另一个 API (API1) 调用 API (API2)。是否可以仅授予对 API2 某些部分的访问权限?

为了提供一些上下文,当从 API1 调用 API2 时,我目前正在使用一个服务帐户来决定允许访问 API2 的哪些部分。服务帐号在 API2 中创建和配置(使用角色),并与 API1 共享。

我正在尝试使用 oAuth 的客户端凭据流来实现此目的,但我找不到任何有关 API 内受限访问的信息。我相信 ApiScopes 在这种情况下不会起作用。

您能否告诉我在客户端凭据流中是否可以进行受限 API 访问?或者这可以在任何其他流程中实现吗?

问候, 湿婆

【问题讨论】:

    标签: oauth-2.0 asp.net-core-webapi identityserver4 clientcredential


    【解决方案1】:

    或者,我们可以为 API2 定义一个新的应用程序角色。此角色将有权访问 API2 的选定部分。然后我们可以将此角色添加到您在客户端凭据流中使用的 Client_id。

    【讨论】:

      【解决方案2】:

      是的,您可以使用 ASP.NET Core 中的内置授权系统根据接收到的访问令牌中的声明来控制访问。 AddJwtBearer 所做的是将您的访问令牌(一旦通过身份验证)转换为 ClaimsPrincipalUser 对象。

      查看这些链接了解详情:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-09-13
        • 2022-01-15
        • 2021-09-30
        • 1970-01-01
        • 2019-11-06
        • 1970-01-01
        • 2014-02-01
        • 2021-06-22
        相关资源
        最近更新 更多