【发布时间】:2014-01-09 08:40:23
【问题描述】:
我正在尝试 BASIC 身份验证机制。当我第二次尝试访问受限资源时,不会出现用户名和密码的弹出窗口。
以下是我的 tomcat-users.xml 中定义的角色和用户
<role rolename="Admin"/>
<role rolename="Member"/>
<role rolename="Guest"/>
<user username="Annie" password="admin" roles="Admin, Member, Guest"/>
<user username="Diane" password="coder" roles="Member, Guest"/>
<user username="Ted" password="newbie" roles="Guest"/>
以下是我的 web.xml 中定义的条目
<web-app>
<display-name>SecurityApp</display-name>
<servlet>
<servlet-name>BeerAppServlet</servlet-name>
<servlet-class>com.example.servlets.BeerAppServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>BeerAppServlet</servlet-name>
<url-pattern>/Beer/AddRecipe</url-pattern>
</servlet-mapping>
<security-role> <role-name>Admin</role-name> </security-role>
<security-role> <role-name>Member</role-name> </security-role>
<security-role> <role-name>Guest</role-name> </security-role>
<security-constraint>
<web-resource-collection>
<web-resource-name>Update</web-resource-name>
<url-pattern>/Beer/AddRecipe/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>Admin</role-name>
<role-name>Member</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
</web-app>
我的网络应用程序名称是 SecurityApp。
当我第一次按如下方式访问我的应用程序时
http://localhost:8083/SecurityApp/Beer/AppRecipe 我得到输入用户名和密码的弹出窗口,我输入以下凭据 username=Diane 密码=coder。输入以上凭证后认证成功。
当我第二次输入此网址http://localhost:8083/SecurityApp/Beer/AppRecipe 时。
我没有收到用户名和密码的身份验证弹出窗口。为什么会这样。谁能解释一下
【问题讨论】: