出现问题的代码:
<security-constraint> <web-resource-collection> <web-resource-name>RegisteredUsers</web-resource-name> <url-pattern>/ch06/6.3/6.3.4/security.jsp</url-pattern> </web-resource-collection> <auth-constraint> <!-- 可以访问的角色 --> <role-name>registered_user</role-name> <role-name>admin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>Registered Users</realm-name> </login-config> <security-role> <role-name>admin</role-name> </security-role> <security-role> <role-name>registered_user</role-name> </security-role>
解决方法:
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <security-constraint> <web-resource-collection> <web-resource-name>RegisteredUsers</web-resource-name> <url-pattern>/ch06/6.3/6.3.4/security.jsp</url-pattern> </web-resource-collection> <auth-constraint> <!-- 可以访问的角色 --> <role-name>registered_user</role-name> <role-name>admin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>Registered Users</realm-name> </login-config> <security-role> <role-name>admin</role-name> </security-role> <security-role> <role-name>registered_user</role-name> </security-role> </web-app>
本文详细解析了如何在Web应用中实现基于角色的身份验证和授权机制,通过配置安全约束、登录设置以及角色定义,确保只有指定角色的用户才能访问特定资源。包括使用基本认证方法、设置realm名称及定义角色等关键步骤。
4万+

被折叠的 条评论
为什么被折叠?



