rpcBindingInqAuthClient 函式 (rpcdce.h)
伺服器應用程式會呼叫 RpcBindingInqAuthClient 函式,以取得進行遠端過程調用之已驗證客戶端的主體名稱或許可權屬性。
語法
RPC_STATUS RpcBindingInqAuthClient(
RPC_BINDING_HANDLE ClientBinding,
RPC_AUTHZ_HANDLE *Privs,
RPC_WSTR *ServerPrincName,
unsigned long *AuthnLevel,
unsigned long *AuthnSvc,
unsigned long *AuthzSvc
);
參數
ClientBinding
進行遠端過程調用之用戶端的用戶端系結句柄。 此值可以是零。 請參閱<備註>。
Privs
針對在 ClientBinding 系結句柄上發出遠端過程調用之用戶端應用程式的特殊許可權資訊,傳回句柄的指標。 針對 ncalrpc 呼叫, Privs 包含具有客戶端主體名稱的字串。
此參數所參考的數據是唯讀的,不應該由伺服器應用程式修改。 如果伺服器想要保留任何傳回的數據,伺服器必須將數據複製到伺服器配置的記憶體中。
Privs 參數指向的數據會直接從 SSP 取得。 因此,數據的格式專屬於 SSP。 如需 SSP 的詳細資訊,請參閱 安全性支援提供者 (SSP) 。
ServerPrincName
傳回指標,指向呼叫 RpcServerRegisterAuthInfo 函式的伺服器應用程式所指定的伺服器主體名稱指標。 傳回的名稱及其語法的內容是由使用中的驗證服務所定義。 針對 SCHANNEL SSP,主體名稱是 Microsoft 標準 (msstd) 格式。 如需 msstd 格式的詳細資訊,請參閱 主體名稱。
指定 Null 值以防止 RpcBindingInqAuthClient 傳回 ServerPrincName 參數。 在此情況下,應用程式不會呼叫 RpcStringFree 函式。
AuthnLevel
傳回指標設定為用戶端應用程式所要求的驗證層級,該層級會在 ClientBinding 系結句柄上呼叫遠端過程。
指定 Null 值以防止 RpcBindingInqAuthClient 傳回 AuthnLevel 參數。
AuthnSvc
傳回設定為用戶端應用程式所要求之驗證服務的指標,此服務會在 ClientBinding 系結句柄上呼叫遠端過程。 如需 RPC 支援的驗證層級清單,請參閱 驗證層級常數。
指定 Null 值以防止 RpcBindingInqAuthClient 傳回 AuthnSvc 參數。
AuthzSvc
傳回設定為用戶端應用程式所要求之授權服務的指標,此服務會在 ClientBinding 系結句柄上呼叫遠端過程。
指定 Null 值以防止 RpcBindingInqAuthClient 傳回 AuthzSvc 參數。 RPC_C_AUTHN_WINNT驗證服務不會使用此參數。 傳回的值一律會RPC_C_AUTHZ_NONE。
傳回值
值 | 意義 |
---|---|
|
呼叫成功。 |
|
系結句柄無效。 |
|
這是作業的系結錯誤類型。 |
|
系結沒有驗證資訊。 |
備註
伺服器應用程式會呼叫 RpcBindingInqAuthClient 函式,以取得進行遠端過程調用之已驗證客戶端的主體名稱或許可權屬性。 此外, RpcBindingInqAuthClient 會傳回用戶端所指定的驗證服務、驗證層級和伺服器主體名稱。 伺服器可以使用傳回的數據進行授權。
RPC 執行時間連結庫會為傳回的 ServerPrincName 參數配置記憶體。 應用程式負責呼叫傳回自變數字串的 RpcStringFree 函式。
針對同步 RPC 呼叫,伺服器應用程式可以使用零作為 ClientBinding 參數的值。 使用零 會從目前正在執行的遠端過程調用中擷取驗證和授權資訊。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | rpcdce.h (包含 Rpc.h) |
程式庫 | Rpcrt4.lib |
Dll | Rpcrt4.dll |