摘要挑戰回應的輸入緩衝區
使用 Microsoft Digest 的 HTTP 驗證需要三個輸入緩衝區,才能產生挑戰回應。 下表摘要說明這些緩衝區。
緩衝區編號 | 包含 | 緩衝區類型 |
---|---|---|
0 | 從伺服器收到的挑戰 | SECBUFFER_TOKEN |
1 | HTTP 方法 | SECBUFFER_PARAMS |
2 | H (實體) | SECBUFFER_PARAMS |
3 | 目標伺服器的服務主體名稱 (SPN) 。 | SECBUFFER_TARGET_HOST | SECBUFFER_READONLY |
4 | 通道系結權杖值 | | SECBUFFER_CHANNEL_BINDINGSSECBUFFER_READONLY |
緩衝區零包含從伺服器收到的摘要挑戰,以回應受存取保護之資源的初始要求。
緩衝區 1 包含方法的字串表示,例如 「GET」 或 「POST」。 方法用於 A2 的計算中,如 RFC 2617中所述。
緩衝區 2 是訊息實體主體的 MD5 雜湊,如 RFC 2617 中所述。
當摘要與通道系結搭配使用時,Buffer 3 會以 UTF-8 格式包含目標伺服器的 SPN。
當 Digest 與通道系結搭配使用時,Buffer 4 包含通道系結權杖值。
SASL 的輸入緩衝區
僅提供緩衝區零。 為了與其他 SSP 相容,您可以呼叫 InitializeSecurityCoNtext (Digest) ,而不需要有效的伺服器挑戰。 在此情況下, pInput 參數應該設定為 Null。