Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 没有网络访问权限的虚拟服务帐户,如NT AUTHORITY\LocalService_Windows_Windows Services_Windows Security_Least Privilege - Fatal编程技术网

Windows 没有网络访问权限的虚拟服务帐户,如NT AUTHORITY\LocalService

Windows 没有网络访问权限的虚拟服务帐户,如NT AUTHORITY\LocalService,windows,windows-services,windows-security,least-privilege,Windows,Windows Services,Windows Security,Least Privilege,背景:我正在编写一个服务,希望尽可能少地授予它特权 虚拟帐户(有时为“虚拟服务帐户”)是Windows 7/2008R2的新增功能,它是自动管理的帐户,用于需要最低权限但在域环境中使用计算机标识访问网络的服务 我的服务不需要网络访问,所以我使用LocalService,但我不喜欢这样一个事实,即如果我授予对文件/etc的访问权,我将授予对作为该帐户运行的所有服务的访问权 是否有我可以使用的最低特权帐户?您不需要更改服务运行所使用的帐户本地服务可以 相反,将服务配置为具有,即指定服务SID\u类型

背景:我正在编写一个服务,希望尽可能少地授予它特权

虚拟帐户(有时为“虚拟服务帐户”)是Windows 7/2008R2的新增功能,它是自动管理的帐户,用于需要最低权限但在域环境中使用计算机标识访问网络的服务

我的服务不需要网络访问,所以我使用LocalService,但我不喜欢这样一个事实,即如果我授予对文件/etc的访问权,我将授予对作为该帐户运行的所有服务的访问权


是否有我可以使用的最低特权帐户?

您不需要更改服务运行所使用的帐户<代码>本地服务可以

相反,将服务配置为具有,即指定
服务SID\u类型\u非限制的
服务SID\u类型\u限制的
。您可以使用函数和
服务\u配置\u服务\u SID\u信息
选项执行此操作

然后,您可以使用服务SID(其名称为
NT service\myservice
)而不是
LocalService
)授予对文件和其他受保护资源的访问权限。这将仅授予对您的服务的访问权限。(当然,还有共享同一进程的任何其他服务,但大多数第三方服务都在自己的进程中运行。)


要获得最低权限,请使用
服务\u SID\u TYPE\u RESTRICTED
。这意味着服务只能访问受保护的对象,这些对象明确授予对
所有人
、服务SID、登录会话SID或
写限制
的访问权限。您还应该使用
服务\u配置\u必需的\u特权\u信息
选项来减少授予服务的特权;许多服务根本不需要任何特权。(在这种情况下,您可能会发现您需要指定
SE\u CHANGE\u NOTIFY\u NAME
而不是一个空列表,尽管我可能记错了。)

是否可以使用
sc
实用程序实现这一点?目前,我正在使用一个简单/可理解的3行批处理脚本进行安装,我不希望被P/调用
sc-qsidtype
设置SID类型,
sc-qprivs
设置所需的权限。