JavaTM 2 Platform
Standard Ed. 6

軟體套件 org.ietf.jgss

此套件提供一個框架,該框架允許應用程序開發人員通過利用統一的 API 使用一些來自各種基礎安全機制(如 Kerberos)的安全服務,如驗證、資料完整性和和資料機密性。

請參見:
          描述

介面摘要
GSSContext 此介面將封裝 GSS-API 安全上下文,並提供可通過上下文提供的安全服務。
GSSCredential 此介面將為實體封裝 GSS-API 憑據。
GSSName 此介面將封裝單一的 GSS-API 主體實體。
 

類別摘要
ChannelBinding 此類別封裝關於調用者提供的通道綁定資訊的概念。
GSSManager 此類別作為其他重要 GSS-API 類別的處理器,並且還提供有關受支持的機制的資訊。
MessageProp 這是一個在 per-message GSSContext 方法中使用的、用來傳送 per-message 屬性的實用工具類別。
Oid 此類別表示 Universal Object Identifiers(通用物件標識符,即 Oid)及其相關的操作。
 

異常摘要
GSSException 每當發生 GSS-API 錯誤(包括任何特定於機制的錯誤)時,都會拋出此異常。
 

軟體套件 org.ietf.jgss 的描述

此套件提供一個框架,該框架允許應用程序開發人員通過利用統一的 API 使用一些來自各種基礎安全機制(如 Kerberos)的安全服務,如驗證、資料完整性和和資料機密性。應用程序可以選擇使用的安全機制由唯一的物件標識符標識。此類別機制的其中一個範例就是 Kerberos v5 GSS-API 機制(物件標識符 1.2.840.113554.1.2.2)。此機制可以通過 GSSManager 類別的預設實例獲取。

GSS-API 以一種獨立於語言的方式在 "RFC 2743" 中定義。Java 語言綁定在 "RFC 2853" 中定義。

應用程序通過實例化 GSSManager 啟動,然後 GSSManager 充當安全上下文的處理器。應用程序可以使用那些也可以利用 GSSManager 創建的特定主體名稱和憑據;或者還可以使用系統預設值實例化上下文。然後檢查上下文創建環路。一旦與同位體一起建立了上下文,也就完成了驗證。諸如完整性和機密性的資料保護則可以從此上下文中獲取。

GSS-API 與同位體之間不進行任何通信。它只產生應用程序必須以某種方式傳輸給其他端的標記。

憑據獲取

GSS-API 本身並不指示基礎機制如何獲取驗證所必需的憑據。它假定,在調用 GSS-API 之前獲取這些憑據,並將其存儲在一個機制提供者知道的地方。不過,Java 平臺中的預設模型將是這樣的:機制提供者必須僅從私有或公共憑據集中獲取憑據,這些憑據集與當前存取控制上下文中的 Subject 相關。Kerberos v5 機制將在私有憑據集中搜尋需要的 INITIATE 和 ACCEPT 憑據(KerberosTicketKerberosKey),而其他機制可能要在公共集(或兩者)中尋找。如果需要的憑據未在當前 Subject 的適當集合中,則 GSS-API 調用一定會失敗。

此模型具有憑據管理簡單、可從應用程序角度預知這一優勢。具有適當權限的應用程序可以使用標準的 Java API 清除 Subject 中的憑據或更新它們。如果應用程序清除了這些憑據,就可以確保 JGSS 機制失敗,如果它更新了基於時間的憑據,就可以確保 JGSS 機制能夠成功。

此模型要求執行 JAAS login,以便對 JGSS 機制稍後可以利用的 Subject 進行驗證並登錄。不過,應用程序能夠通過以下系統屬性放寬此限制:javax.security.auth.useSubjectCredsOnly。預設情況下,將假定此系統屬性為 true(即便在未設置時也是如此),以指示提供者必須僅使用當前 Subject 中存在的憑據。不過,如果通過應用程序將此屬性顯式設置為 false,則表示該提供者可以隨意使用它所選擇的任何憑據快取記憶體。此類別憑據快取記憶體可以是磁碟快取記憶體、記憶體快取記憶體,抑或僅僅是當前 Subject 本身。

相關文檔

有關使用 Java GSS-API 的在線教程,請參閱《Introduction to JAAS and Java GSS-API》。

從以下版本開始:
1.4

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only