c#向Windows用户授予“作为服务登录”权限
如何为用户授予服务的LogOnAsService权限?
我需要手动执行此操作,在services.msc应用程序中我可以转到服务,更改密码(设置与之前相同),单击“应用”并收到消息:
帐户。 postgres已被授予登录身份服务权限。
我如何从代码中执行此操作,因为否则每次运行应用程序时我都必须手动授予此权限,这不可能
@Steve
static void Main() { // irrelevant stuff GrantLogonAsServiceRight("postgres"); // irrelevant stuff } private static void GrantLogonAsServiceRight(string username) { using (LsaWrapper lsa = new LsaWrapper()) { lsa.AddPrivileges(username, "SeServiceLogonRight"); } }
和这个家伙威利的LSA lib。
请参阅在C#中授予用户权限 。
您必须通过P / Invoke调用LSA API,并且该URL引用了为您执行此操作的包装类 。 所以你最终得到的代码很简单:
上述就是C#学习教程:c#向Windows用户授予“作为服务登录”权限分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
private static void GrantLogonAsServiceRight(string username) { using (LsaWrapper lsa = new LsaWrapper()) { lsa.AddPrivileges(username, "SeServiceLogonRight"); } }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/960186.html