2012-03-29 80 views
0

如果我有兩個不同的應用程序在相同的解決方案下運行,但使用不同的數據庫,我可以共享這些應用程序之間的用戶憑據?除了SSO和在web.config機器的鍵,認證是基於默認的Asp.net數據庫(我想這就是所謂的會員數據庫)共享幾個網站之間的數據

任何解決方案,如果他們是一個解決方案可以請你幫

+0

hehe感謝編輯我是新的,在stackoverflow我不知道如何發表評論他們是如此之多的嚴格法律「」如何發佈他們 – 2012-03-29 06:44:08

+0

我不想聽起來像一個語法納粹,但它不是「他們」它是「那裏」。 – Bastardo 2012-03-29 06:58:04

回答

1

它是兩個獨立的IIS網站嗎?你有什麼真正的要求?只分享一些變量或將數據從一個應用程序移動到另一個應用程序?

我認爲你可能會更好地考慮創建一個服務層來在站點之間接收和發送信息。通過這種方式,您最終可以在不同的Web前端將這兩個應用程序分離而沒有任何問題。

此服務層可以使用不同的技術,如XML Web服務,WCF來實現,或者也許你可以看看新的ASP.NET Web API http://www.asp.net/web-api


編輯:

好明朗評論我得到了一些更多的信息: Imho你可以做兩件事:每天左右使用某種機制(可能是xml導出/導入)安排同步。但是,如果您想要實時SSO,則只需在連接到身份驗證數據庫的Web服務器上創建一項服務,其中唯一的功能就是對用戶進行身份驗證。就像a:bool validatecredentials(字符串用戶名,字符串passwordHash)。如果您不是在談論數千個身份驗證請求,那麼使用標準WCF或其他某種服務技術將會表現得相當出色。如果您正在討論更大的系統或實現,您應該查看基於聲明的身份驗證,.NET有一種名爲WIF的技術來實現這一點。它使用單獨的STS(安全令牌服務)來發布具有用戶身份和他被允許執行的聲明的令牌等。

+0

感謝您的回答我想我會嘗試使用XML文件在這些網站之間傳遞用戶數據 – 2012-03-29 06:55:18

+0

您能詳細闡述一下您的具體要求嗎?如果你打算使用這個xml文件,你可能會遇到讀寫鎖定等問題。但是如果你爲某些數據安排導入/導出,它可能會工作得很好! – 2012-03-29 07:02:49

+0

我想傳遞用戶憑證,如ID和用戶名我想做一個SSO環境,但我的問題是應用程序有自己的數據庫,他們不共享一個共同的數據庫是他們的解決我的問題? – 2012-03-29 07:06:01