2011-05-30 77 views
4

我們正在使用CNG加密一些敏感數據。作爲標準,我們實現了SQL集成安全性,而不是使用具有數據庫權限的SQL用戶。爲實現這一點,我們將應用程序池標識定義爲具有相應DB權限的相同Active Directory標識。密鑰無法在指定狀態下使用

現在,問題是當我的AppPool在本地系統下運行時,我可以從CNG密鑰庫中創建&檢索密鑰,但是,當我將該身份更改爲活動目錄用戶時,我開始獲得「密鑰無效,狀態「,當我試圖從CNG商店檢索鑰匙。下面是我們的一些意見:

  • 要在用戶級實現CNG,我們需要能夠創建用戶級別CNG鍵,而不是機械按鍵。我們已經做到了,並且正在成功地創建了用戶級密鑰,我們可以看到它在用戶配置 - C:\用戶\ ADusername \應用程序數據\漫遊\微軟\加密\鍵

    • 我們已經設置了「LoadUserProfile =真「在池設置。
    • 我們已經給讀取/修改權限AD用戶到%Windows%\ Microsoft.Net \框架\ Asp.Net臨時文件以及

我們還是繼續收到此錯誤。任何幫助將不勝感激。

+0

嘿!我知道這是較老的問題,但偶然你有沒有解決這個問題?遇到這個錯誤,可以使用一些幫助。謝謝! – shenn 2014-05-07 20:26:09

+0

已經很長時間了,但我認爲這是關鍵問題。我們刪除了密鑰,並使用應用池配置的用戶配置文件重新創建它們,然後工作正常。 – Vikram 2014-05-08 05:54:43

回答

0

我知道這是一個較老的問題,但我想我會提出一個建議。我試圖在AD信譽下運行應用程序池的本地IIS上運行現有的應用程序,並且在調用RSACryptoServiceProvider對象上的.ToXmlString(true)時出現同樣的異常。

他們的方式我解決了這個問題只是重新導入我的本地計算機上的密鑰,並選中「將此密鑰標記爲可導出」複選框。

相關問題