用戶端內容初始化
若要建立安全連線,用戶端會在將驗證要求傳送至伺服器之前取得輸出 認證 控制碼。 伺服器會從驗證要求建立用戶端的安全性內容。 驗證設定涉及兩個用戶端 SSPI 函式:
- AcquireCredentialsHandle 會取得先前取得登入 認證的參考。
- InitializeSecurityCoNtext (一般) 會建立初始驗證要求安全性權杖。
在搭配 Windows Sockets 用戶端使用 SSPI的GenClientCoNtext函式中,可以看到此程式的程式碼。
如果用戶端程式除了自己的登入認證之外,還需要使用認證,例如不同的使用者名稱、功能變數名稱和密碼,它會在AcquireCredentialsHandle呼叫中提供認證,並指定其他認證SEC_WINNT_AUTH_IDENTITY結構。 如需認證函式的詳細資訊,請參閱 認證管理。
注意
當結構中的字串為 ASCI 或 OEM 時,SEC_WINNT_AUTH_IDENTITY 結構的Flags成員可以設定為 SEC_WINNT_AUTH_IDENTITY_ANSI。 如果第一次使用MultiByteToWideChar函式轉換成Unicode,ANSI 字串可以搭配設定為 SEC_WINNT_AUTH_IDENTITY_UNICODE 之SEC_WINNT_AUTH_IDENTITY結構的Flags成員搭配使用。
若要起始驗證的第一回合,用戶端會 呼叫 InitializeSecurityCoNtext (General) ,以取得在連線要求訊息中傳送至伺服器的初始安全性權杖。
用戶端會使用輸出緩衝區描述項中收到的安全性權杖資訊,來產生要傳送至伺服器的訊息。 根據放置各種緩衝區等方式,訊息的建構是 應用程式通訊協定 的一部分,而且必須由雙方瞭解。
用戶端會檢查 InitializeSecurityCoNtext (General) 的傳回狀態,以查看驗證是否會在單一呼叫中完成。 SEC_I_CONTINUE_NEEDED的傳回狀態表示安全性通訊協定需要多個驗證訊息。 如需內容函式的詳細資訊,請參閱 內容管理。