douzhaiyuan1731 2015-07-19 20:26
浏览 732

通过LDAP使用PHP从AD获取所有用户的组

I am trying to grab all groups that a user belongs to using PHP. I am able to grab all of the groups that are listed in the memberof attribute, but not the user's inherited groups.

I've tried modifying the code to also do an ldap_search for the group name/samaccount name but I've not been successful in searching for the group's memberof attribute.

Below is the code that I'm using.

$checkDn=$this->setDn(true); 
$results[0]=$attribute; 

// We need to search for this user in order to get their entry.
$this->result=@ldap_search($this->connection,$checkDn,$this->getUserIdentifier()."=$uname",$results);
$info=ldap_get_entries($this->connection, $this->result);

// Only one entry should ever be returned(no user will have the same uid) 
$entry=ldap_first_entry($this->connection, $this->result);

if(!$entry){
 $this->ldapErrorCode=-1;
 $this->ldapErrorText="Couldn't find user";
 return false; // Couldn't find the user...
}

// Get all the member DNs
if(!$values=@ldap_get_values($this->connection,$entry,$attribute)){
 $this->ldapErrorCode=ldap_errno($this->connection);
 $this->ldapErrorText=ldap_error($this->connection);
 return false; // No matching attributes 
}

// Return an array containing the attributes. 
return $values; 

Here is a sample group that they belong to.

CN=Business Operations,OU=Groups,OU=Operations,OU=Corporate,OU=company name,DC=website,DC=com

Thanks for any assistance with this!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 求数据集和代码#有偿答复
    • ¥15 关于下拉菜单选项关联的问题
    • ¥20 java-OJ-健康体检
    • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
    • ¥15 使用phpstudy在云服务器上搭建个人网站
    • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
    • ¥15 vue3+express部署到nginx
    • ¥20 搭建pt1000三线制高精度测温电路
    • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
    • ¥15 画两个图 python或R