2008-08-26 76 views
1

好的,所以我在我的私人網絡上運行一個小型測試網絡服務器。我有一臺運行Windows 2000 Pro的機器,我試圖通過IIS運行一個ASP.NET應用程序。(IIS/Win2000Pro)授予IIS用戶的註冊表讀取權限?

我寫了這樣的話,網頁將使用註冊表來存儲某些設置(連接字符串,其他Web服務的潛在易失性位置,存儲某些信息的本地文件系統中的路徑等)。當然,它在使用VStudio.NET 2005進行測試時工作良好,因爲運行該應用程序的用戶具有較高的權限。但是,在IIS上運行它我得到一個「訪問註冊表項'HKEY_LOCAL_MACHINE \ Software'被拒絕。」,這表明IIS用戶沒有對該註冊表部分的讀取權限(我只通過網站讀取本身,從不寫)。

我很喜歡「好吧,很簡單,我只需通過註冊表將該用戶權限授予註冊表的那部分。」問題是,我沒有在regedit的任何地方看到一個選項來改變安全設置...。這讓我想到了......我不認爲我之前實際上必須改變註冊表配置單元/密鑰的安全設置,並且我不認爲我知道如何去做。

以後半小時搜索網頁時,我還沒有找到關於此主題的任何可用信息。我想知道的是...如何將安全權限更改爲註冊表的某些部分?我很難過,似乎我在Google上找到答案的能力讓我完全失敗......因爲我剛剛在這裏註冊,所以我想我會看看這裏有沒有人知道。 =)

回答

1

如果您在Windows 2000註冊表編輯器有touble你可以嘗試以下方法:

  • 將Windows XP REGEDT32.EXE到Windows 2000機器
  • 使用Windows XP計算機,連接到在Windows 2000遠程註冊表:。文件>連接網絡註冊表
0

您可以在要爲其授予用戶權限讀/寫訪問權限的文件夾級別設置權限。

在你的情況下,右鍵單擊「軟件」文件夾並選擇「權限」。

你可能會從那裏知道其餘的。

編輯:如果您仍然遇到問題,您可能需要修改您的web.config文件並使用模擬讓您的Web應用程序作爲特定用戶帳戶運行。然後你可以對控件進行更嚴格的統治。

0

RegEdt32.exe將允許您設置對註冊表項的權限。

只需右鍵單擊一個密鑰(文件夾)並單擊權限,然後就可以像對文件系統文件夾一樣編輯權限。

0

我這樣做,假設安全設置可用。當我右鍵單擊密鑰時,我沒有看到任何「安全」選項。 =(我三重檢查,以確保...我只是在我的XP機器上嘗試過它,它確實有「權限」部分......但Windows 2000機器沒有。(這怎麼是爲了奇怪?)

在我搜索,我發現:

http://www.experts-exchange.com/Programming/Languages/.NET/ASP.NET/Q_21563044.html

其中指出,註冊表編輯器適用於Windows 2000不具備安全/權限設置...但它沒有提出解決問題的辦法。 (誰問的問題是使用Windows XP,所以他沒事......但在我的情況下,它是2000年)

有沒有什麼辦法讓它發生特別是在2000年?

編輯:啊......如果情況變得更糟,我想我可以做模擬,如下所述......但如果我無法在2000年爲註冊表設置安全設置,該用戶具有管理權限(我假設?)實際上獲得這些權利,這可悲地破壞了目的。 =(

0

哦,讓我試試,我不知道,你可以遠程連接到另一個註冊表

(編輯:我錯了,它確實工作...它只需要幾分鐘來響應我的請求遠程更改權限)

遠程連接的想法做到了!你很好!非常感謝你的幫助!我從來沒有意識到你可以遠程連接RegEdit ...你每天都會學到新的東西,他們說! =)再次感謝您的協助! =)

在另一個說明雖然,關於將XP版本的RegEdit複製到Windows 2000 ...是否安全?我想他們會以不相容的方式編碼......但我可以假設太多。 =)

0

只需使用RegEdt32.exe而不是Regedit.exe。 轉到所需的密鑰或文件夾,然後打開安全菜單並點擊'權限'。