簡體   English   中英

Windows Azure Service Bus中的默認頒發者和默認密鑰有什么用途? 是否需要固定鑰匙?

[英]What is the use of Default Issuer and Default Key in Windows Azure Service Bus? Does the key need to be secured?

我們創建了一個下載的客戶端服務模型應用程序,其中WCF服務托管在我們的一台服務器上,並且客戶端應用程序分布在合作伙伴之間。 為合作伙伴提供了唯一的密碼,使用該密碼,他們可以向WCF服務進行身份驗證,並可以提出請求以下載到WCF服務。

客戶端通過Windows Azure Service Bus連接到WCF服務,我們在其中創建了一個命名空間,客戶端應用程序可以使用該命名空間連接到該服務。 每個命名空間都有一個Default IssuerDefault Key 連接到服務總線時,我們已將此默認密鑰嵌入到我們的代碼中。 有人告訴我,密鑰需要保護,您需要對應用程序進行簽名才能保護嵌入式密鑰。 真的嗎?

我們真的需要保護此密鑰嗎? 如果是,那怎么辦? 有沒有一種方法可以簡單地在Service Bus中提供身份驗證,該身份驗證從其引腳識別客戶端,並且僅允許一組人訪問Service Bus名稱空間? 還是我對這些問題毫無用處? :)

我們正在使用服務總線中繼。 我一直在閱讀有關SAS和ACS的信息,根據文檔看來,中繼不支持SAS。 以下是鏈接: “不久的將來將增加對服務總線中繼的支持。” http://msdn.microsoft.com/zh-CN/library/windowsazure/dn170477.aspx

我無法理解如何使用ACS對客戶端進行身份驗證。 Windows Azure文檔中提供的信息對我來說都是無用功,無論我怎么努力,我都無法將它們與任何事物聯系起來。

如果有人對我的問題有任何了解,請通過適當的鏈接和指導幫助我。

謝謝!

編輯!!! 我一直在對此進行搜索,下面的鏈接提供了一種創建未經身份驗證的客戶端的方法: http : //msdn.microsoft.com/zh-cn/library/microsoft.servicebus.nettcprelaybinding.aspx

通過在我的客戶端App.Config中使用以下標記

<security relayClientAuthenticationType="None" />

我已經嘗試過,但是收到以下錯誤:“通用:授權失敗。請確保您指定了正確的SharedSecret,SimpleWebToken,SharedAccessSignature或Saml傳輸客戶端憑據。MissingToken:需要中繼安全令牌。”

我正在尋找有關此錯誤的更多信息。 但是很少出現問題。 如果我們使azure服務總線無需身份驗證即可訪問,那么有人可以僅僅為了自己的利益而濫用服務總線嗎?

我們真的需要保護此密鑰嗎?

您將發卡行和默認密鑰存儲在服務器端。 為了在Azure服務總線上進行授權,Service Bus WCF終結點使用頒發者和默認密鑰來創建令牌,該令牌將使用默認密鑰進行簽名,這意味着將永遠不會將默認密鑰發送到Azure。

有沒有一種方法可以簡單地在Service Bus中提供身份驗證,該身份驗證從其引腳識別客戶端,並且僅允許一組人訪問Service Bus名稱空間? 還是我對這些問題毫無用處?

據我了解,您已經在WCF端實現了某種安全性。 還有另一種方法。 您可以使用ACS對客戶端進行身份驗證。 默認情況下,Azure中繼服務提供對簡單Web令牌的支持。

這是工作流程:

  1. 客戶端向ACS發送用戶名/密碼(或用戶名/密鑰)。
  2. ACS驗證憑據是否有效。
  3. ACS將SWT令牌發送回客戶端。
  4. 客戶端將SWT令牌打包到HTTP請求中(例如,打包到標頭中)
  5. 客戶端使用標頭中的令牌向Web服務發送請求。
  6. WCF Web服務接收令牌,並使用ACS命名空間提供的安全共享密鑰來驗證令牌。(請注意,在通信過程中不會發送此密鑰,必須手動將其從ACS門戶復制到Web服務配置文件中)。
  7. 如果令牌有效,則Web Service將數據發送到客戶端。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM