User.IsInRole仅适用于AD组SID(而不是组名)

时间:2016-12-07 16:34:55

标签: asp.net asp.net-mvc-5 windows-authentication roleprovider isinrole

如果我只使用Windows授权,我可以轻松使用User.IsInRole(“Web Developers”)而不会出现问题。但是,当我添加SQL角色提供程序时,如果我使用组的SID,User.IsInRole将仅返回true(对于Active Directory组)。

这似乎不是预期的行为。我已经看到SID查询在性能上更好,但是当人类可读的名称可用时,使用机器可读的SID进行编程似乎不是最理想的。

我的解决方法是编写一个按名称执行SID查找的方法,并将其传递给User.IsInRole(降低性能),我想避免这种情况。

有人可以提出解决方案,还是指出我正确的方向?

0 个答案:

没有答案