授予 Windows 服务文件访问权限

授予 Windows 服务文件访问权限

我正在尝试使用服务运行与 openssh 的连接。不幸的是,openssh 要求身份验证密钥只能由打算使用它的用户读取(如果有办法让它跳过该检查,我还没有找到)。这对于普通用户来说很有效,使用:

icacls .\private.key /inheritance:r
icacls .\private.key /grant:r "%username%":"(R)"

Windows 服务运行自己的半用户,我完全无法赋予该用户正确的文件权限。

编辑:如果有人对其他开源或免费使用的 ssh 程序或库有任何好主意,可以用来创建带有身份验证密钥的隧道,我愿意倾听。似乎其中很多都无法正确支持 Windows。

答案1

发布为答案,以便更容易找到(最初在评论中)。

Windows 服务运行的默认用户名就是“SYSTEM”。因此,使用命令行方法设置权限:

icacls .\private.key /inheritance:r
icacls .\private.key /grant:r "SYSTEM":"(R)"

相关内容