diff --git a/app/Http/Controllers/SettingsController.php b/app/Http/Controllers/SettingsController.php index e93d77c0ff..c92d4622b0 100755 --- a/app/Http/Controllers/SettingsController.php +++ b/app/Http/Controllers/SettingsController.php @@ -398,6 +398,7 @@ class SettingsController extends Controller $setting->slack_botname = e(Input::get('slack_botname')); $setting->ldap_enabled = e(Input::get('ldap_enabled', '0')); $setting->ldap_server = e(Input::get('ldap_server')); + $setting->is_ad = e(Input::get('is_ad', '0')); $setting->ldap_server_cert_ignore = e(Input::get('ldap_server_cert_ignore', false)); $setting->ldap_uname = e(Input::get('ldap_uname')); if (Input::has('ldap_pword')) { diff --git a/app/Models/Ldap.php b/app/Models/Ldap.php index bc7bc6fb8c..e69cf9367e 100644 --- a/app/Models/Ldap.php +++ b/app/Models/Ldap.php @@ -67,7 +67,13 @@ class Ldap extends Model $connection = Ldap::connectToLdap(); $ldap_username_field = Setting::getSettings()->ldap_username_field; - $baseDn = $ldap_username_field.'='.$username.','.Setting::getSettings()->ldap_basedn; + + if (Setting::getSettings()->is_ad=='1') { + $baseDn = $username; + } else { + $baseDn = $ldap_username_field.'='.$username.','.Setting::getSettings()->ldap_basedn; + } + $filterQuery = Setting::getSettings()->ldap_auth_filter_query . $username; if (!$ldapbind = @ldap_bind($connection, $baseDn, $password)) { diff --git a/database/migrations/2016_07_13_150015_add_is_ad_to_settings.php b/database/migrations/2016_07_13_150015_add_is_ad_to_settings.php new file mode 100644 index 0000000000..ad6bc1beec --- /dev/null +++ b/database/migrations/2016_07_13_150015_add_is_ad_to_settings.php @@ -0,0 +1,31 @@ +boolean('is_ad')->default(0); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('settings', function ($table) { + $table->dropColumn('is_ad'); + }); + } +} diff --git a/resources/views/settings/edit.blade.php b/resources/views/settings/edit.blade.php index 2f6dc85b88..ed85fcb4ea 100755 --- a/resources/views/settings/edit.blade.php +++ b/resources/views/settings/edit.blade.php @@ -676,6 +676,21 @@ + + +