Giter VIP home page Giter VIP logo

concrete5-ldap-login's Introduction

Concrete5 Package for LDAP Login

This Package provides a LDAP login AuthenticationType for Concrete5 5.7 with Yubikey two-factor support. By default the Yubikey two-factor support is disabled and is not need for environments, where you just want to authenticate against a LDAP server. The package uses the Yubikey OTP mechanism to create a second factor for authentication. By default is verifies the OTPs with the YubiCloud service from Yubico, which requires an API key form them. (Grab it here.) For verifying the OTPs it uses the php-yubico library, which is bundled in this package. The key id is also gathered via LDAP.

##License Concrete5 Package for LDAP Login
Copyright (C) 2015 Christoph Seitz

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

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. If not, see http://www.gnu.org/licenses/.

The AuthYubico.php file and the yubiright_16x16.gif file are licensed under a BSD license. See the file library/authentication/COPYING for exact wording. For any copyright year range specified as YYYY-ZZZZ in this package note that the range specifies every single year in that closed interval.

Requierments

The folloging debian packages are required before installing this concrete package.

  • php5-ldap
  • php5-curl
  • php-pear

Installation

To install the package browse to the packages dir of your concrete5 5.7 installation and then run: git clone https://github.com/go2sh/concrete5-ldap-login ldap_login It is important that the package directory is called "ldap_login" to match the package handle. Then you can install it from your dashboard.

##Configuration Both the LDAP authentication and the Yubikey OTP authentication are fully configurable.

LDAP Configuration

LDAP Server URI
The complete LDAP Server URI.
Example: ldaps://ldap.example.de

LDAP Bind DN
The DN for initial binding with the server. Leave it blank for anonymous binding.
Example: cn=ldap_login,dc=example,dc=com

LDAP Bind Password The password for the bind DN. An empty password forces the server to do an anonymous bind.

LDAP Base DN The base DN for the LDAP search. Enter a valid DN here to limit the search to a subtree in the directory.
Example: ou=People,dc=example,dc=com

LDAP Search Filter The search filter to use for finding users in the directory. The filter string uses the %u placeholder for the username. Only the first entry returned from the directory will be used for authentication.
Example: (uid=%u)

Yubikey OTP Configuration

Enable Yubikey OTP
Enables the Yubikey OTP two-factor authentication.

Yubikey Client ID
The client ID for the valdiation server.

Yubikey Secret Key
The secret key for validation of client server communication. The communication is validated with hmac-sha1 algorithm. You can leave this blank. By default the code uses https connection, which doesn't require an extra validation.

Yubikey Verify URI
The complete URI (server+path) to the verification server. You can leave this blank and use the default Yubicloud server.

Yubikey Key ID LDAP Attribute
The LDAP Attribute to look for the key id. If there are multiple values for the attribute, all values will used for checking the key id.
Example: pager

Allow login with no Yubikey specified
Allow user, who have no yubikey key id in the LDAP directory speciefied, to login without OTPs.

concrete5-ldap-login's People

Contributors

go2sh avatar

Watchers

James Cloos avatar Bradley B. Smith avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.