身份验证如何弹出
问题描述:
我有一个非常简单的疑问,我知道大多数人可能会对此问题投下一票。但是由于我对Web应用程序很陌生,我不知道它是如何产生的。身份验证如何弹出
问:每当我登录到某个Web应用程序时,都会弹出一个请求进行身份验证的请求。有些东西与此类似,
警告:此服务器正在请求以不安全的方式(没有安全连接的基本身份验证)发送您的用户名和密码。
设置完成的地方在哪里?我试图为我的Hello World应用程序做类似的事情。请帮助我。
答
这是基本认证支持Servlet技术。这是您如何为web.xml中的web资源定义基本身份验证。
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>default</realm-name>
</login-config>
请在这里找到一个完整的例子:
<?xml version='1.0' encoding='UTF-8'?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<web-app>
<welcome-file-list>
<welcome-file>welcome.jsp</welcome-file>
</welcome-file-list>
<security-constraint>
<web-resource-collection>
<web-resource-name>Success</web-resource-name>
<url-pattern>/secured/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>secured</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>default</realm-name>
</login-config>
<security-role>
<role-name>secured</role-name>
</security-role>
</web-app>
请阅读Servlet技术支持多种认证机制下面的链接,更多的了解:
嗨,谢谢回复。但是在一个web应用程序的web.xml文件中,我发现没有添加安全约束,但它仍然提供了用于身份验证的弹出窗口。 web.xml文件应该包含细节还是可以用其他方式完成它是强制性的? – mee 2013-03-14 05:57:02
如果您看到弹出窗口,那么应该是web.xml中定义的BASIC身份验证。请检查是否有任何默认的web.xml正在配置它。 – 2013-03-14 06:07:55
它说,服务器XXX需要用户名和密码。警告:...(没有安全连接的基本身份验证)。但在web.xml文件中,我无法找到安全限制。它只有一个servlet,servlet-mapping,welcome-file List和locale-mapping。 – mee 2013-03-14 06:13:30