JAAS
Java认证和授权服务(Java Authentication and Authorization Service,简称JAAS)是一个Java以用户为中心的安全框架,作为Java以代码为中心的安全的补充。自Java运行环境(JRE) 1.4起,JAAS就被集成到JRE,而之前是作为一个扩展库由Sun公司提供的。
JAAS的主要目标是分开使用者认证的议题,这样就可以个别地管理他们。
管理
编辑对系统管理者而言,JAAS有两种设定档:
- *.login.conf:详述如何插入厂商提供的用户认证模块(Login Module)到特定应用程式里。
- *.policy:详述哪个身份(使用者或程式)获得哪种许可
例如,一个有这种login.conf的档案指出不同的认证机制要如何执行以认证使用者。
PetShopApplication { com.sun.security.auth.module.LdapLoginModule sufficient; com.foo.SmartcardLoginModule requisite; com.sun.security.auth.module.UnixLoginModule required debug=true; };
应用程序接口
编辑对应用程式开发者而言,JAAS是一个标准的程式库,并提供了:
- 身份(Principal)和一系列证书(Subject)表示。
- 认证服务,将调用你的应用程序的回调接口请求用户的信息,如用户名和口令。认证服务将返回一个新的Subject对象。
- 授权服务,验证一个Subject是否由管理员授予了某个权限。
安全系统集成
编辑对安全系统整合者而言,JAAS提供的介面可以:
- 提供你的身分名字空间给应用程式。
- 将证书附加在线程上(Subject)。
- 有关登录模块的开发。你的模块调用回调函数查询用户,检查他们的应答并生成Subject。
参见
编辑外部链接
编辑- JAAS主页 (页面存档备份,存于互联网档案馆)
- JAAS教程1 (页面存档备份,存于互联网档案馆)
- JAAS教程2
- (英文) jGuard : open source project which can secure standalone or web applications based on JAAS
这是一篇与互联网相关的小作品。您可以通过编辑或修订扩充其内容。 |