【问题标题】:sc.exe config changing credentials inside OnStart of Windows Servicesc.exe 配置在 Windows 服务的 OnStart 中更改凭据
【发布时间】:2013-01-10 18:05:45
【问题描述】:

我想从数据库中提取服务的凭据(更加动态)

在对服务调用 .Start() 之前,我正在使用 sc.exe 更改 OnStart 中的凭据。
sc.exe 更改有效,但我注意到它直到我再次重新启动后才生效。

即我注意到它是 SYSTEM 作为它运行的用户。一旦我再次重新启动,它就会显示我的域帐户。

是否有任何其他方法可以更改凭据以允许我在 OnStart 实际运行之前执行它?

谢谢, 大卫

【问题讨论】:

    标签: c# windows-services servicecontroller


    【解决方案1】:

    是否有任何其他方法可以更改凭据以允许我在 OnStart 实际运行之前执行它?

    没有。当OnStart 执行时,服务确实 实际运行,所以无论你做什么,都为时已晚。

    设置凭据以及启动类型、命令行、依赖项等其他内容应视为设置/安装/注册任务。

    您可能会想到一些(相当复杂的)引导机制,例如一个服务在更新其凭据之前启动另一个服务。不过,我真的会问自己这是否值得。

    从系统操作/管理的角度来看,“动态”改变其用户的服务似乎也很难预测。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多