RedHat 8.3で、rpmからインストールしたFESS13.13.1の構築をしています。
fessRolesを利用してロールベース検索をするにはどうすればいいでしょうか?
FESS7.0.2が今も稼働中で、そこではfessRolesを利用したロールベース検索を長年利用しています。
その時の資料を読みながら13.13.1でも同じように試しているのですがうまくいきません。
<やったこと>
- /usr/share/fess/app/WEB-INF/classes/fess.xmlに記載されている以下のコメントアウトを解除。
<property name="parameterKey">"fessRoles"</property>
<property name="encryptedParameterValue">false</property>
<property name="headerKey">"fessRoles"</property>
<property name="encryptedHeaderValue">true</property>
<property name="cookieKey">"fessRoles"</property>
<property name="encryptedCookieValue">true</property>
<property name="cipher">
<component class="org.codelibs.core.crypto.CachedCipher">
<property name="key">"1234567890123456"</property>
</component>
</property>
<property name=“valueSeparator">”\n"</property>
<property name=“roleSeparator">”,"</property>
2.管理画面でロール「test」を作成。
3.クローラー(ウェブ)を登録する時に、パーミッションとして「{role}test」を設定。
4.クロールを実施
5.ロール「test」に属したユーザでログインして検索すれば問題なく検索ができる。
6.httpで以下のURLにアクセスしてもうまく検索ができない(検索結果0件になる)。
(色々な形式を試しました)
http://127.0.0.1:8080/search/?q=xxx&fessRoles=123
test
http://127.0.0.1:8080/search/?q=xxx&fessRoles=123
Rtest
127.0.0.1:8080/search/?q=xxx&fessRoles=%0atest
127.0.0.1:8080/search/?q=xxx&fessRoles=%0aRtest
127.0.0.1:8080/search/?q=xxx&fessRoles=test
127.0.0.1:8080/search/?q=xxx&fessRoles=Rtest
など。。。
(リンクをいっぱい書くと投稿時に怒られたのでhttpは省略しました)
7.管理画面の「検索ログ」で確認しても、「Roles」が「1guest Rguest」となっているので、fessRolesが全く効いていないように見えます。
<補足>
FESS7.0.2ではGETの引数に「&fessRoles=1~~test」を付けてうまく使えていたので、「valueSeparator」を「~~」にしたりもしましたが、ダメでした。
よろしくお願いいたします。