雷林鹏分享:EJB安全
安全性是任何企业级应用关注的重大问题。它包括用户身份识别(S)或系统访问的应用程序,并允许或拒绝的访问应用程序内的资源。在EJB中,安全性可以声明的方式称为声明性安全EJB容器管理的安全问题,或者自定义代码可以在EJB处理安全问题的关注,通过自已声明。
安全的重要术语
认证 - 这是确保用户访问系统或应用程序被验证为是正品的方法。
授权 - 这是过程,确保用户有权访问系统资源的权限级别。
用户 - 用户表示访问该应用程序的客户端或系统。
用户组 - 用户可能具有一定部门例如管理员组的一部分。
用户角色 - 角色定义授权用户有权限访问系统资源的水平。
容器管理安全
EJB3.0指定下列属性/安全EJB容器实现的注解。
DeclareRoles - 指示类将接受这些声明的的角色。注释在类级别应用。
RolesAllowed -指示指定的角色的用户可以访问的方法。可以应用在一流水平,导致指定角色的用户可以访问的所有类方法。
PermitAll - 表示该业务的方法是访问。可以应用在类以及方法级别。
DenyAll - 表明业务方法不能访问任何用户指定的类或方法级别。
实例
package com.tutorialspoint.security.required;
import javax.ejb.*
@Stateless
@DeclareRoles({"student" "librarian"})
public class LibraryBean implements LibraryRemote {
@RolesAllowed({"librarian"})
public void delete(Book book){
//delete book
}
@PermitAll
public void viewBook(Book book){
//view book
}
@DenyAll
public void deleteAll(){
//delete all books
}
}
安全配置
在配置文件中的的映射角色和用户组。
student
student-group
librarian
librarian-group
(编辑:雷林鹏 来源:网络|侵删)