如何在mycontroller中获取laravel 5.2 ADLDAP提供程序实例


How to get laravel 5.2 ADLDAP provider instance in mycontroller?

我使用laravel 5.2和ADLDAP2 Lib进行LDAP身份验证,我想从我的Active Directory中获取所有用户,为此我想使用以下方法:

$results = $provider->search()->where('cn', '=', 'John Doe')->get();

但我不知道如何获取LDAP提供者的实例。

Adldap2的创建者。如果您使用的是Adldap2 Laravel软件包,请使用附带的外观:

use Adldap'Laravel'Facades'Adldap;
$results = Adldap::getProvider('default')->search()->where('cn', '=', 'John Doe')->get();
// Or:
$results = Adldap::getDefaultProvider()->search()->where('cn', '=', 'John Doe')->get();
// Or call `search()` directly and your default provider will be used:
$results = Adldap::search()->where('cn', '=', 'John Doe')->get();

或者,您也可以通过其别名从容器中解析它:

$ldap = app('adldap');
$ldap->search()->users()->get();

或者通过其接口:

$ldap = app('Adldap'AdldapInterface::class);

控制器内部:

namespace App'Http'Controllers;
use App'Http'Controller;
use Adldap'Laravel'Facades'Adldap;
class UserController extends Controller
{
   /**
    * Displays all LDAP users
    *
    * @return 'Illuminate'Http'Response
    */
    public function index()
    {
        $users = Adldap::search()->users()->get();
        return view('ldap.users', compact('users'));
    }
}