0

環境使用identityserver3進行單點登錄。我有一個客戶端角應用程序正在使用openid連接身份服務器3.我也有一個文件查看器asp.net mvc應用程序,它用於呈現pdf和其他文件,並沒有安全。角度應用程序呈現iframe內的fileviewer以顯示文件的內容。IdentityServer3:保護asp.net mvc應用程序免受未經授權的訪問

我試圖添加文件查看器作爲客戶端與openid連接的身份,以便當用戶登錄角度應用程序時,用戶也將單一登錄到文件查看器應用程序中,但它不起作用iframe由於x-frame-options sameorigin頭文件查看器重定向到身份的授權端點。如果我打開文件查看器URL是一個單獨的選項卡,然後在角度應用程序內啓動文件預覽,那麼角度應用程序內的調用開始工作,因爲文件查看器Cookie現在在瀏覽器中。

理想情況下,我希望文件查看器能夠像web api一樣工作,它只驗證傳入令牌,但不知道如何通過身份服務器來實現。

我該如何去保護帶有標識服務器的文件查看器應用程序?我必須通過在管道中使用消息處理程序手動解碼jwt令牌嗎?

謝謝。

enter image description here

回答

0

如果你渲染本地文件,你可以使用承載權威性,喜歡的WebAPI一樣。但是,因爲您在iframe中使用MVC,所以它有點棘手。您需要在新窗口中觸發文件查看器的身份驗證 - SSO登錄不應發生在iframe中。這應該會爲您提供身份驗證憑據,通常是一個cookie,用於在您的iframe中調用文件查看器mvc應用程序時使用。

相關問題