QA@IT
«質問へ戻る

質問を投稿

TOMCATで設定するBASIC認証の失敗する原因

お世話になっております。
以下の条件で、RegistInput.jspというviewに遷移するタイミングの時に、
BASIC認証をセットしました。
しかし、認証ダイアログは出るのですが、Tomcatのtomacat-user.xmlでセットした
IDとPWで認証失敗します。3回失敗したところで、
「HTTPステータス 401 This request requires HTTP authentication」が出てきます。
ネットで色々検索してTRYしてたんですが、どうしても結果はERRORになってしまいます。
行き着いたところが、下記の設定です。
どこが違うか、どなたかご教授宜しくお願い致します。

環境

Win 7 64bit
eclipse4.2
Tomcat 7 
struts 2.3.16
JDK7

TOMCAT_HOME/conf/server.xml(BASIC認証設定部のみ抜粋)

<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
    debug="0"
    resourceName="UserDatabase"
/>

<Resource name="UserDatabase"   
    auth="Container" type="org.apache.catalina.UserDatabase"
    description="User database that can be updated and saved" />

<ResourceParams name="UserDatabase>
  <parameter>
    <name>factory</name>
    <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
  </parameter>
  <parameter>
    <name>pathname</name>
    <value>conf/tomcat-users.xml</value>
  </parameter>
</ResourceParams>

TOMCAT_HOME/conf/tomcat-user.xml(BASIC認証設定部のみ抜粋)

<tomcat-users>
    <role rolename="basic" />
    <user username="java" password="road" roles="basic" />
</tomcat-users>

projyct配下のweb.xml(BASIC認証設定部のみ抜粋)

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Authentication of BasicAuth</web-resource-name>
        <url-pattern>/RegistInput.jsp</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>basic</role-name>
    </auth-constraint>
</security-constraint>
<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>UserDatabaseRealm</realm-name>
</login-config>
<security-role>
    <role-name>basic</role-name>
</security-role>
お世話になっております。
以下の条件で、RegistInput.jspというviewに遷移するタイミングの時に、
BASIC認証をセットしました。
しかし、認証ダイアログは出るのですが、Tomcatのtomacat-user.xmlでセットした
IDとPWで認証失敗します。3回失敗したところで、
「HTTPステータス 401 This request requires HTTP authentication」が出てきます。
ネットで色々検索してTRYしてたんですが、どうしても結果はERRORになってしまいます。
行き着いたところが、下記の設定です。
どこが違うか、どなたかご教授宜しくお願い致します。

環境

```
Win 7 64bit
eclipse4.2
Tomcat 7 
struts 2.3.16
JDK7
```

TOMCAT_HOME/conf/server.xml(BASIC認証設定部のみ抜粋)

```
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
    debug="0"
    resourceName="UserDatabase"
/>

<Resource name="UserDatabase"	
	auth="Container" type="org.apache.catalina.UserDatabase"
	description="User database that can be updated and saved" />

<ResourceParams name="UserDatabase>
  <parameter>
    <name>factory</name>
    <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
  </parameter>
  <parameter>
    <name>pathname</name>
    <value>conf/tomcat-users.xml</value>
  </parameter>
</ResourceParams>
```

TOMCAT_HOME/conf/tomcat-user.xml(BASIC認証設定部のみ抜粋)

```
<tomcat-users>
	<role rolename="basic" />
	<user username="java" password="road" roles="basic" />
</tomcat-users>
```

projyct配下のweb.xml(BASIC認証設定部のみ抜粋)
```
<security-constraint>
    <web-resource-collection>
        <web-resource-name>Authentication of BasicAuth</web-resource-name>
        <url-pattern>/RegistInput.jsp</url-pattern>
    </web-resource-collection>
    <auth-constraint>
        <role-name>basic</role-name>
    </auth-constraint>
</security-constraint>
<login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>UserDatabaseRealm</realm-name>
</login-config>
<security-role>
    <role-name>basic</role-name>
</security-role>
```