2014-04-30 10 views
0

早安朋友之後直接編輯,(PowerShell中)如何給一個ZIP權限允許用戶從Azure中的Blob下載

我在PowerShell中寫了一個腳本來取代我們目前的手工工藝來部署我們的應用程序到VS中的生成過程中的ZIP文件夾中的Azure Blob存儲。我已經完成了,但是我遇到了這個問題:

當我上傳到Azure的ZIP由任何人下載時,無需首先解壓文件就無法操作ZIP。這是當前進程能夠完成的事情,我不知道(當前進程是用C#編寫的,並且是通過GUI完成的)。它需要通過ZIP進行編輯,因爲當前的Updater被設置爲先操作ZIP而不提取。

所以最初的問題是:如何在ZIP壓縮文件中設置權限,該壓縮文件將遵循Azure Blob存儲,然後在客戶機上下載時允許其內容被操縱(此時錯誤本身是不能提取的,它不能刪除子文件夾中的文件)?

目前,以ZIP我的文件夾了,我用這個過程:

$src = "$TEMPFOL\$testBuildDrop" 
$dst = "$TEMPFOL\LobbyGuard.zip" 
[Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem") 
[System.IO.Compression.ZipFile]::CreateFromDirectory($src, $dst) 

,然後推動其與成團塊:

set-azurestorageblobcontent -Container test -blob "LobbyGuard.zip" -file "$TEMPFOL\LobbyGuard.zip" -context $storageCreds -force 

我試圖之前對文件夾設置權限使用上傳

$getTEMPFOLACL = Get-ACL $TEMPFOL 
$accessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("Everyone", "FullControl", "Allow") 
$getTEMPFOLACL.SetAccessRule($accessRule) 

它對當前本地文件起作用,但一旦下載,文件的權限設置爲 所有者:BUILTIN \ Adminstrators訪問:NT AUTHORITY \ SYSTEM允許完全控制

與當前進程下載的文件具有完全相同的權限。我不明白我在這裏錯過什麼來完成這項工作。

如果需要,我可以提供DL鏈接到我們的blob,以顯示當前手動過程文件夾,可以在ZIP與我的腳本ZIP中操作,但不能。

回答

0

嘗試下載後解封的文件,即

Unblock-File C:\path\yourDownloaded.zip 
+0

命令經歷成功,但似乎並沒有改變任何方面我修改特定內容的能力。我已經做了更多的挖掘,並且我即將根據當前的調查結果編輯我的帖子。 – PhilWolf91

相關問題