首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无效凭据adldap2 2/adldap2 2-laravel包

无效凭据adldap2 2/adldap2 2-laravel包
EN

Stack Overflow用户
提问于 2020-01-29 07:18:39
回答 1查看 1.8K关注 0票数 2

我在laravel应用程序中实现LDAP身份验证。当我运行这段代码时,我会得到一个错误。

我不知道它是否正确。我对LDAP完全陌生,我不知道到目前为止我所做的文档是如何工作的。

请帮助我为laravel设置正确的配置设置。

代码语言:javascript
复制
Adldap \ Auth \ BindException (49)
Invalid credentials
代码语言:javascript
复制
 protected function attemptLogin(Request $request)
    {
       $ldap = new Adldap;
        $data = Adldap::users()->get();
       dd($data);

    }

我从客户那里得到的证书

代码语言:javascript
复制
User Name: username
 Password: password
 IP:172.16.xx.xx
 Port: 389
 Attributes: CN=user.admin,CN=Users,DC=UATADSRV,DC=COM

我的.env文件

代码语言:javascript
复制
LDAP_HOSTS=172.16.xx.xx
LDAP_BASE_DN=CN=user.admin,CN=Users,DC=UATADSRV,DC=COM
LDAP_USER_ATTRIBUTE=samaccountname
LDAP_CONNECTION=default
LDAP_USERNAME=username
LDAP_PASSWORD=password

ldap.php

代码语言:javascript
复制
return [

    'logging' => env('LDAP_LOGGING', false),

    'connections' => [

        'default' => [
   'auto_connect' => env('LDAP_AUTO_CONNECT', true),

            'connection' => Adldap\Connections\Ldap::class,

            'settings' => [
    'schema' => Adldap\Schemas\ActiveDirectory::class,


                'account_prefix' => env('LDAP_ACCOUNT_PREFIX', ''),

                'account_suffix' => env('LDAP_ACCOUNT_SUFFIX', ''),   

                'hosts' => explode(' ', env('LDAP_HOSTS', 'corp-dc1.corp.acme.org corp-dc2.corp.acme.org')),

         'port' => env('LDAP_PORT', 389),

                'timeout' => env('LDAP_TIMEOUT', 5),

                'base_dn' => env('LDAP_BASE_DN', 'dc=corp,dc=acme,dc=org'),

                'username' => env('LDAP_USERNAME'),
                'password' => env('LDAP_PASSWORD'),

                'follow_referrals' => false,


                'use_ssl' => env('LDAP_USE_SSL', false),
                'use_tls' => env('LDAP_USE_TLS', false),

            ],

        ],

    ],

];

ldap_auth.php

代码语言:javascript
复制
return [

    'connection' => env('LDAP_CONNECTION', 'default'),

    'provider' => Adldap\Laravel\Auth\DatabaseUserProvider::class,

    'model' => App\User::class,
    'rules' => [


        Adldap\Laravel\Validation\Rules\DenyTrashed::class,

    ],



    'scopes' => [



    ],

    'identifiers' => [

    'rules' => [


        Adldap\Laravel\Validation\Rules\DenyTrashed::class,

    ],



    'scopes' => [



    ],

    'identifiers' => [

 'ldap' => [

         //   'locate_users_by' => 'userprincipalname',
             'locate_users_by' => 'samaccountname',

            'bind_users_by' => 'distinguishedname',

        ],

        'database' => [

            'guid_column' => 'objectguid',
           'username_column' => 'username',

        ],
  'windows' => [

            'locate_users_by' => 'samaccountname',

            'server_key' => 'AUTH_USER',

        ],

    ],

    'passwords' => [



        'sync' => env('LDAP_PASSWORD_SYNC', false),



        'column' => 'password',
  ],


    'login_fallback' => env('LDAP_LOGIN_FALLBACK', false),



    'sync_attributes' => [

        'email' => 'userprincipalname',
        'username' => 'samaccountname',
        'name' => 'cn',

    ],

  'logging' => [

        'enabled' => env('LDAP_LOGGING', true),

        'events' => [

            \Adldap\Laravel\Events\Importing::class                 => \Adldap\Laravel\Listeners\LogImport::class,
            \Adldap\Laravel\Events\Synchronized::class              => \Adldap\Laravel\Listeners\LogSynchronized::class,
            \Adldap\Laravel\Events\Synchronizing::class             => \Adldap\Laravel\Listeners\LogSynchronizing::class,
            \Adldap\Laravel\Events\Authenticated::class             => \Adldap\Laravel\Listeners\LogAuthenticated::class,
            \Adldap\Laravel\Events\Authenticating::class            => \Adldap\Laravel\Listeners\LogAuthentication::class,
            \Adldap\Laravel\Events\AuthenticationFailed::class      => \Adldap\Laravel\Listeners\LogAuthenticationFailure::class,
            \Adldap\Laravel\Events\AuthenticationRejected::class    => \Adldap\Laravel\Listeners\LogAuthenticationRejection::class,
            \Adldap\Laravel\Events\AuthenticationSuccessful::class  => \Adldap\Laravel\Listeners\LogAuthenticationSuccess::class,
            \Adldap\Laravel\Events\DiscoveredWithCredentials::class => \Adldap\Laravel\Listeners\LogDiscovery::class,
            \Adldap\Laravel\Events\AuthenticatedWithWindows::class  => \Adldap\Laravel\Listeners\LogWindowsAuth::class,
            \Adldap\Laravel\Events\AuthenticatedModelTrashed::class => \Adldap\Laravel\Listeners\LogTrashedModel::class,

        ],
    ],

];

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-29 15:52:40

LDAP服务器表示您提供的凭据是错误的。你确定你的用户名和密码是100%正确的吗?空格还是任何一种无效的字符?

代码语言:javascript
复制
CN=user.admin,CN=Users,DC=UATADSRV,DC=COM`

另外,它是否与绑定()函数一起工作?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59962166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档