2012-04-24 73 views
3

我已經設置了一個appfabric(v1.1)緩存服務器。服務在服務帳戶下運行,並且羣集配置存儲在SQL Server中。服務帳戶在sql server上擁有權限並且能夠成功配置。無法連接到AppFabric緩存服務器

管理控制檯在使用服務帳戶用戶打開時,能夠訪問緩存。

但問題是,當我試圖從不同的機器連接到此緩存服務,它無法連接。

ErrorCode<ERRCA0017>:SubStatus<ES0006>:There is a temporary failure. Please retry later 

當我試圖用一個文件共享XML配置和服務在「網絡服務」帳戶下運行,我是能夠連接。

以下設置在緩存服務器上進行驗證。

  • 服務已啓動並在端口22233.
  • 防火牆運行處於關閉狀態。
  • 客戶端計算機被授予訪問緩存集羣的權限。
+0

您能發佈失敗的(SQL)客戶端配置和良好的(XML)配置嗎? – PhilPursglove 2012-04-27 16:25:55

回答

4

運行AppFabric緩存作爲「網絡服務」之外的任何其他內容都不受支持。

這裏的official documentation that hints at the limitation

緩存服務安裝到網絡服務 帳戶下運行。這意味着對於網絡上的操作,緩存服務使用緩存服務器域 計算機帳戶的安全憑證。緩存服務使用較低特權 網絡服務帳戶,以幫助減輕可能造成的惡意攻擊

但是,如果你沒有找到令人信服的存在從一個MS人的this forum post 的傷害:

不支持以域用戶身份運行Velocity服務。

如果您認爲這是一個可怕的限制...我同意你的意見。

AppFabric緩存是100%WCF實現。當我遇到這個問題時,我打開了WCF跟蹤,發現異常「目標原理名稱不正確」。 AppFabric緩存不公開配置原則的能力。

在我的域名帳戶下運行緩存的測試中,我發現如果我通過域邊界調用緩存:它工作。如果我從同一個域內調用它,則失敗。我的基礎設施人員說,根據證書在不同場景中的表現方式,他的行爲對他有意義。

+0

但是,當我在服務器中訪問時,我能夠添加/獲取cacheitem – Manas 2012-05-03 04:20:32

+0

是的。它有時會起作用。它的「不支持」沒有被破壞。這意味着「自擔風險」。這完全取決於憑證如何呈現給服務。本地呼叫的認證方式與遠程呼叫不同。這就是爲什麼我給出了跨域呼叫工作的例子。你可以給你的域帳戶所有的網絡服務的特權,我敢打賭它會工作......但是你公司的每個安全專家都會否決它。因此「不受支持」。 – ErnieL 2012-05-04 16:03:48