最近在做LCS开发时,做了一套WEB方式的管理系统,专门用于AD用户的管理。在开发中碰到了一些问题,现在和大家一起分享一下
系统环境:windows server 2003 enterprise+iis6.0+AD+.net framework2.0
在ASP做的管理页面上,提交添加一个用户时,出现如下情况:
System.Reflection.TargetInvocationException: 调用的目标发生了异常。 ---> System.UnauthorizedAccessException: 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))
--- 内部异常堆栈跟踪的结尾 ---
在 System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args)
在 ADManage.AddLcsUser(String userId, String pwd)
在ASP后台程序里,我使用的是用LADP(轻量级目录访问协议)来操作AD的,帐号是用的administrator帐号,没想到出现权限不够的问题,比较纳闷。因为在程序没发布出去之前,在本机调试没有任何问题,经过一番摸索,
考虑到应该是IIS安全设置的问题。发现IIS中,我的程序所在的池的配置中,配置的用户不是管理员的帐号,于是修改配置帐号为管理员帐号,一切准备就绪后,再进入管理页面,添加用户成功。OH YEAH。