From c66ed95711df0939f0566830b3c848ea305f6080 Mon Sep 17 00:00:00 2001 From: Roman Bogorodskiy Date: Wed, 25 May 2016 14:18:57 +0000 Subject: [PATCH] Add ateam_mysql_ldap_auth 1.0, a-Team MySQL LDAP authentication plugin. PR: 208913 Submitted by: ganbold --- databases/Makefile | 1 + databases/ateam_mysql_ldap_auth/Makefile | 39 +++++++++++++++++++ databases/ateam_mysql_ldap_auth/distinfo | 2 + .../files/pkg-message.in | 4 ++ databases/ateam_mysql_ldap_auth/pkg-descr | 23 +++++++++++ 5 files changed, 69 insertions(+) create mode 100644 databases/ateam_mysql_ldap_auth/Makefile create mode 100644 databases/ateam_mysql_ldap_auth/distinfo create mode 100644 databases/ateam_mysql_ldap_auth/files/pkg-message.in create mode 100644 databases/ateam_mysql_ldap_auth/pkg-descr diff --git a/databases/Makefile b/databases/Makefile index 2fcbe88148f0..f11e76c3c44f 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -21,6 +21,7 @@ SUBDIR += apq-mysql SUBDIR += apq-odbc SUBDIR += apq-pgsql + SUBDIR += ateam_mysql_ldap_auth SUBDIR += autobackupmysql SUBDIR += bbdb SUBDIR += beansdb diff --git a/databases/ateam_mysql_ldap_auth/Makefile b/databases/ateam_mysql_ldap_auth/Makefile new file mode 100644 index 000000000000..2b03fa34f103 --- /dev/null +++ b/databases/ateam_mysql_ldap_auth/Makefile @@ -0,0 +1,39 @@ +# Created by: Ganbold Tsagaankhuu +# $FreeBSD$ + +PORTNAME= ateam_mysql_ldap_auth +PORTVERSION= 1.0 +CATEGORIES= databases + +MAINTAINER= ganbold@FreeBSD.org +COMMENT= A-Team MySQL LDAP authentication plugin + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING + +LIB_DEPENDS= libconfig.so:devel/libconfig +RUN_DEPENDS= mysql${MYSQL_VER}-server>5.6:databases/mysql56-server + +USE_OPENLDAP= yes +USES= gmake mysql + +USE_GITHUB= yes +GH_ACCOUNT= ateamsystems +GH_TAGNAME= f6a1a5d + +PLIST_FILES= lib/mysql/plugin/auth_ldap.so \ + "@sample etc/ateam_mysql_ldap_auth.conf.sample" \ + ${DOCSDIR}/README \ + ${DOCSDIR}/INSTALL + +SUB_FILES= pkg-message + +do-install: + ${MKDIR} ${STAGEDIR}${PREFIX}/lib/mysql/plugin + ${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_PROGRAM} ${WRKSRC}/src/auth_ldap.so ${STAGEDIR}${PREFIX}/lib/mysql/plugin/ + ${INSTALL_DATA} ${WRKSRC}/ateam_mysql_ldap_auth.conf ${STAGEDIR}${PREFIX}/etc/ateam_mysql_ldap_auth.conf.sample + ${INSTALL_MAN} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR}/ + ${INSTALL_MAN} ${WRKSRC}/INSTALL ${STAGEDIR}${DOCSDIR}/ + +.include diff --git a/databases/ateam_mysql_ldap_auth/distinfo b/databases/ateam_mysql_ldap_auth/distinfo new file mode 100644 index 000000000000..2ec86012d1cc --- /dev/null +++ b/databases/ateam_mysql_ldap_auth/distinfo @@ -0,0 +1,2 @@ +SHA256 (ateamsystems-ateam_mysql_ldap_auth-1.0-f6a1a5d_GH0.tar.gz) = 3a20533fb4fed93daad0e8944ab6e8ae530ecbebefd95240b1e60f3c5ca5ec9c +SIZE (ateamsystems-ateam_mysql_ldap_auth-1.0-f6a1a5d_GH0.tar.gz) = 17971 diff --git a/databases/ateam_mysql_ldap_auth/files/pkg-message.in b/databases/ateam_mysql_ldap_auth/files/pkg-message.in new file mode 100644 index 000000000000..fd841b038634 --- /dev/null +++ b/databases/ateam_mysql_ldap_auth/files/pkg-message.in @@ -0,0 +1,4 @@ +--------------------------------------------------------------------- +Please see %%DOCSDIR%%/INSTALL +for install notes. +--------------------------------------------------------------------- diff --git a/databases/ateam_mysql_ldap_auth/pkg-descr b/databases/ateam_mysql_ldap_auth/pkg-descr new file mode 100644 index 000000000000..e8e43e525657 --- /dev/null +++ b/databases/ateam_mysql_ldap_auth/pkg-descr @@ -0,0 +1,23 @@ +A-Team MySQL LDAP Authenticator (ateam_mysql_ldap_auth) is an authentication +plugin for MySQL 5.5.7 and up, and has been tested with 5.6 under FreeBSD. +This module allows you to create MySQL users that are then authenticated +against an LDAP server. This reduces administrative overhead and eliminates +your users having to remember a seperate username and password for MySQL. +Just like MySQL Enterprise's PAM module, for client side authentication +this plugin uses the clear_text password module as the LDAP server must +perform the password hasing and comparison. For command line clients this +is done by setting the following environment variable: + + export LIBMYSQL_ENABLE_CLEARTEXT_PLUGIN=1 + +In MySQL Workbench this is acheived by going to go to the "Advanced" tab and +checking "Enable Cleartext Authentication Plugin" when editing a connction. + +!!! IMPORTANT: +!!! ------------------------------------------------------------------------ +!!! ENSURE THE COMMUNICATIONS PATH BETWEEN THE CLIENT AND SERVER IS SECURE! +!!! ------------------------------------------------------------------------ +!!! By default MySQL does not use SSL so additional steps and network design +!!! are needed to ensure you're not exposing your credetials. + +WWW: https://github.com/ateamsystems/ateam_mysql_ldap_auth