当前位置: 代码迷 >> SharePoint >> windows集成身份验证登录模式下,用户登录成功后怎的从active directory上取得用户详细信息
  详细解决方案

windows集成身份验证登录模式下,用户登录成功后怎的从active directory上取得用户详细信息

热度:382   发布时间:2016-05-02 06:53:42.0
windows集成身份验证登录模式下,用户登录成功后怎样从active directory上取得用户详细信息
登陆的时候是WINDOWS集成登陆,现在想要取AD中的数据。
用的方法:
DirectoryEntry entry = new DirectoryEntry("LDAP://域名",域内任一帐户名","password" );
DirectorySearcher mySearcher = new DirectorySearcher(entry);
 
                mySearcher.Filter = "(&(objectClass=user)(cn=" + user.Name + "))";  //搜索适配器
                mySearcher.PropertiesToLoad.Add("userPrincipalName");//添加自己需要找的属性
                mySearcher.PropertiesToLoad.Add("department");
                mySearcher.PropertiesToLoad.Add("mail");
                mySearcher.PropertiesToLoad.Add("title");
                    var result = mySearcher.FindOne(); //找到自己需要的一个


如上的代码是完全能够实现的。
那么问题来了,因为windows已经集成登陆过,现在的这个账户密码我是写死在代码里的(无论谁登陆都是用我自己的域内账号来访问AD)。我想知道不写这个密码怎么去访问AD?直接去了username和password在自己创建的console程序里好使,但是放在asp.net上就不好使了。
有没有大神帮忙回答下怎么解决,是要换方法吗?

有看过网上说是double-hop的问题,但是我只是在开发一个sharepoint portal上的feature而已,没有权限取改登陆方式,验证方式什么的
------解决思路----------------------
试试开启user profile服务,然后从里面获取用户信息
------解决思路----------------------
访问域需要有相应的授权啊
按霖雨说的用UserProfile同步吧,然后读SharePoint上的信息
  相关解决方案