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
这是一篇與互联网相關的小作品。您可以通过编辑或修订扩充其内容。 |