|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object org.ietf.jgss.ChannelBinding
public class ChannelBinding
此類別封裝關於調用者提供的通道綁定資訊的概念。通道綁定用來在上下文創建期間加強對同位體實體進行驗證的質量。它們使 GSS-API 調用者能夠將安全上下文的創建與相關的特徵(如位址)或特定於應用程序的資料進行綁定。
初始化安全上下文的調用者必須確定將在 GSSContext 物件中設置的合適的通道綁定值。接受端必須提供一致的綁定,以便確認接收到的標記具有正確的與通道相關的特徵。
在 GSS-API 中是否使用通道綁定是可選的。在初次調用 initSecContext
或執行 acceptSecContext
之前,可以使用 setChannelBinding
方法、針對 GSSContext
來設置 ChannelBinding。除非已將 setChannelBinding
方法用於設置 GSSContext 物件的 ChannelBinding,否則將假定為 null
ChannelBinding。
從概念上講,GSS-API 將初始端和接受端的位址資訊與應用程序提供的位元組陣列連接在一起,構成一個八位位元組字元串。驗證機制將通過此八位位元組字元串計算 MIC,並且將 MIC 綁定到由 GSSContext
介面的 initSecContext
方法發出的上下文創建標記中。同樣的綁定將由上下文接受端為其 GSSContext
物件設置,並且在處理 acceptSecContext
方法期間,將用同樣的方法來計算 MIC。將把計算出的 MIC 與標記中的值進行比較,如果這兩個 MIC 不同,接受端將拋出 GSSException
,主程式碼被設置為 BAD_BINDINGS
,並且將不建立上下文。有些驗證機制可能在標記(而不僅僅在 MIC )中包括實際的通道綁定資料;因此,應用程序不應將機密資料用作通道綁定元件。
有些驗證機制可能會在那些將出現在通道綁定中的位址上施加一些附加限制。例如,有的驗證機制會驗證通道綁定的初始端位址欄位是否包含主機系統的正確網路位址。因此,那些可移植的應用程序必須確保,它們要麼能夠提供位址欄位的正確資訊,要麼忽略對說明性資訊的設置。
建構子摘要 | |
---|---|
ChannelBinding(byte[] appData)
創建不帶任何說明性資訊的 ChannelBinding 物件。 |
|
ChannelBinding(InetAddress initAddr,
InetAddress acceptAddr,
byte[] appData)
使用使用者提供的位址資訊和資料創建 ChannelBinding 物件。 |
方法摘要 | |
---|---|
boolean |
equals(Object obj)
比較 ChannelBinding 的兩個實例。 |
InetAddress |
getAcceptorAddress()
獲得此通道綁定的接受端的位址。 |
byte[] |
getApplicationData()
獲得此通道綁定的應用程序指定的資料。 |
InetAddress |
getInitiatorAddress()
獲得此通道綁定的初始端位址。 |
int |
hashCode()
返回此 ChannelBinding 物件的雜湊碼值。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public ChannelBinding(InetAddress initAddr, InetAddress acceptAddr, byte[] appData)
null
值可用於任何應用程序不想指定的欄位。
initAddr
- 上下文初始端的位址。可通過提供 null
值來表示應用程序不想設置此值。acceptAddr
- 上下文接受端的位址。可通過提供 null
值來表示應用程序不想設置此值。appData
- 應用程序提供的資料,用作通道綁定的一部分。可通過提供 null
值來表示應用程序不想設置此值。public ChannelBinding(byte[] appData)
appData
- 應用程序提供的資料,用作通道綁定的一部分。方法詳細資訊 |
---|
public InetAddress getInitiatorAddress()
null
。public InetAddress getAcceptorAddress()
public byte[] getApplicationData()
null
。public boolean equals(Object obj)
Object
中的 equals
obj
- 將與此 ChannelBinding 進行比較的另外一個 ChannelBinding
Object.hashCode()
,
Hashtable
public int hashCode()
Object
中的 hashCode
Object.equals(java.lang.Object)
,
Hashtable
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。