我有一個包含多個獨立組件的項目,所有組件都需要彼此交談。我現在試圖找到一種在每個組件之間共享權限系統的好方法。將權限添加到複雜系統
的3個主要組成部分是:
- 的ASP.Net Web應用程序
- 一個Silverlight應用程序(web應用服務)
- 一個窗口服務,這給提供了一些WCF web服務Silverlight應用程序。
服務器(1,3)都可以訪問同一個數據庫。每個組件之間的通信由WCF Web服務執行。
我需要確保從Windows服務(3)請求信息的用戶是具有正確訪問權限的用戶。 Silverlight應用程序(2)是請求應該來自哪裏。目前,沒有用戶信息可用於Windows服務(1),因爲它與Asp.Net應用程序(3)完全分離。我不想存儲和傳遞用戶名和密碼,並且用戶只需輸入一次憑據,這會在登錄ASP.Net應用程序(1)時發生。
什麼是讓用戶識別Windows服務(3)的好方法?
(我會後一可能性,我看到如下的回答。)
我已經考慮過了,但我認爲劫機者只是簡單地將用戶標識傳遞給Web服務並僞裝成用戶就太容易了。 它與會話ID類似,但會話ID偶爾會發生變化,而用戶ID將保持不變。 – grimus 2009-06-09 16:22:52