Condividi tramite


Introduzione ad ASP per ADSI

ADSI può essere usato per accedere ai dati della directory tramite una pagina ASP. Questo può essere un modo pratico per eseguire attività di amministrazione e query da una pagina Web o fornire informazioni ai dipendenti in una intranet.

Un vantaggio dell'uso di ADSI con ASP è la possibilità di creare un'esperienza utente più completa perché è possibile usare Visual Basic per creare un'applicazione ADSI e offrirla a un utente tramite una pagina Web standard. Ad esempio, è possibile creare una pagina Web che consente ai dipendenti di immettere il cognome di un dipendente e ottenere un numero di telefono per tale dipendente oppure creare un modulo che consenta ai dipendenti di aggiornare le informazioni personali in un database delle risorse umane aziendali.

Il codice ASP inizia con '<%' e termina con '%>'. È possibile aggiungere codice ADSI come VBScript o Visual Basic.

Per creare una pagina ASP, è possibile usare un editor di pagine Web, Blocco note o un altro editor di testo o il sistema di sviluppo .NET di Microsoft Visual Studio.

Prima di eseguire la pagina ASP, configurare l'applicazione o il server IIS in base alle istruzioni riportate in Problemi di autenticazione per ADSI con ASP.

Esempio ASP semplice: enumerazione di oggetti in un contenitore

Usando un editor di pagine Web, creare una nuova pagina HTML che accetta il nome distinto di un oggetto contenitore. Immettere l'esempio di codice seguente.

<html>
<body>

<form method="POST" action="https://localhost/Enum.asp" ID="Form1">
<p>Distinguished name of container:<input type="text" name="inpContainer" size="100" ID="Text2"></p>
<p><input type="SUBMIT" value="GO" ID="Submit1" NAME="Submit1"></p>
</form>

</body>
</html>

Questa pagina può ora accettare un nome di contenitore passato e usare ADSI per enumerare gli oggetti nel contenitore.

Creare una nuova pagina ASP denominata Enum.asp e immettere l'esempio di codice seguente. Salvare questa pagina nella radice del server Web locale.

<%@ Language=VBScript %>
<%
' Get the inputs.
containerName = Request.Form("inpContainer")
' Validate compName before using.

If Not ("" = containerName) Then
  ' Bind to the object.
  adsPath = "LDAP://" & containerName
  Set comp = GetObject(adsPath)

  ' Write the ADsPath of each of the child objects.
  Response.Write("<p>Enumeration:</p>")
  For Each obj in comp
    Response.Write(obj.ADsPath + "<BR>")
  Next
End If
%>