想象執行兩個主要功能的網絡應用程序:在node.js中,我將如何遵循最低特權原則?
- 從需要更高特權從
- 讀取從需要下權限讀取文件供應的數據的文件供應數據從
我的假設:要允許從這兩個文件讀取,我會ne編輯使用可以讀取這兩個文件的帳戶運行節點。
如果節點在可以訪問這兩個文件的帳戶下運行,那麼由於Web應用程序代碼中存在安全漏洞,無法讀取任何需要更高權限的文件的用戶可能會讀取這些文件。這將導致在我虛構的web應用程序世界中造成災難性後果。
理想節點進程可以運行使用一組最小的權利,然後暫時訪問系統資源之前升級的權利。
問題: CAN節點暫時提升權限?或者,還有更好的方法?
轉發請求之前如果沒有,我正在考慮運行兩個不同的服務器(一個具有更高的權限,並具有較低),然後把它們都落後驗證代理服務器/授權。
謝謝。
我認爲你更關心的是安全缺陷。如果你的代碼沒有安全漏洞,這不會成爲問題。 – Raynos 2011-05-15 18:17:39
啊,是的,現在如果我能證明我的軟件沒有安全缺陷。 ;)http://c2.com/cgi/wiki?ProofOfCorrectness – 2011-05-15 19:48:46
如果您需要驗證負載平衡器的兩個不同高架節點進程的負載均衡器,則無缺陷;) – Raynos 2011-05-15 20:33:45