gpt4 book ai didi

iis - 在 IIS 6 中的应用程序级别设置 NTAuthenticationProviders

转载 作者:行者123 更新时间:2023-12-02 08:28:00 25 4
gpt4 key购买 nike

我在 IIS 中有以下结构。

Internet Information Services  
(local computer)
Web Sites
Default Web Site
MyApplication

MyApplication 是 IIS 中的应用程序。

默认网站上未设置集成 Windows 身份验证。不过,我想在 MyApplication 上设置集成 Windows 身份验证。 (它是一个内联网应用程序)。

这可以通过 GUI 完成:右键单击默认网站并选择属性。选择目录安全选项卡,然后单击匿名访问和身份验证控制上的编辑

我想将其包含在安装脚本中。我有其他设置命令,使用 adsutil.vbs,但我正在努力设置集成 Windows 身份验证。

运行:

cscript //nologo c:\Inetpub\AdminScripts\adsutil.vbs GET /W3SVC/1/NTAuthenticationProviders

返回

NTAuthenticationProviders       : (STRING) "NTLM"

但是,我希望能够运行

cscript //nologo c:\Inetpub\AdminScripts\adsutil.vbs GET /W3SVC/1/ROOT/MyApplication/NTAuthenticationProviders

但是这会返回

Error Trying To GET the property: (Get Method Failed)
NTAuthenticationProviders (This property is probably not allowed at this node)

是否无法在应用程序级别设置 NTAuthenticationProviders 配置数据库属性?

最佳答案

控制 IIS 目录安全 -> 身份验证方法对话框上的身份验证访问属性值的元数据库属性实际上称为 AuthFlags

该值是一个标志,记录在此处:

AuthFlags Metabase Property (IIS 6.0) (TechNet)

要将此值设置为集成 Windows 身份验证 (AuthNTLM),请使用以下命令(请小心,因为该命令在默认网站 IISNumber:1 上运行)-

adsutil.vbs SET /W3SVC/1/ROOT/MyApplication/AuthFlags 4

如果您想同时设置 NTLM 和基本身份验证,那么您可以对这些值进行 bool 或运算,例如MD_AUTH_BASIC | MD_AUTH_BASIC | MD_AUTH_BASIC | MD_AUTH_BASIC AuthNTLM。这将产生整数结果 6:

:: Set both NTLM and Basic authentication
adsutil.vbs SET /W3SVC/1/ROOT/MyApplication/AuthFlags 6

如果您检查元数据库文件 (C:\WINDOWS\system32\inetsrv\MetaBase.xml) 并搜索:

Location="/LM/W3SVC/1/ROOT/MyApplication"

...您将看到控制此设置的属性(如上设置为 6 后):

AuthFlags="AuthBasic | AuthNTLM"

此值在元数据库中更新可能需要一些时间,因为此类更改不会立即刷新到文件中(尽管 IISRESET 会导致其立即更新)。

关于iis - 在 IIS 6 中的应用程序级别设置 NTAuthenticationProviders,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1571609/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com