请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

八酷博客 首页 技术分享 解决问题 查看内容

测试

2020-9-22 16:22| 发布者: admin| 查看: 64| 评论: 0

摘要: 我的思路: step1:在这个workbook里新建两个sheet,一个作为数据输入,一个用来读取结果 step2:在原本你要输入值的地方引用输入sheet对应的单元格值,把结果输出对应的单元格引用到你输出sheet的对应单元格。 step ...
无敌土豆

最近在看腾飞大佬的asp.net core 微服务实战遇到了ocelot集成identity server4认证时一直给报错:

warn: Ocelot.Authentication.Middleware.AuthenticationMiddleware[0]
      requestId: 0HM2ME7808IH4:00000009, previousRequestId: no previous request id, message: Client has NOT been authenticated for /user and pipeline error set. Request for authenticated route /user by  was unauthenticated
warn: Ocelot.Responder.Middleware.ResponderMiddleware[0]
      requestId: 0HM2ME7808IH4:00000009, previousRequestId: no previous request id, message: Error Code: UnauthenticatedError Message: Request for authenticated route /user by  was unauthenticated errors found in ResponderMiddleware. Setting error response for request path:/user, request method: GET

一直不知道问题出来哪里,小弟请求园子里各位大佬给指点一下

首先给出错误:

项目结构如下:

【Gateway.API】中Ocelot.json配置如下:

{
  "Routes": [
    {
      "DownstreamPathTemplate": "/api/user",
      "DownstreamScheme": "http",
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost",
          "Port": 5001
        }
      ],
      "UpstreamPathTemplate": "/user",
      "UpstreamHttpMethod": [ "Get" ],
      "AuthenticationOptions": {
        "AuthenticationProviderKey": "finbook",
        "AllowedScopes": []
      }
    }
  ],
  "GlobalConfiguration": {
    "BaseUrl": "http://localhost:5000"
  }
}

【Gateway.API】中Startup.cs配置如下:

PostMan 请求:

ocleot IdentityServer4


identityServer4 最新版本的 需要配置APISCOPE,老版本 只需要配置APIResource即可。不知道你有没有配。
详细可见 is4 文档 Resource章节

收获


gt1987

确实,我没注意看最新的官方文档,谢谢老哥!
下面贴上官方最新文档及博客园上的最新配置Scope的正确姿势的文档
官方文档:https://identityserver4.readthedocs.io/en/latest/topics/resources.html
博客园:https://www.cnblogs.com/xhznl/p/13223964.html

下面贴上我最新配置方式:
Client,ApiResource,ApiScope配置方式如下方便大家参考:

无敌土豆


文章点评