如何在运行时获取服务器域名?
How to get server domain name at runtime?
我有一个 WIX 文件 (*.wxs),我们在其中使用 %USERDOMAIN 环境变量来检索登录用户的域。例如,它为以 DOMAINA\user1 登录的用户提供 DOMAINA。
这个提取的域名然后用于为用于 ACL Web 资源的其他安全组添加前缀。
到现在为止一切正常。但是现在,由于安全限制,登录用户与服务器和应用程序不在同一个域运行。用户从管理域登录,比如 DOMAINM。现在,%USERDOMAIN 没有帮助,因为资源使用不正确的 SG 进行了 ACL,例如 DOMAINM\SG1 等,这些不存在。
我有哪些选项可以检索服务器的域,以便它可以在 WIX 文件中用于生成用于部署的 MSI?
感谢您的帮助!
有一个注册表值提供此功能:
<Property Id="TCPIPDOMAIN" Secure="yes">
<RegistrySearch Id="tcpipDomain" Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" Name="Domain" Win64="no" Type="raw"/>
</Property>
还有一个非常重要的场景,%USERDOMAIN 和 %USERDNSDOMAIN 不起作用。通过以 SYSTEM 身份运行的工具(例如 SCCM)推出 MSI。 SYSTEM 配置文件不会初始化这些环境变量。这就是我使用注册表搜索技术的原因。
我有一个 WIX 文件 (*.wxs),我们在其中使用 %USERDOMAIN 环境变量来检索登录用户的域。例如,它为以 DOMAINA\user1 登录的用户提供 DOMAINA。 这个提取的域名然后用于为用于 ACL Web 资源的其他安全组添加前缀。
到现在为止一切正常。但是现在,由于安全限制,登录用户与服务器和应用程序不在同一个域运行。用户从管理域登录,比如 DOMAINM。现在,%USERDOMAIN 没有帮助,因为资源使用不正确的 SG 进行了 ACL,例如 DOMAINM\SG1 等,这些不存在。
我有哪些选项可以检索服务器的域,以便它可以在 WIX 文件中用于生成用于部署的 MSI?
感谢您的帮助!
有一个注册表值提供此功能:
<Property Id="TCPIPDOMAIN" Secure="yes">
<RegistrySearch Id="tcpipDomain" Root="HKLM" Key="SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" Name="Domain" Win64="no" Type="raw"/>
</Property>
还有一个非常重要的场景,%USERDOMAIN 和 %USERDNSDOMAIN 不起作用。通过以 SYSTEM 身份运行的工具(例如 SCCM)推出 MSI。 SYSTEM 配置文件不会初始化这些环境变量。这就是我使用注册表搜索技术的原因。