1. 程式人生 > >ASP.NET Zero--前端應用程序

ASP.NET Zero--前端應用程序

根據 查看 .json sage 添加 程序 images 替換 點擊

前端應用程序

ASP.NET Zero包含可以作為您的公共網站或應用程序著陸頁的起點的前端頁面。首次運行項目時,您會看到主頁如下所示:

技術分享

這裏有兩頁:主頁關於這些頁面的內容只是占位符和演示目的。您可以根據需要完全刪除內容並構建頁面。此外,你應該改變的標誌與貴公司的標誌。

請參閱 metronic前端主題 ,為所有可能性和組件構建一個更豐富的網站。

菜單在 FrontEndNavigationProvider 中定義當您在此添加新菜單項時,將自動顯示在菜單中。 右上角有一個登錄鏈接。此鏈接將使我們進入登錄頁面 以進入後端應用程序。

布局

前端頁面的布局位於.Web項目的

視圖/布局”文件夾下

技術分享

_Layout是包含腳本和樣式的主要布局文件。語言標誌和菜單在 位於共享/組件下的標題組件中呈現_PreFooter不使用,但如果需要,您可以將其添加到_Layout。

租戶註冊

當您點擊前端應用程序中的“新租戶”鏈接時,您可以註冊成為新的租戶:

技術分享

在這裏,您可以創建一個新的租戶。TenantRegistration控制器是用來註冊一個新的租戶。可以啟用/禁用租戶註冊,並可以在後端應用程序的設置頁面中更改某些設置。

Account控制器

AccountController提供登錄註冊忘記密碼電子郵件激活頁面。

布局

帳戶管理頁面Views / Account文件夾有一個分隔的_Layout視圖

技術分享

位於view-resources / Views / Account文件夾下的 相關腳本樣式資源

技術分享

類似地,應用程序的所有視圖都具有wwwroot / view-resources文件夾下的對應樣式和腳本文件

登錄

AccountController的主視圖是“登錄”頁面:

技術分享

登錄部分上方租戶選擇部分僅顯示在 多租戶應用程序中,並且“子域名租賃戶名稱檢測” 不可用(請參閱主機設置部分)。當我們單擊更改鏈接時,出現租戶更改對話框,我們可以更改租戶。

在初始數據庫中有一個名為Default租戶(請參閱初始種子數據的實體框架部分)。將租戶名稱輸入留為空,用host登錄

我們可以先使用admin用戶名和123qwe 密碼來運行應用程序。首先登錄後,我們應該更改管理員密碼,因為123qwe不是很安全:

技術分享

更改密碼後,我們將重定向到後端應用程序

社交登錄

ASP.NET Zero支持社交媒體登錄。要啟用它,我們應該改變如下設置一個ppsettings.json文件。

  “Authentication”:{
       “Facebook”:{
       “IsEnabled”“false”“AppId”“”“AppSecret”“”
    },
    “Google”:{
       “IsEnabled”“false”“ClientId”“”“ClientSecret”“”
    },
    “Twitter”:{
       “IsEnabled”“false”“ConsumerKey”“”“ConsumerSecret”“”
    },
    “Microsoft”:{
       “IsEnabled”“false”“ConsumerKey”“”“ConsumerSecret”“”
    }
  },

您可以在網絡上找到許多文檔,以了解如何獲取社交平臺的身份驗證密鑰。因此,我們不會詳細介紹在社交媒體上制作應用程序的細節。一旦你得到你的key,你可以把它們寫入appsettings.json。啟用它後,社交媒體標誌會自動顯示在登錄頁面上,如下所示:

技術分享

OPENID連接登錄

除了社交登錄,ASP.NET Zero還包括OpenId Connect Login集成。它的配置可以在 appsettings.json更改

“OpenId”:{
   “IsEnabled”“false”“Authority”“”“ClientId”“”“ClientSecret”“” 
}

啟用後,登錄頁面會顯示一個徽標(與上述社交徽標相似)。

雙因素登錄

ASP.NET Zero可以提供兩個因素登錄,但是默認情況下禁用。您可以在主機設置頁面(安全選項卡)中輕松啟用它:

技術分享

註意:在多租戶應用程序中,只有在主機設置中啟用了雙重身份驗證才可以向租戶提供。此外,電子郵件驗證和短信驗證設置僅在主機端可用。這僅是設計。

啟用後,輸入用戶名和密碼後,系統會要求用戶選擇驗證方式:

技術分享

然後將確認碼發送到所選提供商,用戶在下一頁中輸入代碼:

技術分享

電子郵件驗證

如果用戶具有確認的電子郵件地址,則可用。由於電子郵件發送在調試模式下被禁用,您可以在日誌中看到代碼。在發布模式下,電子郵件將被發送(您可以更改此信息並使電子郵件可用於調試,請參閱發送電子郵件部分)。

短信驗證

如果用戶具有確認的電話號碼,則可以使用此功能。SMS發送實際上沒有實現(因為它需要與SMS供應商集成)。當前的實現只是將安全代碼寫入日誌。您應該在解決方案中完成 IdentitySmsMessageService類,使其可用。否則,在設置中禁用短信驗證。

用戶鎖定

如上一節所述,您可以配置用戶鎖定設置。用戶在指定的計數和持續時間輸入錯誤的密碼時鎖定。

註冊

當我們點擊登錄頁面中的“ 創建帳戶 ”鏈接時,會顯示一個註冊表單:

技術分享

用戶可以註冊租戶,而不是Host,如果這是一個多租戶應用程序。如果是單租戶,這裏就不會有租戶名稱。

Recaptcha(安全問題)是可選的。它使用Google的recaptcha服務。每個域名Recaptcha服務工作。因此,為了使其正常工作,您應該在https://www.google.com/recaptcha上為您的域創建自己的私鑰和公鑰, 並在appsettings.json文件中替換密鑰

電子郵件激活

當用戶如上所示註冊時,電子郵件確認碼將發送到他的電子郵件地址。如果用戶因某些原因未收到此電子郵件,可以點擊電子郵件激活並重新發送確認碼。

技術分享

再次,租戶名稱輸入未顯示為單租戶應用程序,或租戶名稱通過子域名(如tenancyname.mydomain.com)已知。

忘記密碼

如果用戶忘了他的密碼,他可以點擊“忘記密碼”鏈接獲取電子郵件重置密碼。

技術分享

ASP.NET Zero--前端應用程序