在没有域的情况下共享文件时,如何授予网络上特定用户访问权限?

在没有域的情况下共享文件时,如何授予网络上特定用户访问权限?

由于 Windows 10 不再具有家庭组功能,我无法与网络上的特定用户共享文件夹。比如说,我想授予所有人读取权限,并授予本地网络上的特定用户写入权限。

那么,如果没有家庭组或域,我该怎么做呢?

答案1

简而言之

在共享电脑上拥有一个专用帐户,并使用该帐户从其他电脑进行授权

先决条件

在共享电脑上创建一个帐户,并在所需文件夹的选项中授予该帐户所需的权限。

当然,您需要启用网络发现和共享。以下是打开右侧窗口以启用它们的命令。

control /name Microsoft.NetworkAndSharingCenter /page Advanced

还有电脑不必在同一个工作组中。


答案 1(永久解决方案)

在另一台电脑上,将创建帐户的凭据添加到凭据管理器。

cmdkey /add:<comp_name> /user:<username> /pass:<password>

要使凭证生效,您需要退出。
要立即使用凭证,请执行答案 2。


答案 2(无常解)

在另一台电脑上执行

net use \\<comp_name> <password> /user:<username>

它可能会说一些有关多个连接的事情:检查给定的共享未在资源管理器中打开;如果错误仍然存​​在,请重新启动(或者可能只是唱歌,然后执行命令)。

但请注意,此命令仅对当前会话有效。


就是这样。现在,您可以以指定用户的权限在系统范围内访问共享 PC 上的所有共享文件夹。


笔记

如果您对特定文件夹执行该命令,其操作与不指定文件夹时相同。

net use \\<comp_name>\<foldername> <password> /user:<username>

通过这种方式,您可以将文件夹安装到驱动器。

net use j: \\<comp_name>\<foldername> <password> /user:<username>

但出于某种原因,持久挂载不起作用。重新启动后,驱动器仍然存在,但它无法连接到共享文件夹,并给出有关多个连接(我提到的那个)的错误。

net use j: \\<comp_name>\<foldername> <password> /user:<username> /persistent:yes

解决此问题的方法:将凭证添加到凭证管理器,然后在net use不使用凭证的情况下进行调用。

cmdkey /add:<comp_name> /user:<username> /pass:<password>
net use j: \\<comp_name>\<foldername> /persistent:yes

这样,当您访问共享文件夹时,它会自动从凭据管理器中选择适当的帐户。请参阅答案 1。

此外,如果您没有安装该计算机上的任何文件夹,则net use \\<comp_name> <password> /user:<username>后续调用后命令不会失败。因此,如果您只需要在脚本中访问,则可以在该脚本中调用它。不过,正如我所提到的,如果给定的共享在资源管理器中打开,它将失败。

欲了解更多信息,请查看文档(但那里没什么用,没什么用)

相关内容