EJB 安全与事务示例解析
1. EJB 安全模型简介
在多用户应用程序中,为了确保安全性,需要考虑不同用户类型的差异。例如,系统管理员可能需要访问普通用户无法访问的记录。然而,将安全逻辑直接编码在应用程序中会使代码的关注点混合,降低代码的可维护性。EJB 提供了基于角色的安全模型,该模型既可以通过元数据进行声明式配置,也可以通过 API 进行编程式配置。
2. 安全学校示例
我们以一个安全学校为例,展示了如何使用 EJB 的安全模型。这个学校有严格的政策,规定了不同角色的用户在什么时间可以打开哪些门。
2.1 角色定义
在 Roles.java 中定义了三个角色:
package org.jboss.ejb3.examples.ch15.secureschool.impl;
public interface Roles {
String ADMIN = "Administrator";
String STUDENT = "Student";
String JANITOR = "Janitor";
}
2.2 接口定义
-
FireDepartmentLocalBusiness.java:表示消防部门,任何人都可以调用其declareEmergency()方法,该方法会关闭当地学校。
超级会员免费看
订阅专栏 解锁全文
2810

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



