Saya menghadapi masalah dengan LDAP, ini agak aneh. Server Web saya adalah IIS7.5 (server windows 2008 R2). Ini dikonfigurasi untuk menggunakan Otentikasi windows. Saya telah menempelkan halaman asp saya di bawah.
Browser web adalah IE8, Telah menambahkan situs web ke zona intranet dan mengaktifkan pengiriman, detail pengguna jika zona intranet di tab keamanan-> tingkat khusus. Otentikasi windows terintegrasi diaktifkan di tab lanjutan.
Semuanya berfungsi dengan baik selama 20 menit (Pengaturan waktu sesi dan pengaturan waktu habis default lainnya adalah selama 20 menit). Setelah 20 menit saya mendapatkan kesalahan runtime ASP. Yang mengatakan metode atau properti memberOf untuk objek objUser tidak didukung. Ketika saya mendapatkan kesalahan di bawah ini, saya mengubah jenis Otentikasi menjadi Otentikasi dasar. Ini meminta kredensial windows dan berfungsi dengan baik. Setelah itu saya kembali lagi ke otentikasi windows. Dan itu berhasil untuk beberapa waktu.
Tidak yakin apakah id IIS7.5 dikonfigurasi dengan otentikasi dasar diaktifkan dan IE8 dikonfigurasi seperti di atas, masih mengapa ia meminta Kredensial windows. Meskipun mode Otentikasi windows tidak meminta kredensial, Ini berfungsi dengan baik tetapi untuk jangka waktu tertentu. Adakah yang bisa menjelaskan kepada saya mengapa perilaku aneh ini dan solusi untuk memperbaikinya?
<%@ LANGUAGE="VBSCRIPT" %>
<%
Option Explicit
Dim oADSysInfo
Dim objUser
Dim strGroupData
Dim strUserDN
Dim arrGroups
Dim strGroup
Dim wsObject
Dim netSys
Dim strUsrDomain
strGroupData = ""
Set wsObject = CreateObject("WScript.Shell")
Set netSys = CreateObject("WScript.Network")
strUsrDomain = netSys.UserDomain
Set oADSysInfo = CreateObject("ADSystemInfo")
If err.number <> 0 Then
'getLDAPGroupInfo = strGroupData
'wsObject.popup("Error"& e.decription)
'Exit Function
End If
strUserDN = oADSysInfo.UserName
Set objUser = GetObject("LDAP://"& strUserDN)
arrGroups = objUser.memberOf
If IsEmpty(arrGroups) Then
'Wscript.Echo "Member of no groups"
ElseIf (TypeName(arrGroups) = "String") Then
'Wscript.Echo "Member of group " & arrGroups
strGroupData = arrGroups
Else
For Each strGroup In arrGroups
strGroupData = strGroupData & "," & strGroup
Next
'strGroupData = arrGroups
End If
Response.Write(strGroupData)
%>