2010-03-03 108 views
0

我有一個生產網站,一旦建立在TFS中,使用xcopy重新部署和更新。整個網站(不包括根目錄)被刪除,然後複製新網站。這很好。如何在網站部署期間保留文件夾權限?

我們使用第三方圖表包,在運行時創建圖像,然後呈現鏈接。爲了做到這一點,它需要向可瀏覽文件夾寫入權限。

不幸的是,每次我們更新網站時,IIS_USRS的寫入權限都會丟失。有什麼辦法可以保留這個嗎?

+0

@Filip - 你想要做的最後一件事是給整個網站的網站帳號寫入權限 - 巨大的安全風險。 – 2010-03-03 08:12:24

+0

我沒有告訴他在整個網站上這樣做。但僅僅是爲了爭辯,爲什麼它會是一個巨大的安全風險? – 2010-03-03 09:16:08

回答

0

我想這取決於服務器運行的是什麼操作系統,無論您是構建在同一臺服務器上,你要部署到,或遠程之一。

做最簡單的事情是把你的xcopy命令到一個批處理文件,包括類似的XCOPY後執行以下操作:

cacls c:\[PathToWebsite]\[ChartImagesFolder] /E /G [AccountSiteRunsUnder]:C 

或者更高達日期選項(我沒有用這一點,所以我的參數可能會關閉):

icacls c:\[PathToWebsite]\[ChartImagesFolder] /grant [AccountSiteRunsUnder]:M 

基本上,無論是那些應該給該站點已修改(改變)指定的文件夾權限下運行的用戶帳戶。這應該是對該文件夾的任何現有權限的補充,還有修飾符或開關來替換現有權限。

如果您正在部署到遠程服務器,那麼您需要一些機制來在那裏運行命令,我們發現PSExec工作得很好(來自SysInternals的PS工具的一部分)。