JAAS 认证过程
JAAS 認證過程
如上圖所示,JAAS 認證過程分如下幾個步驟:
1.?實例化一個?javax.security.auth.login.LoginContext?對象,它負責協調認證過程。該過程可用如下代碼描述:
LoginContext lc = new LoginContext(name, new CallbackHandler());- name 指向安全配置文件jaas.config中 loginModule 的名字
- CallbackHandler 用于處理 loginModule 傳入的 callbacks
2.?LoginContext 獲取安全配置文件jaas.config,實例化 Configuration 對象。如下為一個安全配置文件示例:
UsernamePassword {javax.security.examples.auth.spi.UsernamePasswordLoginModule required debug=true; };它通過系統參數傳入:
-Djava.security.auth.login.config=jaas.config3.?LoginContext 通過?javax.security.auth.login.Configuration?對象獲取 LoginModule 實例列表。通常 Configuration 對象的實現在實例化過程中加載解析配置文件。
4.?Configuration 對象返回 LoginModule 實例列表
5.?客戶端代碼調運 LoginContext 的 login 方法
6.?LoginContext 根據 Configuration 對象返回 LoginModule 實例列表,實例化 LoginModule。
7.?LoginContext 調運 LoginModule 的 initialize 方法
8.?LoginContext 調運 LoginModule 的 login 方法
9.?LoginContext 調運 LoginModule 的 commit 方法
10.?認證的信息被保存在 Subject 中
總結
- 上一篇: Golang 学习资料
- 下一篇: 【机器学习】SVM理论与python实践