gpt4 book ai didi

c# - 以不同用户身份运行外部二进制文件

转载 作者:太空宇宙 更新时间:2023-11-03 13:29:38 25 4
gpt4 key购买 nike

我正在测试一个小型实用程序。它的行为会有所不同,具体取决于它是否以管理权限运行。因此,我的测试框架需要在具有和不具有管理员权限的情况下调用该程序,以检查其行为是否适当。

测试框架是用 C# 编写的。我们的 CI 服务器会在每天午夜运行测试,所以弹出访问确认或类似信息是不好的;不会有人在那里按下按钮或输入凭据。如果可能,我希望避免存储管理员密码。

我从哪里开始呢?看起来 ProcessStartInfo 可以接受用户名、域和密码——但这需要将管理员密码编译到测试框架中。 (就像 that 将在不止一台 PC 上工作!)我也看到了一些关于 WindowsIdentity 和模拟的答案 - 但这似乎是为了改变用户 ID 当前进程,而不是我尝试调用的外部进程。

最佳答案

这个怎么样:

  • 您的测试框架需要通过命令行参数获得管理员权限的用户名/密码
  • 您的 CI 服务器使用参数调用它 - 至少您必须在那里存储密码。任何非交互式解决方案都需要在某处存储密码
  • 然后您的测试框架将使用 ProcessStartInfo 生成应用程序。

至少密码不再存储在代码中,这使得它更好地管理并且不会泄露到管理员的范围之外;)

BR 弗洛里安

关于c# - 以不同用户身份运行外部二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21111789/

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