4

我正在试验服务器上的设置,它从 netsh http show urlacl 中提供了以下信息:

Reserved URL            : http://+:47001/wsman/
    User: NT SERVICE\WinRM
        Listen: Yes
        Delegate: No
    User: NT SERVICE\Wecsvc
        Listen: Yes
        Delegate: No
        SDDL: D:(A;;GX;;;(redacted)((A;;GX;;;(redacted))

很明显,两个用户帐户注册了同一个 URL,对吧?但是自从删除了那个保留(我用 NT AUTHORITY\NETWORK SERVICE 替换了它,它在某处被推荐但不再需要,因为我修复了真正的原因),我无法将它恢复为这些设置,因为 netsh 似乎只允许您为每个预订创建一个用户。

有什么特殊的语法吗?另一种设置这个东西的方法?我读过“作为一个小组做”,但这看起来不像最初是一个小组,对吧?其他所有服务器都是这样设置的……所以一定有什么办法。我错过了什么?

谢谢

4

3 回答 3

4

对不起,我想通了。

解决方案是您可以使用 SDDL 指定多个组(我不知道它是什么,但它是某些权限设置加上 SID 的简写)。

所以我做了一个netsh http add urlacl url=http://+:47001/wsman/ sddl="D:(A;;GX;;;[redacted])(A;;GX;;;[redacted])"

它最终将设置恢复到以前的状态。我应该注意,您必须完全正确地获取上述语法才能接受它。如果需要,还可以使用一些 PowerShell 命令将用户帐户(如上面的帐户)转换为 SID。

于 2012-12-24T16:47:14.550 回答
3

因为它可能对其他人有帮助,所以我只想在上面的 netsh 命令中添加它,您只需将 [redacted] 替换为您要添加的用户的 SID。所以对于一个用户:

netsh http add urlacl url=http://+:47001/wsman/ sddl="D:(A;;GX;;;<SID>)"

对于两个用户...

netsh http add urlacl url=http://+:47001/wsman/ sddl="D:(A;;GX;;;<SID1>)(A;;GX;;;<SID2>)" 

ETC...

这些命令将授予对 SID 指定的用户帐户的 GenericExecute 访问权限。

于 2014-07-01T07:49:01.560 回答
1

要使用命令添加/删除 URL,首先以管理员身份运行 cmd

添加 URL:netsh http add urlacl url= http://192.168.1.143:9608/ user=everyone 用你的本地 IP 地址替换 190.168.1.143 并用你的本地端口替换 9608。

要删除已经存在的 URL:netsh http delete urlacl url= http://192.168.1.1.143:9608

最后一步是配置 Windows 防火墙以允许端口上的外部流量: netsh advfirewall firewall add rule name="IISExpressXamarin" dir=in protocol=tcp localport=9608 profile=private remoteip=localsubnet action=allow

于 2016-03-18T06:02:44.083 回答