2008年3月11日火曜日

Tomcatユーザ認証(MemoryRealm)

Tomcatのアプリケーションマネージャ(Servletを制御するアプリケーション)はアクセスする際にユーザ認証を利用していますが、そのユーザ認証にデータベースを利用する方法を調べてみました。

データベースでのユーザ認証を行う前に通常のファイルベースのユーザ認証を、まず試してみます。
なおTomcatのバージョンは6.0.16を前提とします。

Tomcatのドキュメントを参考に設定してみます。

  1. CATALINA_HOME/conf/Catalina/localhost/manager.xmlとして以下の内容を記載します。これによりローカルホストからのみmanagerアプリケーションにアクセスできるようになります。

    <Context path="/manager" debug="0" privileged="true">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
    allow="127\.0\.0\.1"/>
    <Context>

  2. CATALINA_HOME¥cont¥tomcat-users.xmlの<tomcat-users>タグ内にユーザの設定を記載します。
    <user name="ログインユーザー名" password="ログインパスワード" roles="manager"/>

    もしくはEclipseの「Window」→「Preferences...」→「Tomcat」→「Tomcatアプリケーション・マネージャー」でユーザー名とパスワードを入力し「tomcat-users.xmlにユーザーを追加」ボタンをクリックすることで同じ操作が行われます。

  3. EclipseでTomcatを起動し、ブラウザでhttp://localhost:8080/manager/へアクセスします。その際tomcat-users.xmlで指定したログインユーザー名とパスワードを入力します。

  4. Tomcat Webアプリケーションマネージャ画面が表示されることを確認します。
以上でMemoryRealmを利用したユーザ認証の設定は終了です。



0 件のコメント: