我正在开发一个asp.net MVC 5解决方案,我现在需要实现身份验证和授权。该解决方案有一个管理“繁重工作”的外部服务,该服务将在每个请求中使用用户名和密码,并且在成功验证时发回具有应与控制器中的属性匹配的用户权限(角色)的令牌。如何在无身份的asp.net MVC中实现自定义身份验证/授权?
对我的解决方案的每个请求都应该对外部服务发出请求。我如何在我的ex.NET asp.net MVC 5解决方案中以简单的方式实现它?我曾看过身份证和欧文,但他们对我试图达到的目标感到过分臃肿。我也发现了关于Forms auth的一些信息,但它似乎被弃用?
我试过的工作流程是这样的:
用户请求一个控制器。控制器标有一个属性,如“Require(Roles =”IT“)”。我实现IauthenticationFilter并在OnAuthentication中调用我的服务来验证用户请求。从回报中,我将验证用户实际上是他所说的那个人,以及他是否被允许在所述控制器上输入所述动作。
任何输入的赞赏,因为我很难找到关于如何实现自定义auth解决方案的可靠信息。有没有最佳做法?
谢谢!
你试过[IdentityServer4(http://docs.identityserver.io/en/release/) ? – rmjoia
基本上我们有一个完整的身份解决方案滚动作为服务,将执行繁重的举措和管理。但是现在我们有一个小型的mvc解决方案,需要使用它。所以我在寻找更多的方式来告诉MVC为每个请求询问我们的身份服务器的凭据,而不是建立在身份。 –
我想你已经说过,是一个实施习惯的问题。关于最佳实践,这主要是一个基于意见的问题,所以你会得到很多,或者没有。[用身份定制ASP.NET身份验证](https://mva.microsoft.com/en-us/training-课程/定制-asp-net-authentication-with-identity-8647),[实现自定义认证(MVC5)](https://stackoverflow.com/questions/39612257/implementing-custom-authentication-mvc5),通常我去与身份服务器,对不起,帮不了多少:( – rmjoia