【发布时间】:2018-09-13 13:15:22
【问题描述】:
我已经实现了ClaimRequirementFilter,但是没有调用 OnAuthorization 方法。下一行代码添加到 Startup 类的 ConfigureServices 方法中:
services.AddMvc(config => config.Filters.Add(typeof(ClaimRequirementFilter)));
我正在使用下一个命名空间:
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
【问题讨论】:
-
你添加授权和认证吗?
-
@aguafrommars 我已经实现了 public AuthenticationFilter(RequestDelegate next) 并使用了 app.UseMiddleware
();在启动类中。如果你的意思是别的,你能否解释一下实现认证/授权部分的正确方法。我想进行身份验证(在 AuthenticationFilter 中调用 SSO api)并在 ClaimRequirementFilter 中检查登录用户是否具有执行请求的特定权限。 -
我个人更喜欢使用政策来检查索赔:docs.microsoft.com/en-us/aspnet/core/security/authorization/…
-
并使用 OpenIdConnect 和身份验证中间件:docs.microsoft.com/en-us/aspnet/core/migration/1x-to-2x/…
-
您的 SSO 是什么?我认为您不需要自定义身份验证中间件
标签: c# asp.net-core authorization