我正在使用Chef的Windows食谱来配置一些Windows服务器。这是食谱:
# Windows SDK for Windows 7 and .NET 4 - .NET Tools v4
windows_package "Windows SDK for Windows 7 and .NET 4 - .NET Tools v4" do
source "\\\\MyServer\\MyDrive\\chef\\WinSDKNetFx40Tools_amd64\\WinSDK_nfx40tools_amd64.msi"
installer_type :msi
action :install
end
问题是我在尝试访问该UNC路径时遇到了权限错误。是否可以为windows_package
提供用户名/密码,以便我可以告诉谁可以访问该共享?我试图通过凭据管理器存储凭据,但这不起作用。
答案 0 :(得分:0)
Windows不允许将凭据直接包含在UNC路径中。因此,在通过UNC路径访问文件时,似乎没有Chef支持进行身份验证。
Chef的mount
资源支持挂载远程路径。它允许在Windows上传递用户名和密码。因此,您可以在windows_package
调用之前安装UNC路径,然后引用已安装的驱动器路径而不是UNC路径。
未经测试的例子:
mount "Z:" do
action :mount
device "\\\\MyServer\\MyDrive\\chef\\WinSDKNetFx40Tools_amd64\\"
username "whoever"
password "whatever"
end
windows_package "Windows SDK for Windows 7 and .NET 4 - .NET Tools v4" do
source "Z:\\WinSDK_nfx40tools_amd64.msi"
installer_type :msi
action :install
end