嗯,我目前正在开发一个必须使用本地Active Directory作为成员的应用程序。由于我周围没有域控制器,而且虚拟机实例对我的PC来说太多工作,所以我使用Active Directory Lightweigth Directory Services (AD LDS)创建目录实例并添加了一些用户。
该应用程序可以完美地验证用户。
当我想实现角色时,问题就来了。在这种情况下,您如何实现角色?我听说过授权管理器(AzMan),但当我开始配置它时,我只能添加本地计算机用户,而不能添加AD实例用户。
我想知道如何在AzMan中引用AD用户,以便可以使用AzMan角色提供程序,或者是否有其他方法来实现授权,而不必实现全新的角色提供程序。
谢谢。
发布于 2011-02-22 00:37:33
我最终使用了来自Codeplex的ADRoleProvider。我对它做了一些更改,因为AD LDS用户对象没有sAMAccountName属性,而原始源使用了该属性。我只是指向了它,所以它使用了principalUsername属性。
发布于 2011-02-21 14:27:37
主要参考本文:http://blogs.msdn.com/b/azman/archive/2006/05/06/591230.aspx
基本的限制是Windows管理单元使用AzMan对象选择器(可以让你从AD中选择用户或组),并且不支持ADAM (又称AD-LDS)。
基本的解决方案是,您必须编写代码来从AD-LDS中选择对象(用户和角色),并确定这些对象的SID。AzMan使用SID进行所有访问控制,无论存储放在何处(XML文件、SQL server或AD/AD-LDS/ADAM)。因此,当您创建组并添加成员,或者将AD-LDS角色直接分配给角色分配时,您必须使用AD-LDS中角色的SID(也称为“用户安全组类”),而不是它们的名称。
https://stackoverflow.com/questions/5005834
复制相似问题