iT邦幫忙

1

牢騷 IIS 資料夾權限之痛

我那豬隊友 最近新增加的好事 就是花了一個禮拜 跟我不停跳針說:『CR主機的報表資料夾,必須要設定EveryOne 完全控制權限。』
(備註:該資料夾因為要開發報表樣板,是有開放SMB檔案共享的。)
(兩項設定絞在一起,我想應該就變成北港香爐人人X了吧!) 亨亨亨...(抽槒

正確的設定方式(應該吧):
觀察IIS的應用程式即區目前使用那個身分在執行程式,整個設定該帳號為可讀取可執行即可。
然後針對需要寫入的資料夾再單獨建立寫入的權限。
如果是.COM控件的情況,也可以在.COM的管理中心找到執行身分,並依身份正確設定。

豬隊友連自己把自己的開發環境都建立不好的情況下,
跑去跟老闆(其實也只是小主管 不要誤會 我就愛這樣叫他)一直說要這樣做才對,
結果老闆不曉得是不是被牠十幾年經驗又震懾住了,
竟然叫我開CR管理帳號給牠。 好啊,遵命!

不到三天CR就陣亡了!
(那天我請假,就是九月補班日,我想特休就是這時候拿來用的)
整個上午CR主機都變得無法列印!
後來鼎新有進來修好(有沒有 有問題 無法自行解決 只能招喚鼎新客服進來處理 十幾年經驗我看都是在練蕭話)

我禮拜五下班前系統都好好的,開發用資料夾只有兩個(正式區、測試區),禮拜一來SMB多開放了一個安裝檔資料夾(下面有包含 測試區、正式區)!
經過調查,我發現是一個眉角,老實說我也是今天才知道,使用檔案共享那顆按鈕時,系統好像會自動把安全性設定中的Authenticated User 給砍掉,導致了CR整個資料夾都變得無法存取。

好了,那資料夾是誰開的 不是我 就是你 還有誰? (<-- 這句話真是太有創意了,有人知道出處嗎?)
(鼎新開發SOP我熟 根本不會開這個安裝檔資料夾)

而且,要偷檔案,你就不能直接先找到自己的IP 自己的電腦先開好共享資料 直接丟回自己電腦嗎? 為何要開伺服器共用資料夾等著給別人抓啊... 又害伺服器下線啊... 我的媽呀!!
對了~你不會IPCONFIG /ALL啊! 十幾年經驗都學了什麼 我好好奇啊!都學成黑鍋大師吧

很不幸沒有開啟檔案稽核,所以沒抓到牠! 不過我倒是發現豬隊友若不是有通靈的能力,那牠就是兇手!
IIS 08:58第一次發出錯誤500代碼 08:52還是200代碼 牠老兄08:56就登進去了(遠端桌面紀錄) 酷喔!

還有 Authenticated User 不見了,就導致系統下線,就表示你找來"沒問題"的鼎新技術顧問,
看來也沒有依照IIS 執行帳號來設定資料夾權限嘛!

到這邊了解事發真相了 欸欸欸 這位豬隊友還有臉面在那邊 含沙射影 說:
『公司應該讓有伺服器管理能力的人來掌握帳號就好了...』 我是牠 我真的會羞死

三天後,公司就把兩人的帳號都請MIS移除掉了。 我OS:『泥踏馬沒有伺服器管理能力的只有你吧。』

(拒絕存取指定的路徑)

整件事情的起因是一個BUG通報,說是p_cron已經多天沒有正常寄出報表了(這是使用者對牠的通報 我不知情)。
牠只有直接問我:『你是不是有改掉系統的郵件設定?』 答:『沒有』 『你幹嘛亂改郵件的設定啦』 答:『我沒有(語氣堅定貌)』 心理OS:『我踏馬的哪像你有那麼多美國時間?』 我還直接教牠怎麼確認帳號目前是否可用? 帳密直接在列印報表時就會顯示在XSHELL畫面中,用那組帳密直接登入WEBMAIL 就可以寄一封信出來確定目前帳號是否可用!(都驗證通過了) 牠:『可是現在使用者跟我反映報表收不到啊,你該不會又動了p_cron程式吧』 答:『沒有』 『一定是你動了什麼,為什麼現在不能用了? 你給我現在把信箱修好』 心理OS:『啊我剛剛不是已經驗證給你看 信箱沒問題嗎? 你是瞎了嗎?』 嘴上我是回答:『有使用者給的錯誤畫面、症狀說明嗎? 我不要你直接跟我講怎麼做,請你把原信寄給我,我來處理就好...』 『你就把我請你協助的事情處理好就好...』

結果,討論的過程中我無意發現以下字樣:(Windows 無法存取指定的裝置、 路徑或檔案。您可能沒有適當的權限來存取項目。)
我當場臉就變槓槓臉了, 嗯 ,訊息這麼明顯了,你跟我說是MAIL的問題... 我只淡淡說了一句 :『似乎是伺服器檔案權限不足...』 我就下班了。

隔天早上,部門群組上就出現了一則訊息:『CR主機安全性權限應該這樣設才對。』
圖片上就是一個 EVERYONE 完全控制
下面又寫:『之前管理CR主機的都沒有設對』(也就是指我)。

然後有趣的是,牠當時沒有管理權限,也不是我設的,所以這是服務工程師進來設定的? 可怕喔~~

BUT,這台機器的狀態,我自己給自己三令五申『不要動』,因為這台機器是那個豬隊友力保有經驗"沒問題"的
鼎新技術顧問所設定,我當時的想法是不要動,這樣有問題時才會被凸顯出來...
所以這根本就是你那位"沒問題"的技術顧問沒設到...

   這位"沒問題"顧問,還把正式區 跟 測試區 的環境變數檔 (tiptop_env) 共用,
   導致我連到外部參數全亂了套。 跟豬隊友說我要改回來  
   還在那邊跟我說『不要質疑專業人士』
   
   對對對  你的專業人士  會用Everyone 來設定 一個 SMB 共享資料夾  完全控制。 挺神的!
   
   回到前面,無法寄信的問題,我調閱了LOG 權限問題,正是從八月開始的。 一直強調要重灌CR的也是你...
   
   附帶一提,這次重灌CR我認為有效的治療手段:
   1. 要每晚00:00刪除CR主機上的暫存檔
   2. 要每晚00:00刪除dsReport中的報表資料暫存表
   3. 每月應檢查各資料庫剩餘空間
   
   如果遇到有經驗的客服工程師  或許可以不用重灌的
   不過,重灌之後仍無法避免大型報表RENDER時的排隊狀況,
   但是,因為有每晚清空資料 讓存取速度變快,或許是造成報表不會再跑不出來的主因。
   要想實驗就要把前兩項設定移除,我想CR就會回歸到不穩定的狀態。
   
  當然我無法坐視服務工程師用 Everyone 來設定 一個 SMB 共享資料夾  完全控制,
  所以我主動跳出來將安全性設對,接著就有這篇文章了。
   
  --- 牢騷夾雜技術  ---
   

1 則留言

0
窮嘶發發發
iT邦高手 1 級 ‧ 2017-11-17 15:33:47

印象中 本機的 EVERYONE 跟 AD USER 不相等
如果有上AD,那麼 EVERYONE 只是本機群組
沒給權限的,連登入都無法登入的,真的是報怨文

aptx1596 iT邦新手 4 級 ‧ 2017-11-22 20:06:08 檢舉

剛剛測試過了 我設定了某台沒有上線(待關機)的網域中的SERVER的某個新增資料夾共享,並給予EVERYONE權限, 我的分身帳號(權限比蟑螂還要小)可以讀取、不在網域內的普通使用者也能使用,有點可怕,真的是北港香爐你要相信我...

#會不會是新的SERVER版本有修正? 我是WIN2008R2

首先你要搞清楚,分享權限 跟 NTFS安全敘述元的區別,
假如 分享權限你是給 EVERYONE 讀取,基本上是所有人都能開來看,
但是如果你又在 NTFS權限只給 某個群組 讀取,那就是只有那個群組才能開來看,非設定群組是無法開啟的
因為 NTFS 權限大於 分享權限,這個原則從 NT4 就是這麼定義,建議樓主先搞清楚權限的管理

我要留言

立即登入留言