作者:郭嘉
邮箱:allenwells@163.com
博客:http://blog.csdn.net/allenwells
github:https://github.com/AllenWell
在J2SE中,JARS框架的核心类和接口分布在以下包中:
这些类和接口可以进一步分为3类:通用、认证和授权。下面介绍这3类中一些重要的类和接口。
Subject(主体类,javax.security.auth.Subject):代表一组相关实体,如具有一组安全凭证的个人、组织或服务。一旦通过认证,可以用相关的身份或Principals填充Subject,并根据Subject做出授权决策。
Principal (Java.security.Security):代表已通过认证的实体(如个人、组织和服务等)的接口。
LognContext(登录上下文类,javax.security.auth.login.LoginContext):提供了认证Subjects的基本方法。一旦调用者实例化LoginGontext,那么Login Context将调用登录方法来认证Subject。另外,它还负责加载Configuration和实例化合适的LoginNtodulesa。
LoganModule(登录模块类,javax.security.auth.login.LoginModule):该接口主要是为JAAS提供者提供的,允许JARS提供者将认证机制实现为登录模块并将其插人。将登录模块插人应用环境旨在提供特定类型的认证。在认证过程中,使用一个Subject、一个CallbackHandler、共享的LoginModule状态和登录模块特定的选项来初始化每个LoginModule。登录模块使用 CallbackHandler与用户通信。J2SE 1.4提供很多登录模块,它们位于com.sun.security.auth.module包中。
Configuration(配置类,javax.security.auth.login.Configuration):代表用于特定登录应用的登录模块配置。
CallbackHandler(回调处理器类,javax.security.auth.login.CallbackHandler):定义了一个接口,允许同用户身份交互以获取与认证相关的数据,如用户名AN码、生物特征样本和基于智能卡的凭证等。应用实现CallbackHandle:并将其传递给LoingContext, LoingContext则直接将其转发给底层LoginModuleo。
Policy(策略类,Java.security.Policy):代表系统级访问控制策略,用于根据已通过认证的主体进行授权。
AuthPernussion(授权类,javax.security.auth.AuthPermission):封装了JAAS授权所需的基本权限,并控制对对象Policy, Subject; LoginContext和Configuration的访问。
PrivateCredenti址螃妇rission(私有凭证权限类,javax.security.auth.PrivateCreclentialsPermission):封装了用于访问Subject的私有凭证的权限。
【Java安全技术探索之路系列:Java可扩展安全架构】之十五:JAAS(二):JAAS类和接口
原文地址:http://blog.csdn.net/allenwells/article/details/46517883