Windows ADドメインと、LDAP連携をしています。
例として、以下のユーザーが Windows ADにあるとします。
ユーザー: Abc
所属グループ: HogeGroup
audit.log
action:LOGIN
user:Abc
permissions:2HogeGroup|1abc|....
Windows アカウントのユーザー名に大文字が含まれていると、ログイン時に user role(1~) だけが全て小文字(abc)になっていました。
アクセス許可に、ユーザー Abc が設定してあるファイルを、ファイルシステムのクローラーで取得すると、role の値は正しく取得できています。
role
1Abc
2Domain Admins
ログイン時にLDAPで取得するパーミッションの user とファイルの role が一致しないために、検索結果に出てこない症状が出ます。
アカウントフィルタとグループフィルタは、マニュアルの LDAPの設定例と同じ値です。
ユーザーアカウントで直接ファイルやフォルダーにアクセス許可することは少ないため、気が付きませんでした。
ADのバージョンや設定などで、いろいろな事象が発生するのは認識してますが、そのケースだと、fess_config.propertiesで ldap.lowercase.permission.name=true
とかに変更すれば良いと思います。
ADのバージョンで変わるんですね…
自分の環境で、LdapManager をデバッグして確認するしかありませんね。
ldap.lowercase.permission.name の変更は試してみました。
FESSを再起動後、
インデックスを削除してから、再クロールしたのですが、インデックスの role は小文字にならなかったため、大文字が含まれているグループにもヒットしなくなりました。
ファイルシステムのクロールは、smb://〜でクロールしているものでしょうか?
はい。
パスに smb://server/folder/ を指定しています。
情報をありがとうございます。
次のリリースで対応します。
確認、対応ありがとうございます!
大変助かります。
14.15.0 リリースありがとうございました!
ldap.lowercase.permission.name=true に変更
- クローラーの固定パーミッションを小文字に修正
- ラベルのパーミッションを小文字に手修正
- インデックスを削除
- 再クロール
大文字を含むWindowsアカウントで、アクセス権に対応した検索結果が確認できました。
1 Like