/** * Set the roles for the user based on group membership. * * @param LdapUser $user * @return LdapUser */ protected function setRolesForUser(LdapUser $user) { if ($this->defaultRole) { $user->addRole($this->defaultRole); } $groups = $this->getGroupsForUser($user); foreach ($this->roleMap as $role => $roleGroups) { if ($this->hasGroupForRoles($roleGroups, $groups)) { $user->addRole($role); } } return $user; }