Laravel 5.1 adldap - 无法访问用户属性
Laravel 5.1 adldap - Can't access user properties
我正在尝试在 Laravel 5.1 中设置 Active Directory 身份验证,我能够使用 this package 成功进行身份验证。我遇到的问题是我无法访问已登录用户的任何用户属性或组。
该包的文档对于它的使用方式不是很详尽,所以我不知道如何访问 Active Directory 用户的属性。
我可以使用 Auth::user()->username;
访问用户名,但我相信这是从用户模型返回用户名。当我尝试使用 dd(Auth::user();
输出用户时,唯一可用的属性是数据库中用户 table 中的属性。
根据提供的文档,将字段 属性 添加到 auth.php 配置文件应该可以访问它们,但它似乎无法正常工作。我已将 'fields' => ['displayname', 'givenname']
添加到配置文件,但是当 运行 dd(\Auth::user()->displayname);
时,我收到一个空值。
如有任何帮助,我们将不胜感激。谢谢!
这是一个迟到的回复,但我使用的是同一个包并且必须这样做才能让它工作。
在config/auth.php
'fields' => [
'username' => 'samaccountname',
'full_name' => 'displayname',
'first_name' => 'givenname',
'last_name' => 'sn',
'description' => 'description',
'primary_group' => 'primarygroup',
'groups' => 'memberof',
],
然后我可以访问像
这样的值
Auth::user()->full_name
等等...
我也可以
if (in_array("Users", Auth::user()->groups)) {
# do something...
}
希望对某人有所帮助。
我正在尝试在 Laravel 5.1 中设置 Active Directory 身份验证,我能够使用 this package 成功进行身份验证。我遇到的问题是我无法访问已登录用户的任何用户属性或组。
该包的文档对于它的使用方式不是很详尽,所以我不知道如何访问 Active Directory 用户的属性。
我可以使用 Auth::user()->username;
访问用户名,但我相信这是从用户模型返回用户名。当我尝试使用 dd(Auth::user();
输出用户时,唯一可用的属性是数据库中用户 table 中的属性。
根据提供的文档,将字段 属性 添加到 auth.php 配置文件应该可以访问它们,但它似乎无法正常工作。我已将 'fields' => ['displayname', 'givenname']
添加到配置文件,但是当 运行 dd(\Auth::user()->displayname);
时,我收到一个空值。
如有任何帮助,我们将不胜感激。谢谢!
这是一个迟到的回复,但我使用的是同一个包并且必须这样做才能让它工作。
在config/auth.php
'fields' => [
'username' => 'samaccountname',
'full_name' => 'displayname',
'first_name' => 'givenname',
'last_name' => 'sn',
'description' => 'description',
'primary_group' => 'primarygroup',
'groups' => 'memberof',
],
然后我可以访问像
这样的值Auth::user()->full_name
等等...
我也可以
if (in_array("Users", Auth::user()->groups)) {
# do something...
}
希望对某人有所帮助。