我正在構建2個MVC應用程序,並將使用IdentityServer作爲單一登錄身份驗證提供程序。通過遵循IdentityServer網站的示例代碼,我可以使身份驗證正常工作。但是現在我對如何在MVC應用程序中註冊新用戶感到困惑。註冊使用IdentityServer4與多個客戶端的新用戶的正確方法是什麼?
例如在MVC 1中,我有一個安全的控制器操作。現在訪問此操作將被重定向到IdentityServer登錄頁面。如果用戶選擇了外部登錄提供程序併成功登錄,那麼用戶將被重定向到IdentityServer的「註冊」頁面,詢問用戶是否想要註冊。如果用戶點擊「註冊」,則成功重定向到安全操作。到目前爲止,示例代碼已經完成了所有這些。但我的問題是,MVC1 & MVC2需要更多關於用戶註冊的信息。我如何提示用戶輸入這些附加信息?將這些信息輸入IdentityServer寄存器頁面是不可行的,因爲MVC需要不同的信息。但是,如果我有一個MVC1 & MVC2的註冊頁面,那我該如何強制用戶完成註冊?用戶通過IdentityServer進行身份驗證後,他將直接返回到最初請求的Url。我無法在每個控制器操作中都有代碼來驗證經過身份驗證的用戶是否已完成詳細註冊。
一個理想的方法是,一旦用戶通過IdentityServer進行身份驗證,我可以檢查此用戶是否已在本地MVC用戶數據庫中註冊。如果不是,則將用戶重定向到本地MVC註冊頁面,然後返回到最初請求的Url。如何做到這一點,或者有更合適的方法來做到這一點?
MJK,謝謝你的回答。 –