BLOGTIMES
2010/05/17

Tracで認証されていないときに認証画面にリダイレクトする

  trac 
このエントリーをはてなブックマークに追加

Trac Error: Forbidden - Tracで認証されていないときに認証画面にリダイレクトする

TracはOSS開発のプロジェクトを念頭に置いているのでしょうが、デフォルトでanonymounsユーザーに比較的沢山の権限が与えられています。社内など外部に公開する必要がないプライベートTracを運用する場合、anonymounsユーザーに割り当てられている権限をごっそり削除して運用をするということになると思いますが、そのときに認証していない状態でWikiやTicketを表示しようとすると画像のような「ログインしていません。操作を続けたければログインしてください」という画面に何度も遭遇することになります。このような場合にログインのリンクをいちいちクリックして認証を行うのが面倒だと常々思っていたのですが、認証に失敗したときに自動的にログイン画面に飛ばしてくれるプラグインがあることがわかりました。

PermRedirectPlugin - Trac Hacks - Plugins Macros etc. - Trac

Similar to the AuthRequiredPlugin, but considerably more intelligent in that it will only redirect on a failure.

インストールメモ

インストール方法はeasy_installを使うと一撃でした。
今回はproxyを指定する必要があったので、HTTP_PROXY環境変数を設定しています。要proxy環境でなければこの行は必要ありません。

SET HTTP_PROXY=http://proxyhost:port easy_install http://trac-hacks.org/svn/permredirectplugin/tags/3.0/

その後、プロジェクトのtrac.iniに下記の内容を加えてあげるだけです。

trac.ini

[components] permredirect.* = enabled

単純なプラグインですが、だいぶ煩雑さが少なくなりました。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/3562
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン