共用方式為


用戶端驗證認證

每個已驗證的客戶端都必須提供驗證認證給伺服器。 在 RPC 下,用戶端會將驗證認證儲存在用戶端與伺服器之間的系結中。 若要這樣做,用戶端會呼叫 RpcBindingSetAuthInfoRpcBindingSetAuthInfoEx

認證有兩種類型:隱含和明確:

  • 當用戶端提供使用者名稱、密碼和網域時,就會有明確的認證。
  • 當用戶端使用來自線程或進程令牌的認證,呼叫 rpcBindingSetAuthInfo RpcBindingSetAuthInfoEx 函式時,就會有隱含認證。

客戶端應該避免提供明確的認證,因為如果使用明確認證,儲存、作和擷取用戶密碼可能會對分散式系統造成安全性弱點。

若要使用隱含認證,用戶端會呼叫 rpcBindingSetAuthInfo RpcBindingSetAuthInfo (Ex)。 安全性系統和 RPC 會從線程或進程令牌取得認證,以用於驗證工作階段。

如果用戶端使用明確認證,這兩個函式的第五個參數類型為 RPC_AUTH_IDENTITY_HANDLE。 這是彈性類型,是數據結構的指標。 數據結構的內容可能會與每個驗證服務不同。 目前,RPC 支援的 SSP 要求您的應用程式設定 RPC_AUTH_IDENTITY_HANDLE 指向 SEC_WINNT_AUTH_IDENTITY 結構。 SEC_WINNT_AUTH_IDENTITY 結構包含用戶名稱、網域和密碼的欄位。