مهدی مزرعه ملایی
مهدی مزرعه ملایی
خواندن ۱ دقیقه·۱ سال پیش

اتصال لاراول به اکتیودایرکتوری

سلام

مختصر میخایم پروژه لاراولیمون رو وصل کنیم به سرور اکتیودایرکتوری و از اون برای Auth استفاده کنیم.

برای نصب پکیج ما از adldap2/adldap2-laravel استفاده میکنیم.

composer require adldap2/adldap2-laravel php artisan vendor:publish --provider=&quotAdldap\Laravel\AdldapServiceProvider&quot

بعد از اتمام نصب از مسیر config/ldap.php تنظیمات اولیه را میتونیم ببینیم. قسمت هایی که برای ما مهم هستن:

LDAP_TIMEOUT LDAP_PORT LDAP_HOSTS LDAP_BASE_DN LDAP_USERNAME LDAP_PASSWORD LDAP_USE_SSL

با توجه به اینکه این موارد لینک شدن به env - ما هم این مقادیر را توی این فایل اضافه میکنیم.

تنظیم برای اتصال با پروتکل LDAP

دقت شود برای اتصال نیازی به کاربری با سطح دسترسی ادمین در اکتیودایرکتوری نیست و یک کاربر معمولی هم میتواند برای اتصال کافی باشد.

LDAP_TIMEOUT=5 LDAP_PORT=389 LDAP_HOSTS=192.168.1.11 LDAP_BASE_DN=dc=sparrow,dc=local LDAP_USERNAME=foad LDAP_PASSWORD=password LDAP_USE_SSL=false

بعد از تنظیم موارد :

php artisan config:clear php artisan config:cache

تست ارتباط با سرور :

use Adldap\Laravel\Facades\Adldap; if(Adldap::auth()->attempt(&quot${LDAP_USERNAME}@${LDAP_DOMAIN}&quot, $LDAP_PASSWORD))} return response()->json([&quotsuccess&quot=>'Successfully Connected!'], 200);{ else{ return response()->json([&quotsuccess&quot=>'Failed!'], 200); }


تنظیم برای اتصال با پروتکل LDAPS

LDAP_TIMEOUT=5 LDAP_PORT=636 LDAP_HOSTS=sparrow.local LDAP_BASE_DN=dc=sparrow,dc=local LDAP_USERNAME=foad LDAP_PASSWORD=password LDAP_USE_SSL=true

و تنظیم موارد زیر از مسیر /etc/ldap/ldap.conf

# TLS certificates (needed for GnuTLS) TLS_CACERT /etc/ssl/ldaps.crt TLS_REQCERT hard
php artisan config:clear php artisan config:cache systemctl restart php8.1-fpm





php artisanartisan configldap passwordldap usernameldap
شاید از این پست‌ها خوشتان بیاید