Validation Identityserver3:令牌验证请求在Fiddler中不可见

Validation Identityserver3:令牌验证请求在Fiddler中不可见,validation,fiddler,identityserver3,endpoint,Validation,Fiddler,Identityserver3,Endpoint,在fiddler composer中,我执行对本地api的调用,该api由本地IdentityServer 3保护 我添加了令牌,并将中间件配置为在服务器上验证令牌。Tt工作正常,在Idenityserver3日志文件中,我看到配置范围的成功令牌验证日志消息 我假设,使用htis config,每次调用api时,Idsrv3中间件都会在后台调用令牌验证端点 我的问题是fiddler没有显示这个中间件请求,只显示对api本身的调用。这是因为fiddler的设置,还是因为fiddler看不到该请求

在fiddler composer中,我执行对本地api的调用,该api由本地IdentityServer 3保护

我添加了令牌,并将中间件配置为在服务器上验证令牌。Tt工作正常,在Idenityserver3日志文件中,我看到配置范围的成功令牌验证日志消息

我假设,使用htis config,每次调用api时,Idsrv3中间件都会在后台调用令牌验证端点

我的问题是fiddler没有显示这个中间件请求,只显示对api本身的调用。这是因为fiddler的设置,还是因为fiddler看不到该请求

有没有办法展示它


谢谢,

可能是.NET没有将本地主机流量路由到fiddler代理。有关解决方法,请选中此项。

此外,请检查您是否正确配置了验证模式。根据文档,如果您无法在本地访问加密库,则验证端点非常有用

有效的验证模式为

  • ValidationMode.
    -对JWT使用本地验证,对引用令牌使用验证端点

  • ValidationMode.Local
    -使用本地验证oly(仅适用于JWT令牌)

  • ValidationMode.ValidationEndpoint
    -仅使用验证端点(适用于JWT和引用令牌)

  • 您可以在
    IdentityServerAuthenticationOptions

                app.UseIdentityServerBearerTokenAuthentication(new IdentityServerBearerTokenAuthenticationOptions
                    {
                        Authority = "https://localhost:44333/core",
                        //RequiredScopes = new[] { "write" },
    
                        // client credentials for the introspection endpoint
                        ClientId = "write",
                        ClientSecret = "secret",
                        ValidationMode = ValidationMode.Local
                    });
    

    我不使用localhost引用,而是为所有本地站点使用hosts条目。作为我打开的一个测试,fiddler过滤器捕获的测试似乎也没有问题,单击“帮助”>“疑难解答”不会以删除线字体显示任何内容。我正在使用UseOpenIdConnectAuthentication中间件,在隐式流中与人类用户有问题。令牌已过期,但用户仍保持身份验证。我似乎无法在此设置验证模式如果您使用的是webapi,则需要在启动时配置
    useIdentityServerBealerTokenAuthentication
    中间件
    UseOpenIdConnectAuthentication
    中间件是为MVC客户端设计的。我使用UseIdentityServerBealerTokenAuthentication在我的MVC应用程序中发布后端ajax令牌,但不确定这是否是正确的方法,尽管我知道,所有对后端的ajax请求都通过cookie身份验证获得授权,我似乎不需要后端令牌!是 啊如果您的后端不应该被外部客户端调用,那么就不需要使用承载身份验证。