我正在尝试在IIS 6.0上安装的web应用程序的安装脚本中使用adsutil来设置访问控制。有一个命令的工作原理如下:
adsutil.vbs set w3svc/1/root/Authflags 4这是默认网站的命令,因为它的标识符是1。但是,新的web应用程序会被赋予一个生成的标识符。在我的示例中,我安装的应用程序的标识符为2082238887,因此我的命令应该如下所示
adsutil.vbs set w3svc/2082238887/root/Authflags 4然而,我现在只能从之前安装的应用程序中知道这个值。如何在全新安装期间获得此ID?我看到的每个adsutil示例都假设您使用的是默认网站,因此ID为1。
我需要我的安装脚本来安装应用程序,获取其标识符,然后使用它通过adsutil设置权限。
发布于 2009-12-10 00:12:46
此脚本允许您将站点名称作为参数提供,并遍历web站点,直到它与您提供的站点名称匹配。我包含了更新authflag的代码。这可以通过cscript.exe运行。
Dim Siteobj
Dim Site
Dim SiteName
Dim SiteId
Dim SiteLocation
SiteName=WScript.Arguments( 0 )
Set SiteObj = GetObject("IIS://localhost/W3SVC")
for each Site in Siteobj
if Site.keytype="IIsWebServer" Then
if Site.ServerComment = SiteName Then
SiteId=Site.Name
SiteLocation = "IIS://LocalHost/w3svc/" & SiteId
SiteLocation = SiteLocation & "/root"
Dim SiteObj1
Set SiteObj1 = GetObject(SiteLocation)
SiteObj1.authflags=4
SiteObj1.SetInfo
End if
End if
Nexthttps://stackoverflow.com/questions/1868108
复制相似问题