我正在使用System.DirectoryServices.AccountManagement来提供用户查找功能。该企业有多个区域特定的AD域:AMR、EUR、JPN等。以下适用于EUR域,但不会返回来自其他域的用户(自然):varcontext=newPrincipalContext(ContextType.Domain,"mycorp.com","DC=eur,DC=mycorp,DC=com");varquery=newUserPrincipal(GetContext());query.Name="*Bloggs*";varusers=newPrincipalSearcher(q
我有一个小项目,使用VisualStudio2013、.NET4.5、MVC5和EF6构建。我使用Windows身份验证创建它,但现在我需要检查ActiveDirectory组中的成员身份以允许或拒绝访问权限。我已经深入了许多非常深的兔子洞,试图找出如何做到这一点。起初我假设我需要更改项目以使用“本地”身份验证。但是,我发现:VS2013中显然没有办法更改项目使用的身份验证类型(除了手动编辑某些文件)。目前还没有任何文档解释如何设置“本地”身份验证。(真的吗?这怎么可能?)无论如何,我需要的根本不是“本地”身份验证,因为它仅适用于WindowsIdentityFederation服务(
我试图在运行时加载一个程序集,但我不确定为什么我不能使用静态Activator.CreateInstance()在程序集中创建一个类型的实例。它适用于Assembly.CreateInstance()。stringassemblyFilename="MyAssembly.dll";stringassemblyName="MyAssembly";stringtypeName="MyAssembly.MyType";FileInfofileInfo=newFileInfo(assemblyFilename);这个有效:varassembly=Assembly.LoadFrom(assemb
我正在尝试通过Web界面(ASP.NET/C#)运行powershell命令,以便在Exchange2007上创建邮箱等。当我使用VisualStudio(Cassini)运行页面时,页面会正确加载.但是,当我在IIS(v5.1)上运行它时,出现错误“未知用户名或错误密码”。我注意到的最大问题是Powershell是作为ASPNET而不是我的ActiveDirectory帐户登录的。如何强制使用另一个ActiveDirectory帐户对我的Powershellsession进行身份验证?基本上,到目前为止我的脚本看起来是这样的:RunspaceConfigurationrc=Runsp
在哪里可以找到执行以下操作的示例?从ActiveDirectory中提取用户。获取用户所属的组。获取分配给每个组的权限列表。这似乎是一项简单的任务,但我找不到解决方案。总体目标是分配自定义权限并使用它们来控制应用程序内的权限。 最佳答案 如果您使用的是.NET3.5及更高版本,则应查看System.DirectoryServices.AccountManagement(S.DS.AM)命名空间。在这里阅读所有相关信息:ManagingDirectorySecurityPrincipalsinthe.NETFramework3.5MS
这是一篇过时的文章,但是http://msdn.microsoft.com/en-us/library/ff650308.aspx#paght000026_step3说明我想做什么。我选择了Nancy作为我的Web框架,因为它的简单性和低仪式性的方法。因此,我需要一种使用Nancy对ActiveDirectory进行身份验证的方法.在ASP.NET中,看起来您只需通过web.config文件中的一些设置即可在基于数据库的成员资格提供程序和ActiveDirectory之间切换。我并不特别需要它,但在开发和生产之间切换的能力将是惊人的。如何做到这一点? 最佳答
此链接http://msdn.microsoft.com/en-us/library/aa772153(VS.85).aspx说:您最多可以在单个LDAP连接上注册五个通知请求。您必须有一个专用线程来等待通知并快速处理它们。当您调用ldap_search_ext函数来注册通知请求时,该函数会返回标识该请求的消息标识符。然后使用ldap_result函数等待更改通知。发生更改时,服务器会向您发送一条LDAP消息,其中包含生成通知的通知请求的消息标识符。这会导致ldap_result函数返回标识更改对象的搜索结果。我在.NET文档中找不到类似的行为。如果有人知道如何在C#中做到这一点,我将
不,这不是关于泛型的问题。我有一个工厂模式,其中包含几个带有内部构造函数的类(如果不通过工厂,我不希望它们被实例化)。我的问题是CreateInstance失败并出现“没有为此对象定义无参数构造函数”错误,除非我在非公共(public)参数上传递“true”。例子//FailsActivator.CreateInstance(type);//WorksActivator.CreateInstance(type,true);我想使工厂通用化以使其更简单一些,如下所示:publicclassGenericFactorywhereT:MyAbstractType{publicstaticTG
由于一些防火墙问题,我们需要使用“主动”模式执行FTP(即不是通过启动PASV命令)。目前,我们使用的代码如下://Gettheobjectusedtocommunicatewiththeserver.FtpWebRequestrequest=(FtpWebRequest)WebRequest.Create("ftp://www.contoso.com/test.htm");request.Method=WebRequestMethods.Ftp.UploadFile;//ThisexampleassumestheFTPsiteusesanonymouslogon.request.Cr
我已经搜索了很长一段时间如何设置/更改密码以及撤销/恢复用户,但尚未找到真正适合我的解决方案。我开始倾向于将跨域作为问题所在,尽管我可以通过编程方式创建/删除/更新甚至连接/断开用户与组的连接。基本上,我尝试了以下方法:DirectoryEntryaccount=newDirectoryEntry("LDAP://"+adHostname+"/"+dn,adUserName,adPassword);account.Invoke("SetPassword","Password1");account.Properties["LockOutTime"].Value=0;account.Com