基本認証を介してユーザーをXwikiインストールに自動的にログインさせようとしています。これは、ヘルプがWikiに保存されているためですが、取得プロセスをユーザーに対して透過的にする必要があります。
次のようなURLに(<a>
タグを介して)
ユーザーをプッシュします。http://username:password@xwiki.example.org/xwiki/bin/view/Main?basicauth=1
これは、Internet Explorerを除くすべてのブラウザで正常に機能します(以下を参照してくださいhttp://support.microsoft.com/kb/834489
。残念ながら、ユーザーベースの80%がInternet Explorerを使用しており、クレデンシャルを手動で入力することはできません。
現在、IIS 7.5はXwikiの前にあり、すべての要求を別のサーバー上のTomcatインスタンスにプロキシしています。これは正常に機能します。私の問題を解決するために、IISの書き換えルールを使用して次のようなURLを変換できると思いました。
http://xwiki.example.org/xwiki/bin/view/Main?basicauth=1&_username=username&_password=password
これに:
http://username:password@xwiki.example.org/xwiki/bin/view/Main?basicauth=1&_username=username&_password=password
IISが_username/_passwordクエリ文字列パラメーターをURLに置き換えて、それをTomcatに渡すという考えは、Xwikiは余分なパラメーターを無視します。
次のようなURL書き換えルールを作成しました。
<rule name="BasicAuthRewrite" enabled="true">
<match url="https?://(.+)&?_username=(.+)&_password=(.+)" />
<action type="Rewrite" url="http://{R:2}:{R:3}@xwiki.example.org/{R:1}" />
</rule>
IISで「テストパターン」に移動してURLを指定すると、すべての後方参照({R:x})が必要なデータと一致します。ただし、ブラウザでURLにアクセスすると、書き換えルールが呼び出されません。
希望する行動をとることができる方法はありますか?