我如何坚持连接到所有用户的Microsoft Azure文件?

我已经在azure创build了文件共享 ,并将其映射到名为VM_01的虚拟机

我已经使用CmdKey命令来保存凭据。

C:\>cmdkey /add:<yourstorageaccountname>.file.core.windows.net /user:<yourstorageaccountname> /pass:<YourStorageAccountKeyWhichEndsIn==> 

当我login到虚拟机时,我可以看到共享驱动器,但是当其他pipe理员login到同一台机器时,他们看不到并访问共享驱动器!

在互联网上花费时间之后,我发现运行“CmdKey”的用户可以使用CmdKey持久化的凭据。 https://blogs.msdn.microsoft.com/windowsazurestorage/2014/05/26/persisting-connections-to-microsoft-azure-files/

所以build议的解决scheme是使用runas命令,然后使用CmdKey命令如下

  runas /user:<username> cmd.exe // This will open the command window 

但是 ,我有100个用户! 我必须用不同的用户名运行100次bove命令:(我们有其他解决scheme吗?

从MSDN中提取,但我没有得到什么意思!

如果您在虚拟机上创build新的本地用户,并将该用户添加到pipe理员组,则可以在提升和非提升的环境中为该用户运行命令。 连接不在升级和非升级的上下文之间共享,因此您可能希望通过执行“net use”在每个上下文中单独连接。 但是,持久化凭据是共享的,所以您只需在其中一个上下文中运行“CmdKey”。

显而易见的方法是运行login脚本(GPO或本地策略)映射驱动器。 显然这样做的缺点是你的存储凭证将以纯文本的forms存储在login脚本中,你可以用PowerShell或类似的方式进行一些encryption,但是这仍然不能阻止某人离开login脚本并在其他地方使用它。 我怀疑可能是你为什么使用cmdkey。 据我所知,没有办法通过cmdkey添加凭证,而没有将凭据存储在某个文件中,然后由脚本使用。

这就是为什么我发现Azure文件比第一次出现有用的原因之一。

解决了!

我写了一个batch file ,并将其添加到Windows 启动文件夹。

C:\ ProgramData \ Microsoft \ Windows \ Start Menu \ Programs \ StartUp

batch file内容

  @echo off net use * /delete /yes cmdkey /add:<yourstorageaccountname>.file.core.windows.net /user:<yourstorageaccountname> /pass:<YourStorageAccountKey> net use X: \\saspr.file.core.windows.net\myfilesharename 

现在任何login的人都可以看到我的映射驱动器!

但是正如Sam解释的那样,请考虑一下!