option explicit
dim strUsername, strDN, objUser, iResponse
const strTitle = "Lås Bruger op ver. 1.0"
strUsername = InputBox("Indtast det brugernavn du øsnker at låse op!", strTitle)
if len(strUsername) > 0 then
'bind brugeren med Ldap provideren
strDN = GetuserDN(strUsername)
'checks if the user exists
On Error resume Next
set ObjUser = Getobject("
LDAP://" & strDN)
if Err.Number <> 0 Then
On Error Goto 0
MsgBox "Brugeren '" & strUsername & "' blev ikke fundet!", , strTitle
Wscript.quit(1)
end if
On Error Goto 0
'checks if the user is locked, and ask's if the user is
If objUser.IsAccountLocked = true Then
iResponse = MsgBox("Brugeren er låst op ønsker du at låse den op?", 4, strTitle)
If iResponse = 6 Then
objUser.IsAccountLocked = false
objUser.SetInfo
MsgBox "Brugeren er nu låst op!", , StrTitle
Else
MsgBox "Brugeren er stadig låst!", , strTitle
End If
else
MsgBox "Brugeren er ikke låst!", , strTitle
end if
end if
' ---
' Converts a NT username in the current NetBIOS domains to the corresponding distinguished name
Function GetUserDN(strUserNTName)
' Declare variables
Dim objRootDSE, strDNSDomain, objTrans, strNetBIOSDomain, strUserDN
' Create objects
Set objTrans = CreateObject("NameTranslate")
Set objRootDSE = GetObject("
LDAP://RootDSE")
' Retrieve DNS domain name
strDNSDomain = objRootDSE.Get("defaultNamingContext")
' Convert DNS domain name to NetBIOS domain name
objTrans.Init 3, strDNSDomain
objTrans.Set 1, strDNSDomain
strNetBIOSDomain = objTrans.Get(3)
' Remove trailing backslash
If Right(strNetBIOSDomain, 1) = "\" Then strNetBIOSDomain = Left(strNetBIOSDomain, Len(strNetBIOSDomain) - 1)
' Enable internal errorhandling and clear errorlog
On Error Resume Next
Err.Clear
' Convert NT username to Distinguished Name
objTrans.Init 1, strNetBIOSDomain
objTrans.Set 3, strNetBIOSDomain & "\" & strUserNTName
' Check for error
If Err.Number <> 0 Then
GetUserDN = ""
End If
' Clear errorlog and disable internal errorhandling
Err.Clear
On Error GoTo 0
strUserDN = objTrans.Get(1)
' If the returned distinguished name doesn't contain a common name (CN), then the user doesn't exist
If InStr(strUserDN, "CN") > 0 Then
' Return distinguished name of the user
GetUserDN = strUserDN
Else
' Return empty string
GetUserDN = ""
End If
End Function
Jeg er ikke inde i ASP, men jeg ved hvis du laver en fil der hedder unlock.vbs, og smider det her ind i den, ja så vil du kunne låse en bruger op.. forudsat du selvfølgelig har rettigheder til det..
Og da det er vbscript så burde det godt kunne lade sig gøre at få det lavet om til asp, uden de store krummelurer..