PHPackages                             anklimsk/cakephp-ldap-sync - 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. anklimsk/cakephp-ldap-sync

ActiveCakephp-plugin[Authentication &amp; Authorization](/categories/authentication)

anklimsk/cakephp-ldap-sync
==========================

Synchronizing information and authenticating users by LDAP for CakePHP 2.x

v1.0.4(6y ago)1373[1 PRs](https://github.com/anklimsk/cakephp-ldap-sync/pulls)MITPHPPHP &gt;=5.4

Since Aug 16Pushed 4y agoCompare

[ Source](https://github.com/anklimsk/cakephp-ldap-sync)[ Packagist](https://packagist.org/packages/anklimsk/cakephp-ldap-sync)[ Docs](https://github.com/anklimsk/cakephp-ldap-sync)[ RSS](/packages/anklimsk-cakephp-ldap-sync/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (6)Dependencies (8)Versions (8)Used By (0)

CakePHP 2.x Synchronizing information and authenticating users by LDAP
======================================================================

[](#cakephp-2x-synchronizing-information-and-authenticating-users-by-ldap)

[![Build Status](https://camo.githubusercontent.com/3da490b475d6193648e5e50a4fb6cd955ae93523f921268d86c132fe76fb8861/68747470733a2f2f7472617669732d63692e636f6d2f616e6b6c696d736b2f63616b657068702d6c6461702d73796e632e7376673f6272616e63683d6d6173746572)](https://travis-ci.com/anklimsk/cakephp-ldap-sync)[![Coverage Status](https://camo.githubusercontent.com/a9065f1bb952d350276f7d1d87b031768eb53eda748adab1dfe99abe9e2954cf/68747470733a2f2f636f6465636f762e696f2f67682f616e6b6c696d736b2f63616b657068702d6c6461702d73796e632f6272616e63682f6d61737465722f67726170682f62616467652e737667)](https://codecov.io/gh/anklimsk/cakephp-ldap-sync)[![Latest Stable Version](https://camo.githubusercontent.com/6f3c5e4a4ffe3d416b58b84ec1860589310fbcef52d1b7442b461efd3cfd0cdf/68747470733a2f2f706f7365722e707567782e6f72672f616e6b6c696d736b2f63616b657068702d6c6461702d73796e632f76657273696f6e)](https://packagist.org/packages/anklimsk/cakephp-ldap-sync)[![License](https://camo.githubusercontent.com/aa2d189a212996f080a1c19e144358040b8bf8677965dcfa5dfecbc428d2ed18/68747470733a2f2f706f7365722e707567782e6f72672f616e6b6c696d736b2f63616b657068702d6c6461702d73796e632f6c6963656e7365)](https://packagist.org/packages/anklimsk/cakephp-ldap-sync)

Synchronizing information with LDAP and authenticating users by membership in the LDAP security group

This plugin provides next features:
-----------------------------------

[](#this-plugin-provides-next-features)

- Authenticating users by membership in the LDAP security group;
- Support external authentication, e.g. `kerberos`;
- Checking user for compliance with roles;
- Synchronizing information from LDAP to database;
- Synchronizing information as a subordination tree of employees;
- Support for a customizable list of fields for synchronization;
- Support for customize binded information for models `Employee` and `Department`;
- Support for customize displaying information of employees.

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

[](#installation)

1. Install the Plugin using composer: `composer require anklimsk/cakephp-ldap-sync`
2. Add the next line to the end of the file `app/Config/bootstrap.php`:

    ```
    CakePlugin::load('CakeLdap', ['bootstrap' => true, 'routes' => true]);
    ```
3. Open file `app/Config/database.php` and add connection `ldap`, e.g.:

    ```
        public $ldap = [
            'datasource' => 'CakeLdap.LdapExtSource',
            'persistent' => false,
            'host' => ['ldapsrv01', 'ldapsrv02'],
            'port' => 389,
            'login' => 'user@fabrikam.com',
            'password' => 'pas$w0rd',
            'database' => '',
            'basedn' => 'dc=fabrikam,dc=com',
            'type' => 'ActiveDirectory',
            'tls' => false,
            'version' => 3,
        ];
    ```
4. Copy configuration file from `app/Plugin/CakeLdap/Config/cakeldap.php` to `app/Config`.
5. Edit config file and configure plugin [See `Example of configuration file`](docs/EXAMPLE_CFG_FILE.md)
6. Create database tables of plugin using the CakePHP console, run the command: `Console/cake schema create -p CakeLdap`
7. In your file `app\Config\core.php` uncomment modify next line: `Configure::write('Routing.prefixes', array('admin'));`
8. Copy translation files from `app/Plugin/CakeLdap/Locale/rus/LC_MESSAGES/` to `app/Locale/rus/LC_MESSAGES`:

- `cake_ldap_field_name.*`;
- `cake_ldap_validation_errors.*`.

9. Get the name of the user that is running the web server, run the command: `ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1`.
10. Configure scripts to run schedule, run the command `crontab -u www-data -e` where `www-data` - user name for web server.
11. Add the following line to the list of cron jobs:

```
#
# In this example, run the synchronizing script
#  will be made every day on 7:10 AM
10 7 * * * cd /var/www/paht_to_app/app && Console/cake CakeLdap.cron sync -q

```

Using
-----

[](#using)

[Using this plugin](docs/USING.md)

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~78 days

Recently: every ~105 days

Total

7

Last Release

2403d ago

Major Versions

v0.7.2 → v1.0.02018-10-05

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/42044955?v=4)[Andrey Klimov](/maintainers/anklimsk)[@anklimsk](https://github.com/anklimsk)

---

Top Contributors

[![anklimsk](https://avatars.githubusercontent.com/u/42044955?v=4)](https://github.com/anklimsk "anklimsk (33 commits)")

---

Tags

activedirectorycakephp-plugincakephp2ldapldap-authenticationsynchronization

### Embed Badge

![Health badge](/badges/anklimsk-cakephp-ldap-sync/health.svg)

```
[![Health](https://phpackages.com/badges/anklimsk-cakephp-ldap-sync/health.svg)](https://phpackages.com/packages/anklimsk-cakephp-ldap-sync)
```

###  Alternatives

[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.3k10](/packages/helsingborg-stad-municipio)[rainlab/user-plugin

User plugin for October CMS

11854.7k15](/packages/rainlab-user-plugin)[discourse/wp-discourse

WordPress plugin that allows you to use Discourse as a community engine for your WordPress blog.

5419.6k](/packages/discourse-wp-discourse)[humanmade/authorship

Authorship

68182.3k](/packages/humanmade-authorship)[pressbooks/pressbooks-book

This theme is named after Canadian media theorist Marshall McLuhan, who coined the phrase “the medium is the message.” It is designed for academic writing and is also suitable for fiction. Headings are set in Cormorant Garamond, and body type is set in Lora.

206.7k](/packages/pressbooks-pressbooks-book)[winter/wn-user-plugin

User plugin for Winter CMS

1237.1k16](/packages/winter-wn-user-plugin)

PHPackages © 2026

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