2016-10-28 42 views
1

多個LogoutUris我有一個MVC應用程序,它是多租戶,通過域名區分:標識服務器3個相同的客戶端

app.tenant1.com 

app.tenant2.com 

我有IdentityServer(混合流)的單個客戶端與

RedirectUris = [http://app.tenant1.com, http://app.tenant2.com] 

PostLogoutRedirectUris = [http://app.tenant1.com, http://app.tenant2.com] 

但註銷URI只允許一個字符串值,而不是一個字符串列表

LogoutUri = "http://app.tenant1.com/home/SignoutCleanup"; 

我的問題是,當我從app.tenant2.com singout我想LogoutUri是「http://app.tenant2.com/home/signoutcleanup

是否有這樣做的一種方式?

感謝

PS:有沒有辦法在SingoutMessage數據傳遞到IS3?與我們如何在acr_values中傳遞數據類似?

PPS:我已經實現了一個CustomEventService並記錄了用戶登錄。還有一種登錄註銷事件的方式嗎?

謝謝:)

編輯:

我看到,這是一個被稱爲以產生這又致電signout所有的應用程序的I幀的URL

/核心/連接/ endsessioncallback

有沒有辦法攔截此網址,並對其響應進行更改?

回答

0

鑑於cookie限制爲主機名的範圍,您可以改變如何將此客戶端配置爲多個客戶端。另一個想法是使用主機級Cookie來跟蹤租戶,然後使用主機級註銷清理URL。

+0

感謝您的信息。有沒有攔截這個網址調用「/核心/連接/ endsessioncallback」的方式,IS3是爲了生成簽名的iframe,也許我可以改變客戶端登錄網址被稱爲? – Mihai

+0

「另一個想法是使用主機級cookie跟蹤租戶,然後使用主機級註銷清理URL。」我不完全理解這將如何工作。你能給我更多的信息嗎? – Mihai

相關問題