[![LdapSaisie](src/images/default/logo.png)](https://ldapsaisie.org) LdapSaisie is a Web application developed to manage LDAP directory. It has been written in PHP / JavaScript and is published under the GNU GPL license. This application is designed to abstract the complexity of the directory through a simple and intuitive administration interface. It was designed with the objective of maximal modularity and easy extension or adaptation: you can use modules, extensions and plugins. LdapSaisie allows any system administrator to manage data stored inside a LDAP server, and thus administrate its information system in a simple manner. It's also possible to let users access their own data, with read-only or read-write access. __[Project website](https://ldapsaisie.org)__ | __[Documentation](https://ldapsaisie.org/doc/full)__ | __[Demonstration](https://ldapsaisie.org/demo)__ ## Key features * Management of one or several directories; * Management of simple and multi-branch directories; * Able to manage unlimited objects types; * Allow unlimited users to connect to the interface; * A smooth rights management allows to manage each object and attributes access rights, and allows to delegate rights; * Able to manage a lot of attribute type. Each attribute is given specific features which ease application navigation (Automatic password generation, field auto-completion); * Able to manage high rate of attributes verification rules; * Easy management of objects relationships; * Easy modification of application design using templates; * Management of personalized triggers, which allows to execute you own scripts, functions or methods at any action. The triggers scope is set to able a whole modification of application behavior; * Smooth attributes visualization management, allowing to auto-modify attributes according to others; * Possibility to manage hidden attributes. * Customizable responsive web interface ## Screenshots Please see [project website](https://ldapsaisie.org/en:screenshot) for some screenshots of the web interface. Keep in mind that the web interface could be personalized to feet with your needs. ## Demonstration A demonstration version is available at : http://ldapsaisie.org/demo This demonstration interface is connected to a sample LDAP directory such that the schema and the imported LDIF file are provided with the sources of the application (in the `lsexample` directory). Several demonstration accounts exist and have more or less extensive rights. These different accounts are presented on the login page. ## Installation ### Requirements * PHP (>= 5.6) * PEAR [NetLDAP2](http://pear.php.net/package/Net_LDAP2) package * [Smarty](http://www.smarty.net/) Some others dependencies exists for specific features, please see [documentation](https://ldapsaisie.org/doc/all-in-one/LdapSaisie.html#install-requirements) for details (french). ### Download #### Using Debian packages You can easily install LdapSaisie using Debian packages by using the following command to configure the project's repository : ``` echo "deb http://ldapsaisie.org/debian buster main" | tee /etc/apt/sources.list.d/ldapsaisie.list wget -O - http://ldapsaisie.org/debian/ldapsaisie.gpg.key | apt-key add - apt-get update apt-get install ldapsaisie ldapsaisie-archive-keyring ``` __Note:__ Hourly generated Debian packages from _master_ branch are also provided in the _sid_ Debian repository of the project. To use these packages, use the following command to configure the project's _sid_ repository: ``` echo "deb http://ldapsaisie.org/debian sid main" | tee /etc/apt/sources.list.d/ldapsaisie.list ``` #### Using Git The Git repos can be cloned anonymously with the command : ``` git clone https://gitlab.easter-eggs.com/ee/ldapsaisie.git ``` #### Snapshot Every 15 minutes, a snapshot of the Git repository is built and available for download here: http://ldapsaisie.org/download/ldapsaisie-snapshoot.tar.gz ### Configuration It's the main step of the installation process and the most complicated. Firstly, you have to configure the global configuration mostly contain in the file `conf/config.inc.php`. Second, you will have to configure your object types and their relationships. You could refer to example files provided with the application and to the [official documentation](https://ldapsaisie.org/doc/all-in-one/LdapSaisie.html#config-LSobject) (in french). __Note:__ A more details [tutorial](https://ldapsaisie.org/doc/all-in-one/LdapSaisie.html#install-tutorial) (in french) is also provided in official documentation. ## Upgrade ### Using Debian packages When using Debian packages, the upgrading process to pretty simple: just upgrade the package: ``` apt-get update apt-get install ldapsaisie ``` Once the application has been updated, paid attention to new features and points of vigilance described in [official documentation](https://ldapsaisie.org/doc/all-in-one/LdapSaisie.html#upgrade) (in french). ### Using Git When using git, you could use the `upgradeFromGit.sh` which automates the update if you have followed the installation procedure for it. This script will then take care of: * Clean the working-tree Git from the symbolic links of the local files (and possibly the theme) set up during a previous execution; * Empty the template cache; * Update the Git working-tree via a `git pull`; * Install symbolic links for local files. In case of locally modified files, the script will notify you and will allow you to simply update your local file (via a `vim -d`); * Detect changes in the MO files (translation) and in this case trigger a reload of the web server to be taken into account; * Option: to compile an up-to-date local version of the documentation; Once the application has been updated, paid attention to new features and points of vigilance described in [official documentation](https://ldapsaisie.org/doc/all-in-one/LdapSaisie.html#upgrade) (in french). ## License This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see `LICENSE` file); if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.