asp.net - 授权与 Active Directory .NET Core 1.1、.Net Framework 的属性交互

标签 asp.net .net asp.net-mvc asp.net-core .net-core

我目前正在使用 [Authorize] Controller 顶部的属性,旨在根据 AD 组限制对我网站特定部分的访问。我正在使用 IIS 集成身份验证。托管站点的机器位于域中,可以与域 Controller 通信。我也在使用 .NET Core 1.1,但也尝试过使用完整的 .Net Framework 产生相同的结果。

目前我有[Authorize(Roles = "Domain\\My_AD_Group")]但无法让 AD 组主动针对站点进行更新。如果我更改组中的用户,则强制复制并在本地重建站点没有任何变化。如果我在复制后重新启动本地计算机,这似乎可以解决问题,并且可以正确读取组权限。同样的事情发生在 IIS 中。

似乎有缓存的凭据在本地某处排序,但不确定是否是这种情况。非常感谢任何帮助。

编辑:我也在完整的 .Net 框架中尝试过这个,也有同样的问题。

最佳答案

如果您正在更新用户的组成员身份,您可以尝试在 Windows 命令提示符下运行“Gpupdate/force”以缩小范围。

或者您可以添加另一个注释来不缓存 Controller 操作:

[OutputCache(NoStore = true, Duration = 0)]
public ActionResult ControllerAction(int id
{
// stuff
}

关于asp.net - 授权与 Active Directory .NET Core 1.1、.Net Framework 的属性交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43814449/

相关文章:

c# - Intellisense 无法从扩展方法推断类型

javascript - 复选框 onchange 函数

asp.net-mvc - 在 ASP.NET MVC 应用程序中集成 Angular 和 Webpack

c# - 在数据库中插入数据的存储库或服务 - Entity Framework

c# - 如何使用 PetaPoco 库从数据库自动创建模型?

.net - 如果模块已导入到 Powershell 中,如何删除该模块?

c# - Web 服务仅针对某些请求返回 "Access is denied"

c# - 如何为 <asp :button>? 的访问 key 添加下划线

javascript - 没有在 ASP.Net 中获取 ClientID

javascript - 如何在转发器控件中获取asp控件(_lblCouncils)的客户端ID?