Conferencia práctica de WSH --- Conferencia 2 Creación de usuarios, directorios y sitios
Autor:Eve Cole
Fecha de actualización:2009-05-30 19:53:49
Clase 2 Creación de usuarios, directorios y sitios.
-------------------------------------------------- ----------------------------------
Esta conferencia utilizará ADSI, que es la interfaz del servicio Active Directory. Puede encontrar información relacionada en 15Seconds.com.
1. Cree un usuario. El siguiente código crea el usuario usuario1 en el servidor independiente. La contraseña inicial es usuario1 y se utiliza ADSI.
Código:
-------------------------------------------------- ----------------------------------
Dim Nombre de usuario,UserPass Dim oDomain,oUser Nombre de usuario = "usuario1" UserPass = "usuario1" Establecer oDomain =
GetObject("WinNT://white") Establecer oUser = oDomain.Create ("usuario", Nombre de usuario) Si (err.number = 0) Entonces
oUser.SetInfo oUser.SetPassword UserPass oUser.SetInfo De lo contrario WScript.Echo "Crear usuario" y nombre de usuario y "¡Error!" Finalizar si se establece oUser = Nada Establecer oDominio = Nada
-------------------------------------------------- ----------------------------------
2. Cree un directorio Utilice FileSystemObject para crear un directorio:
Código:
-------------------------------------------------- ----------------------------------
Dim FsObject Dim tmpFolder Establecer FsObject = WScript.CreateObject("Scripting.FileSystemObject")
tmpFolder = "D:userdateuser1" Si no es FsObject.FolderExists(tmpFolder) Entonces
FsObject.CreateFolder(tmpFolder) Si Err.Number<>0 Entonces WScript.Echo "Crear directorio" y tmpFolder
& "¡Fallo!" Fin si Fin si
-------------------------------------------------- ----------------------------------
Tenga en cuenta que antes de crear el directorio, verifique si existe. Si existe, no es necesario crearlo.
3. Crear un sitio La siguiente subrutina es responsable de crear un sitio WWW. El significado de cada parámetro es: dirección IP del sitio, directorio raíz del sitio, descripción del sitio, nombre de host, número de puerto, nombre de la computadora (cambiado a LOCALHOST), si se desea. comience inmediatamente, la cuenta utilizada para el acceso anónimo, la contraseña de la cuenta utilizada para el acceso anónimo y el directorio del archivo LOG.
La función devuelve el número de serie del sitio creado en IIS (en IIS, todos los sitios están numerados secuencialmente, siendo el primero 1).
Una llamada de ejemplo:
Código:
-------------------------------------------------- ----------------------------------
ID del sitio =
ASTCreateWebSite"10.1.3.122","d:userdatauser1","www_user1","80","LocalHost",True,"IUSR_user1","8iui%
#","D:Logfiles")Función ASTCreateWebSite(dirección IP, directorio raíz, comentario del servidor, nombre de host, número de puerto,
Computadora, Inicio, Nombre de usuario anónimo, Contraseña de usuario anónimo, Directorio de archivo de registro) Dim w3svc, Servidor web,
NewWebServer, NewDir Dim Bindings, BindingString, NewBindings, Index, SiteObj, bDone On Error
Reanudar siguiente Err.Clear Establecer w3svc = GetObject("IIS://" & Computer & "/w3svc") Si
Err.Number <> 0 Entonces WScript.Echo "No se puede abrir: "&"IIS://" & Computer & "/w3svc" & VbCrlf & "El programa se cerrará". WScript.Quit (1) End If BindingString = IpAddress". & ":" & NumPuerto & ":" &
Nombre de host para cada servidor web en w3svc Si WebServer.Class = "IIsWebServer" Entonces
Enlaces = WebServer.ServerBindings Si BindingString = Enlaces(0) Entonces
WScript.Echo "Conflicto de dirección IP:" & IpAddress & "¡Compruebe la dirección IP!" & VbCrlf & "Cancelar la creación de este sitio".
Salir de la función Finalizar si Finalizar si Siguiente Índice = 1 bDone = False
Mientras (no bDone) Err.Clear Set SiteObj = GetObject("IIS://"&Computer&"/w3svc/" &
Índice) Si (Err.Number = 0) Entonces Índice = Índice + 1 De lo contrario
Err.Clear Establecer NewWebServer = w3svc.Create("IIsWebServer", Índice) Si
(Err.Number <> 0) Entonces Índice = Índice + 1 De lo contrario Err.Clear
Establezca SiteObj = GetObject("IIS://"&Computer&"/w3svc/" & Index) Si
(Err.Number = 0) Entonces bDone = Verdadero Índice de lo contrario
= Índice + 1 Fin Si Fin Si Fin Si Si (Índice > 10000)
Luego WScript.Echo "Parece que el sitio no se puede crear. El número de serie del sitio que se está creando es: "&Index&"." & VbCrlf & "Cancelar la creación de este sitio". 0)
NewBindings(0) = BindingString NewWebServer.ServerBindings = NewBindings
NewWebServer.ServerComment = ServerComment NewWebServer.AnonymousUserName = AnonymousUserName
NewWebServer.AnonymousUserPass = AnonymousUserPass NewWebServer.KeyType = "IIsWebServer"
NewWebServer.FrontPageWeb = Verdadero NewWebServer.EnableDefaultDoc = Verdadero NewWebServer.DefaultDoc
= "Default.htm, Default.asp, Index.htm, Index.asp" NewWebServer.LogFileDirectory = LogFileDirectory
NewWebServer.SetInfo Establecer NewDir = NewWebServer.Create("IIsWebVirtualDir", "ROOT")
NewDir.Path = RootDirectory NewDir.AccessRead = true NewDir.AppFriendlyName = "Aplicación" &
ServerComment NewDir.AppCreate True NewDir.AccessScript = True Err.Clear
NewDir.SetInfo If (Err.Number = 0) Then Else WScript.Echo "Error al crear el directorio de inicio".
Finalizar si Inicio = Verdadero Entonces Err.Clear Establecer NewWebServer = GetObject("IIS://"
& Computadora & "/w3svc/" & Índice) NewWebServer.Start If Err.Number <> 0 Entonces
WScript.Echo "¡Error al iniciar el sitio!" Err.Clear Else End If End If
ASTCreateWebSite = Función IndexEnd La siguiente función crea un sitio FTP: Función ASTCreateFtpSite(IPAddress,
Directorio raíz, comentario del servidor, nombre del host, número de puerto, computadora, inicio, directorio del archivo de registro) Dim MSFTPSVC,
FtpServer, NewFtpServer, NewDir Dim Bindings, BindingString, NewBindings, Index, SiteObj, bDone
En caso de error, reanudar el siguiente Err.Clear Set MSFTPSVC = GetObject("IIS://" & Computer & "/MSFTPSVC")
Si Err.Number <> 0 Entonces WScript.Echo "No se puede abrir: "&"IIS://" & Computer & "/MSFTPSVC" & VbCrlf
& "El programa se cerrará." WScript.Quit (1) End If BindingString = IpAddress & ":" & PortNum
& ":" & Nombre de host para cada FtpServer en MSFTPSVC Si FtpServer.Class="IIsFtpServer" Entonces
Enlaces = FtpServer.ServerBindings Si BindingString = Enlaces(0) Entonces
WScript.Echo "Conflicto de dirección IP:" & IpAddress & "¡Compruebe la dirección IP!" & VbCrlf & "Cancelar la creación de este sitio".
Función Finalizar si Finalizar si Siguiente Índice = 1 bDone = False Mientras
(No bDone) Err.Clear Set SiteObj = GetObject("IIS://"&Computer&"/MSFTPSVC/" & Index)
Si (Err.Number = 0) Entonces Índice = Índice + 1 De lo contrario Err.Clear
Establecer NewFtpServer = MSFTPSVC.Create("IIsFtpServer", Índice) Si (Err.Number <>
0) Entonces Índice = Índice + 1 De lo contrario Err.Clear
Establecer SiteObj = GetObject("IIS://"&Computer&"/MSFTPSVC/" & Index) Si (Err.Number = 0)
Entonces bHecho = Verdadero De lo contrario Índice = Índice + 1
Fin si Fin si Fin si si (Índice > 10000) Entonces
WScript.Echo "Parece que no se puede crear el sitio. El número de serie del sitio que se está creando es: "&Index&"." & VbCrlf & "Cancelar la creación de este sitio".
Salir de la función Fin si Wend NewBindings = Array(0) NewBindings(0) =
BindingString NewFtpServer.ServerBindings = Nuevos enlaces NewFtpServer.ServerComment =
ServerComment NewFtpServer.AllowAnonymous = Falso NewFtpServer.AccessWrite = Verdadero
NewFtpServer.AccessRead = Verdadero NewFtpServer.DontLog = Falso NewFtpServer.LogFileDirectory =
LogFileDirectory NewFtpServer.SetInfo Establecer NewDir = NewFtpServer.Create
("IIsFtpVirtualDir", "ROOT") NewDir.Path = RootDirectory NewDir.AccessRead = verdadero
Err.Clear NewDir.SetInfo If (Err.Number = 0) Then Else WScript.Echo "Se produjo un error al crear el directorio de inicio". End If If Start = True Then Err.Clear Set NewFtpServer =
GetObject("IIS://" & Computadora & "/MSFTPSVC/" & Índice) NewFtpServer.Start If
Err.Number <> 0 Luego WScript.Echo "¡Error al iniciar el sitio!"
Finalizar si Finalizar si ASTCreateFtpSite = Función IndexEnd
-------------------------------------------------- ----------------------------------