(from osdn.net/users/ntarou)
2014-03-14 15:48の投稿に関連しますが、長文になるので新たにスレッドをあげさせて頂きました
長文となりますがお付き合い願えれば有難い限りです
社内ファイルサーバの検索ですが、ディレクトリへのアクセス権と同様にロールベース検索をしたいと考えています
具体的な条件としは、
ディレクトリAは営業職のみアクセス可
以下
ディレクトリBは技術職
ディレクトリCは事務職
ディレクトリDは全員がアクセス可 としたい場合
以下ように設定してみましたが思うような検索結果になりません
http://fess.codelibs.org/ja/articles/article-3.html にあるとおり、
■Tomcatにユーザーを追加
■ロール名 “all” を全ユーザに加える
ここまでで、
営業職の"taro" は"sales" と “all” のロール結果が確認できる
同様に
技術職の"hanako" は"eng"と"all"
事務職の"jiro" は"ad"と"all"
■ログインしない状態だと何も検索結果に表示しないように
fess.diconを設定
これはドキュメント通りに設定
■web.xmlでセキュリティ関連の設定
sales
・・・
sales
・・・
■次に、ファイルシステムクロールの設定で検索対象の
ディレクトリA(営業職のみアクセス可)はロール"sales"で設定
ディレクトリB(技術職のみアクセス可)はロール"eng"で設定
ディレクトリC(事務職のみアクセス可)はロール"ad"で設定
ディレクトリDは全員がアクセス可能なのでロール"all"で設定
■後はそれぞれのアカウントでログインすると
“taro” は"sales" と “all”
“hanako” は"eng"と"all"
“jiro” は"ad"と"all"
が検索結果が表示される
と理解し設定したのですが、どこに問題があるのか見当がつきません
お忙しいところ誠に申し訳ありませんが、ご教示を宜しくお願いいたします
Fess8.2.0を利用させて頂いております
(from ntarou's Profile - OSDN)
お忙しいところ早速ご連絡頂戴し有難うございます
また、もう少しおつきあいをお願い致します
私は基本的なところを見落としてしまっているようですが、お示し頂いた
ことが理解できません
Fess で作る Elasticsearch ベースの検索サーバー 〜 API 編 にあるとおり、
defaultRoleListにallは設定されていますでしょうか?
勉強不足で申し訳ありませんが、”defaultRoleList” という単語が
出てくるのは、fess.diconの設定のところ以外検討がつきません
具体的に何をどうするかをご教示頂きますよう、大変申し訳ありませんが
かさねてお願いさせて頂きます
(from osdn.net/users/shinsuke)
{“guest”}
のままですと、ログインしない状態のロールはguestになります。
今回、allロールをログインしていない状態でアクセスしたい、という状況かと思います。
その場合は、guestでなく、allをそこに記述する必要があります。
(from osdn.net/users/ntarou)
お忙しいところ本当に有難うございます
説明不足で申し訳ありません
説明に一行抜けていました 申し訳ありません
共通職であるユーザ名"all"は、共通ディレクトリDのみ結果閲覧が
できるようにしたいと思っています
ログインしない人には、何も見せないようにしたいのですが
ご教示をお願い致します
お手数ですが宜しくお願いいたします
(from shatake's Profile - OSDN)
allロールは共通ディレクトリDのみ閲覧可能という事でしたので、
fess.diconのdefaultRoleListをguestに戻す必要があります。
{"guest"}
また、上記の対応で未ログイン時のロールがguestロールになり、
検索結果が表示されなくなります。
こちらはconf/tomcat-users.xmlに追加して頂いて問題ありません。
再度クロールして頂き、共通職ユーザー"all"でログインすると
共通ディレクトリDの検索結果のみが表示されるかと思います。
再度のクロール前にインデックスを全部削除して頂くとより
問題解決に近づくと思います。
(from osdn.net/users/ntarou)
返信遅くなりまして申し訳ありません。
アドバイスを参考に再度チャレンジしていますが、なかなかうまく
いきません。
混乱してきたのであらためて整理して質問させて頂きます。
宜しくお願いいたします。