驗證 (ADSI)
在 ADSI 中,包含使用者名稱和密碼的認證可用來提供或限制目錄服務中物件的存取權。 ADsGetObject 函式會使用呼叫線程的認證進行驗證。 ADsOpenObject 函式和 IADsOpenDSObject::OpenDSObject 方法可用來指定呼叫線程以外的認證。 當物件與已驗證的用戶系結時,使用者就能夠存取基礎目錄服務安全性需求所支持的物件。
注意
ADsOpenObject 函式和 IADsOpenDSObject::OpenDSObject 方法不應該用來驗證用戶認證。
重要
Microsoft不建議使用者名稱和密碼流程,因為應用程式會直接向使用者要求其密碼,這是不安全的模式。 在大部分情況下,您有更安全的流程可供您使用。
下列程式代碼範例示範如何使用 OpenDSObject 方法來驗證使用者。
Dim MyNamespace As IADsOpenDSObject
Dim X
oUsername=GetUsernameFromSecureConfig() ' Get the username from a secure location (not shown)
oPassword=GetPasswordFromSecureConfig() ' Get the password from a secure location (not shown)
OnError GoTo CleanuUp
Set MyNamespace = GetObject("LDAP:")
' For authentication, pass a variable for the user name and password to be used for
' authentication. For security reasons, it is recommended that you use the ADS_SECURE_AUTHENTICATION flag.
'
Set X = MyNamespace.OpenDSObject(DN, oUserName, oPassword, ADS_SECURE_AUTHENTICATION)
CleanUp:
MsgBox ("An error has occurred.")
Set MyNamespace = Nothing
Set X = Nothing