Java 在SpringSecurity3.0中,安全角色ref和角色链接的等价物是什么?

Java 在SpringSecurity3.0中,安全角色ref和角色链接的等价物是什么?,java,spring,jakarta-ee,spring-security,Java,Spring,Jakarta Ee,Spring Security,我正在将一个带有web.xml、安全约束、安全角色和登录配置的标准web应用程序移植到SpringSecurity3.0。除了security role ref元素之外,我已经找到了web.xml中几乎所有功能的等效映射 我不想规定安全角色名称是针对部署环境的,因此我利用J2EE安全性的映射功能将逻辑角色名称映射到物理角色名称,如下所示: <servlet> <servlet-name>MyServlet</servlet-name> <

我正在将一个带有web.xml、安全约束、安全角色和登录配置的标准web应用程序移植到SpringSecurity3.0。除了security role ref元素之外,我已经找到了web.xml中几乎所有功能的等效映射

我不想规定安全角色名称是针对部署环境的,因此我利用J2EE安全性的映射功能将逻辑角色名称映射到物理角色名称,如下所示:

<servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>org.example.MyServlet</servlet-class>
    <security-role-ref>
        <role-name>MANAGER</role-name>
        <role-link>DISTRICT_MANAGER</role-link>
    </security-role-ref>
</servlet>

MyServlet
org.example.MyServlet
经理
地区主任
注意,在上面的代码片段中,有一个或多个检查代码或JSP,以查看用户是否处于逻辑角色“MANAGER”。在这个特定的部署中,该角色链接到从JAAS上下文(JDBC或LDAP)返回的物理角色“DISTRICT_MANAGER”

SpringSecurity3.0中是否有类似的映射功能?我希望不必修改应用程序来检查部署环境的物理角色,而且我无法让系统管理员仅为我的应用程序向用户的LDAP记录添加特定的角色/权限


提前感谢。

Spring Security 3.1有一个通用的映射策略,称为,您可以实施该策略并将其注入到
AuthenticationProvider
中,告诉它如何将加载的权限转换为将用于在应用程序中做出决策的权限

如果您使用的是早期版本,您可以直接实现
AuthenticationProvider
,并自定义
Authentication
对象的创建。例如,您可以在应用程序上下文文件中定义一组映射作为映射,并使用这些映射创建从提供者返回的最终权限集。映射实际上刚刚从
web.xml
移动到应用程序上下文文件(应该不那么详细)