簡體   English   中英

ASP.Net分階段升級網站

[英]ASP.Net Upgrading a Web Site in a phased approach

我只是想將開發轉移到.Net Core和Angular。

我們有一個用C#ASP.Net應用程序編寫的舊網站項目,在功能上它可以滿足業務需求,性能良好,並且可以在最新技術上運行。 那就是說很難使用它,進行更改需要時間,它確實需要對業務層進行大修,DAL需要遷移到(EF)並想遷移到新的GUI框架。 這些變化都是為了提高質量,提高開發人員的生產力,並最終加速發布。

我們具有一組需要實現的新功能,它們幾乎是獨立的“螺栓連接”,非常適合作為單獨的站點進行開發,但是我們需要使用現有的登錄詳細信息和會話詳細信息,以實現無縫的用戶體驗。 目標是在“新世界”中編寫新功能,然后按塊重新編寫舊頁面。

這肯定是一個普遍且顯而易見的問題,但是如何實現這一目標的研究卻沒有成果。

問題實際上是如何在站點之間動態共享會話數據。

聽起來您當前正在將會話保存在內存中的數據中。 解決此問題的標准方法是將會話狀態移出內存,並移至SQL Server,MongoDB,Redis等中,以便兩個應用程序都可以訪問共享狀態。

更新

現在,我們要解決問題的症結所在。 如果您依賴於存儲在字段/隱藏字段中的數據,則可能已經存在安全性問題(很難在不了解實現的情況下很難說)。

我猜想您要問的問題是:“如何安全地從舊系統導航到新系統(反之亦然)”。 這里有兩種可能的策略:

  • 我想到的第一個解決方案是SSO(單一登錄)方法。 在這里,您可以從一個系統向另一個系統傳遞不透明令牌,以標識當前用戶。
  • 如果您能夠使用相同的主機名提供舊/新應用程序的服務,則可以使用Cookie來存儲某種形式的用戶令牌。

筆記:

  • 請勿傳遞類似在網址中傳遞的純文本用戶ID的信息。
  • SSO令牌應該與用戶ID完全分開(例如,可以是引用共享數據庫中記錄的GUID)。

暫無
暫無

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

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