인증(ADSI)
ADSI에서 사용자 이름 및 암호로 구성된 자격 증명은 디렉터리 서비스의 개체에 대한 액세스를 제공하거나 제한하는 데 사용됩니다. ADsGetObject 함수는 인증을 위해 호출 스레드의 자격 증명을 사용합니다. ADsOpenObject 함수 및 IADsOpenDSObject::OpenDSObject 메서드를 사용하여 호출 스레드 이외의 자격 증명을 지정할 수 있습니다. 개체가 인증된 사용자와 바인딩되면 기본 디렉터리 서비스 보안 요구 사항에서 지원하는 대로 개체에 대한 액세스가 허용됩니다.
참고 항목
ADsOpenObject 함수 및 IADsOpenDSObject::OpenDSObject 메서드를 사용하여 사용자 자격 증명의 유효성을 검사하면 안 됩니다.
Important
애플리케이션에서 사용자에게 암호를 직접 요청하므로 안전하지 않은 패턴이므로 사용자 이름 및 암호 흐름을 권장하지 않습니다. 대부분의 시나리오에서는 사용할 수 있는 더 안전한 흐름이 있습니다.
다음 코드 예제에서는 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