gpt4 book ai didi

asp.net - 如何将 Active Directory 用于 ASP.Net 5 (MVC6) Intranet 应用程序

转载 作者:行者123 更新时间:2023-12-04 15:32:38 26 4
gpt4 key购买 nike

我正在开发一个 Intranet 应用程序,并希望使用现有组织 Active Directory 进行用户身份验证和基于策略的角色授权。

有人可以指出我正确的方向吗?我有点困惑(实际上很困惑)。

谢谢

最佳答案

每个身份验证和自动化资源在 http://docs.asp.net/en/latest/security/index.html

首先启动一个新的 ASP.Net Web 应用程序项目,选择 Web 应用程序模板,然后在右侧 Pane 中按“更改身份验证”按钮并选择“Windows 身份验证”。

您现在可以使用 [Authorize]从 RC2 开始,在检查基本身份验证与事件目录的类或方法上,您可以简单地使用组名 ala [Authorize(Roles=@"DOMAIN\GROUP")]
现在已经过时且繁琐的替代方案(仍然有效):

如果你看 User.Claims您可以看到每个用户组都存在 groupid 键。以此为基础,您可以执行类似 [Authorize(Policy="FOOBAR")] 的操作并在您的 Startup.ConfigureServices 中定义它方法通过

        services.AddAuthorization(
o => o.AddPolicy(
"FOOBAR",
p => p.RequireClaim("http://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid",
"ENTER GROUP SID")
));

请注意,RequireClaim 的第二个参数是一个字符串数组,以允许多个组。

另请注意通过此命令行魔术 dsquery group -name “ENTER GROUP NAME” | dsget group -sid 找出组 ID

关于asp.net - 如何将 Active Directory 用于 ASP.Net 5 (MVC6) Intranet 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34538724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com