我在azure中创建了文件共享并将其映射到名为VM_01的虚拟机。
我已经使用CmdKey命令来保存凭据。
C:\>cmdkey /add:<yourstorageaccountname>.file.core.windows.net
/user:<yourstorageaccountname>
/pass:<YourStorageAccountKeyWhichEndsIn==>
当我登录到虚拟机时,我能够看到共享驱动器,但是当其他管理员登录到同一台机器时,他们看不到和访问共享驱动器!
在互联网上花费时间后,我发现CmdKey 持久化的凭据可供运行“CmdKey”的用户使用。 https://blogs.msdn.microsoft.com/windowsazurestorage/2014/05/26/persisting-connections-to-microsoft-azure-files/
所以建议的解决方案是使用runas命令,然后使用CmdKey命令如下
runas /user:<username> cmd.exe // This will open the command window
但是,我有 100 个用户!!!我是否必须使用不同的用户名运行 bove 命令 100 次 :( 我们有其他解决方案吗?
从 MSDN 中提取,但我不明白这是什么意思!
如果您在 VM 上创建新的本地用户,并将该用户添加到管理员组,则您可以在提升和非提升上下文中为该用户运行命令。提升和非提升上下文之间不共享连接,因此您可能希望通过执行“net use”在每个上下文中单独连接。但是,持久化的凭据是共享的,因此您只需要在其中一个上下文中运行“CmdKey”。
显而易见的方法是运行登录脚本(GPO 或本地策略)来映射驱动器。显然,这样做的缺点是您的存储凭据将以纯文本形式存储在登录脚本中,您可以使用 PowerShell 或类似工具进行一些加密,但这仍然不能阻止有人带着登录脚本离开并在其他地方使用它。我怀疑这可能是您使用 cmdkey 的原因。据我所知,如果没有将凭据存储在某个文件中以供脚本使用,则无法通过 cmdkey 添加凭据。
这就是我发现 Azure 文件不如最初出现的有用的原因之一。
解决了!
我编写了一个批处理文件并将其添加到 Windows启动文件夹中。
批处理文件内容
现在任何登录的人都可以看到我映射的驱动器!
但正如山姆所解释的,请考虑缺点!