PHPackages                             xrow/activedirectory-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. xrow/activedirectory-bundle

ActiveEzplatform-bundle[Authentication &amp; Authorization](/categories/authentication)

xrow/activedirectory-bundle
===========================

1.2.1(6y ago)11.7k3Apache-2.0PHPPHP ~5.6|~7.0

Since Sep 4Pushed 6y ago7 watchersCompare

[ Source](https://github.com/xrowgmbh/activedirectory-bundle)[ Packagist](https://packagist.org/packages/xrow/activedirectory-bundle)[ Docs](https://www.xrow.com)[ RSS](/packages/xrow-activedirectory-bundle/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (2)Dependencies (2)Versions (13)Used By (0)

Active Directory Bundle
=======================

[](#active-directory-bundle)

- [Installation](#using-the-configuration)
- [Configuration](#configuration)
- [Definitions](#definitions)
    - [Account Suffix (required)](#account-suffix-required)
    - [Domain Controllers (required)](#domain-controllers-required)
    - [Base Distinguished Name (required)](#base-distinguished-name-required)

Configuring Active Directory Bundle is really easy. Let's get started.

Installation
------------

[](#installation)

Install using composer:

```
composer config repositories.repo-name vcs ssh://git@gitlab.com:22/xrow-shared/activedirectory-bundle.git
composer require xrow/activedirectory-bundle
```

Add to `$bundles` array in `app/AppKernel.php`:

```
            new Xrow\ActiveDirectoryBundle\XrowActiveDirectoryBundle(),
```

Configuration
-------------

[](#configuration)

You can configure Active Directory Bundle by supplying an array of settings. Keep in mind not all of these are required. This will be discussed below.

Here is an example configuration (for example in `app/config.yml`) with all possible configuration options:

```
xrow_active_directory:
    account_suffix: xrow.lan
    domain_controllers: [ "dc01.xrow.lan","192.168.0.220"]
    base_dn: "dc=XROW,dc=LAN"
```

Working with Active Directory user groups
-----------------------------------------

[](#working-with-active-directory-user-groups)

Once the a new active directory did try to authenticate against ezplatform. All of the user groups are available from the cms backend. You can now assign (Admin Panel-&gt;Roles) the eZ Platform security policy Administrator to the Active Directory group Administrators (Admin Panel-&gt;Users-&gt;Administators). Beware the only difference between eZ Platform user groups and Active Directory user groups is a special remote\_id that is not visible from the cms backend. Deleted Active Directory items will appear again once a user authenticates again with the platform.

Definitions
-----------

[](#definitions)

### Account Suffix (required)

[](#account-suffix-required)

The account suffix option is the suffix of your user accounts in AD. For example, if your domain DN is `DC=corp,DC=acme,DC=org`, then your account suffix would be `corp.acme.org`. This is then appended to the end of your user accounts on authentication.

For example, if you're binding as a user, and your username is `jdoe`, then Adldap would try to authenticate with your server as `jdoe@corp.acme.org`.

### Domain Controllers (required)

[](#domain-controllers-required)

The domain controllers option is an array of servers located on your network that serve Active Directory. You insert as many servers or as few as you'd like depending on your forest (with the minimum of one of course).

For example, if the server name that hosts AD on my network is named `ACME-DC01`, then I would insert `['ACME-DC01.corp.acme.org']`inside the domain controllers option array.

### Base Distinguished Name (required)

[](#base-distinguished-name-required)

The base distinguished name is the base distinguished name you'd like to perform operations on. An example base DN would be `DC=corp,DC=acme,DC=org`.

If one is not defined, you will not retrieve any search results.

Toubleshooting
--------------

[](#toubleshooting)

### System report "Invalid directory user" during login

[](#system-report-invalid-directory-user-during-login)

Certain Active Directory users might be not able to authenticate against the Active Directory Server. In those cases the message "Invalid directory user" will appear. This means that the user  with the given password can`t authenticate against teh server. Please consult the domain adminsitrator to help. You can replicate the issue using a LDAP browser like [LDAP Admin](http://www.ldapadmin.org).

### Need of adding a second Active Directory

[](#need-of-adding-a-second-active-directory)

In case you need to add a second active directory structure we recommend you to build a [forest](https://en.wikipedia.org/wiki/Active_Directory#Forests,_trees_and_domains).

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity19

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 96% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~74 days

Recently: every ~155 days

Total

12

Last Release

2406d ago

PHP version history (2 changes)1.0PHP ~5.5|~7.0

1.1.4PHP ~5.6|~7.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/f08bee051f28728169796d79eb57b9387fb49abf244faaa1517952d7e22e1a7d?d=identicon)[xrow](/maintainers/xrow)

---

Top Contributors

[![xrow](https://avatars.githubusercontent.com/u/295491?v=4)](https://github.com/xrow "xrow (24 commits)")[![christianxrow](https://avatars.githubusercontent.com/u/2361335?v=4)](https://github.com/christianxrow "christianxrow (1 commits)")

### Embed Badge

![Health badge](/badges/xrow-activedirectory-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/xrow-activedirectory-bundle/health.svg)](https://phpackages.com/packages/xrow-activedirectory-bundle)
```

###  Alternatives

[edvlerblog/yii2-adldap-module

yii2 Active Directory implementation (wrapper for Adldap2)

49231.2k](/packages/edvlerblog-yii2-adldap-module)[egroupware/egroupware

EGroupware extends a classic groupware with an integrated CRM-system, a secure file-server and Collabora Online Office.

2921.6k](/packages/egroupware-egroupware)[riper/security-active_directory

This is a bundle to allow authentication into symfony &gt;= 2.6 by an Active directory

163.7k](/packages/riper-security-active-directory)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
