RasSecurityDialogBegin 函式 (rasshost.h)
RasSecurityDialogBegin 函式是 RAS 伺服器嘗試連線時,RAS 伺服器呼叫的第三方 RAS 安全性 DLL 進入點。 這可讓安全性 DLL 開始驗證遠端使用者。
語法
DWORD RasSecurityDialogBegin(
[in] HPORT hPort,
[in] PBYTE pSendBuf,
[in] DWORD SendBufSize,
[in] PBYTE pRecvBuf,
[in] DWORD RecvBufSize,
VOID(* )(SECURITY_MESSAGE *) RasSecurityDialogComplete
);
參數
[in] hPort
指定 RAS 埠句柄。 安全性 DLL 會在其他 RAS 安全性函式中使用這個句柄,例如 RasSecurityDialogSend 和 RasSecurityDialogReceive 來識別此驗證交易。
請注意,此句柄只在 RAS 安全性函式中有效;請勿在其他 I/O 函式中使用。
[in] pSendBuf
RAS 伺服器所配置的緩衝區指標。 安全性 DLL 會搭配 RasSecurityDialogSend 函式使用此緩衝區來傳送遠端電腦上 RAS 終端機視窗中顯示的文字。
[in] SendBufSize
指定 pSendBuf 緩衝區的大小,以位元組為單位。
[in] pRecvBuf
RAS 伺服器所配置的緩衝區指標。 安全性 DLL 會使用此緩衝區搭配 RasSecurityDialogReceive 函式來接收來自遠端用戶的回應。
[in] RecvBufSize
指定 pRecvBuf 緩衝區的大小,以位元組為單位。
RasSecurityDialogComplete
傳回值
如果安全性 DLL 已成功啟動驗證作業, RasSecurityDialogBegin 應該會傳回 NO_ERROR。 在此情況下,安全性 DLL 稍後必須呼叫 RasSecurityDialogComplete 參數所指向的函式來終止驗證交易。
如果發生錯誤, RasSecurityDialogBegin 應該會傳回非零的錯誤碼。 在此情況下,RAS 伺服器會停止呼叫,並在事件記錄檔中記錄錯誤。 傳回非零的錯誤碼會終止驗證交易,因此安全性 DLL 不需要呼叫 RasSecurityDialogComplete 函式 。
備註
當 RAS 伺服器從遠端電腦收到呼叫時,它會呼叫由已註冊 RAS 安全性 DLL 導出的 RasSecurityDialogBegin 函式,如果有的話。 當 RAS 伺服器呼叫此函式時,它會將下列資訊傳遞至安全性 DLL:
- 用來識別連線的埠句柄
- 與遠端用戶通訊時所要使用的緩衝區指標
- 完成驗證時要呼叫 的 RasSecurityDialogComplete 函式指標
RasSecurityDialogBegin 實作必須儘快傳回,因為 RAS 伺服器遭到封鎖且無法接受任何其他呼叫,直到 RasSecurityDialogBegin 傳回為止。 RasSecurityDialogBegin 函式應該複製輸入參數,並建立線程來與遠端使用者通訊及驗證。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | rasshost.h |