vbscript使用IIS ADSI 提供程序配置IIS

  IIS ADSI 提供程序参考部分介绍了仅由 IIS ADSI 提供程序提供的对象、方法和属性。任何使用 Actve Directory 服务界面 (ADSI) 的脚本或代码均需要使用一些基本 Windows ADSI 接口。Windows ADSI 接口包括频繁使用的方法和属性。例如,ADSI 对象 Get 和 Set 方法允许更改数据存储(例如,IIS 配置数据库)中的属性,然后 ADSI 对象 SetInfo 保存此更改。如果使用 ADSI 编写脚本和代码,则可以节省保持对 Windows ADSI 接口引用的开放时间。

  “目录服务”、“Active Directory? 服务界面 (ADSI)”和“ADSI 参考”下的 Windows Platform SDK 中有相关文档对 Windows ADSI 接口的对象、属性和方法进行了描述。还可以查看 MSDN online 上的 ADSI Reference。

IIS ADSI 提供程序参考
  此主题包含了每个 IIS Active Directory? 服务界面 (ADSI) 对象的参考页面。每个页面包含 ADSI 容器信息、对象的 ADsPath、对象可访问的配置数据库属性以及所有用于特定对象的其他方法。

  每个 IIS ADSI 对象均具有 KeyType 属性,明确指定了其代表的 IIS 管理对象的类型。如果项类型不可用或无效,则 IIS 将指派一般类型 IIsObject。可以使用 KeyType 将 ADSI 对象更改为有效对象并且获得对其他特定 IIS 属性和方法的访问权限。

ADSI            对象     描述
IIsCertMapper (ADSI) 将证书映射到 Microsoft? Windows? 帐户。
IIsCompressionSchemes (ADSI) 建立 HTTP 1.1 压缩方案的全局设置。
IIsCompressionScheme (ADSI) 建立单个压缩方案的设置。
IIsComputer (ADSI) 建立 IIS 配置的全局设置。
IIsCustomLogModule (ADSI) 设置自定义日志记录信息字段节点的属性。
IIsFilter (ADSI) 提供有关特定筛选器的信息。
IIsFilters (ADSI) 管理筛选器。
IIsFtpInfo (ADSI) 除了在 IIsFtpService 设置的属性外,建立 FTP 服务器的配置属性。
IIsFtpServer (ADSI) 建立单个 FTP 服务器的配置属性。
IIsFtpService (ADSI) 建立所有 FTP 服务器共有的配置属性。
IIsFtpVirtualDir (ADSI) 设置单个 FTP 虚拟目录的属性。
IIsIPSecurity (ADSI) 根据 IP 地址和域地址设置访问权限。
IIsLogModule (ADSI) 包含特定日志记录模块的信息。
IIsLogModules (ADSI) 维护有关已安装的日志记录模块的信息。
IIsMimeMap (ADSI) 管理多用途 Internet 邮件扩展 (MIME) 映射。
IIsMimeType (ADSI) 操作有效 MIME 类型列表。
IIsWebDirectory (ADSI) 设置单个 Web 目录的属性。
IIsWebFile (ADSI) 设置单个 Web 文件的属性。
IIsWebInfo (ADSI) 除了在 IIsWebService 设置的属性外,建立 Web 服务器的配置属性。
IIsWebServer (ADSI) 建立单个 Web 服务器的配置属性。
IIsWebService (ADSI) 建立所有 Web 服务器共有的配置属性。
IIsWebVirtualDir (ADSI) 设置单个 Web 虚拟目录的属性。

示例
  下面的 VBScript 示例代码显示了如何使用 IIS ADSI 对象的 ADSI 方法更改配置数据库的值,并且说明了为提高效率而使用配置数据库属性的继承性。MyComputer 是运行 IIS 的计算机名称的占位符。

+展开
-VBScript

 Dim WebServerObj 
  Dim VDirObj 


  '打开第一虚拟 Web 服务器根的对象。 
  Set WebServerObj = GetObject("IIS://MyComputer/W3SVC/1/Root"
 
  '通过使用 Put 方法,
  '拒绝所有目录和文件
  '对服务器的写访问权限(已进行特定设置的除外)。
  WebServerObj.Put "AccessWrite", False 
 
  '将更改后的值保存到配置数据库中。 
  WebServerObj.SetInfo 
 
  '获取 Web 服务器根的附属目录。
  Set VDirObj = GetObject("IIS://MyComputer/W3SVC/1/Root/Vdir1/Dir1a"
 
  '通过使用等价于 Put 方法的 dot 方法,
  '覆盖写访问权限的继承值。 
  VDirObj.AccessWrite = True 
 
  '将更改后的值保存到配置数据库中。 
  VDirObj.SetInfo



  以下设置IIS所有站点应用程序池为默认应用程序池.

+展开
-VBScript
On Error Resume Next
Err.Clear
Dim w3svc,WebServer
Set w3svc = GetObject("IIS://localhost/W3SVC")

For Each WebServer In w3svc
        If WebServer.Class = "IIsWebServer" Then
        'Wscript.Echo WebServer.Name 
              Set ServerRoot = GetObject("IIS://localhost/W3SVC/" & WebServer.Name & "/ROOT")
        ServerRoot.Put "AppPoolId""DefaultAppPool"
        ServerRoot.SetInfo
    End If
Next

WScript.Echo "OK"



其它属性可以类似设置

来源:http://517sou.net/blogview.asp?logID=953

加支付宝好友偷能量挖...


评论(0)网络
阅读(123)喜欢(0)Asp/VBScript