WACK检查在构建中

3
我有一个UWP应用程序正在开发中,并设置了CI。我想在构建步骤中包括Windows应用程序认证工具(WACK)来验证所有构建应用程序是否符合MS规则。CI是基于Visual Studio Online构建的。我的VSO构建配置附有最新软件的自定义构建代理。问题在于,WACK需要管理员权限才能运行,但是VSO要求运行BuildAgent的用户不应具有管理员权限。是否有任何方法可以在构建运行期间增加用户特权?是否有任何解决方法可以在没有管理员权限的情况下运行WACK?即使禁用了某些WACK测试,将WACK检查集成到CI仍然有意义。感谢任何帮助。

提醒:WACK工具包只能在启用.NET Native的RELASE构建上使用。如果您运行DEBUG配置构建,您将看到各种虚假警告。您可能还想为CI构建打开“启用.NET Native的静态分析”标志。 - MattWhilden
1个回答

4

管理员特权限制仅适用于VSO 托管的构建代理,没有任何方法可以在其上提升管理员特权。但是,一旦您部署自定义构建代理,您将拥有足够的权限来运行WACK测试。

注意:

如果您将构建代理作为服务运行,请使用具有管理员权限的帐户登录。

如果需要更改登录帐户,请不要从服务中心进行更改。而是从已提升的命令提示符中运行: C:\ Agent \ Agent \ VsoAgent.exe / ChangeWindowsServiceAccount

enter image description here


谢谢,这种方法可行!在我的系统中,我使用的是作为应用程序添加的客户端(而不是服务)。对于我来说,只需将代理作为管理员启动即可解决此问题 - 目前WACK运行正常。 - Valentine

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接