初識Identity並新增身份驗證管理頁面

2022-02-24 19:35:32 字數 2456 閱讀 1316

目錄

檢查解決方案中的專案檔案

最後讓我們跑起來

了解asp.net core identity

在專案資料夾中找不到身份驗證管理的相關頁面;

通過命令使用基架新增身份驗證管理檔案;

消除錯誤,然後run起來;

asp.net core 安全性概述通過 asp.net core,開發者可輕鬆配置和管理其應用的安全性。 asp.net core 的功能包括管理身份驗證、授權、資料保護、https 強制、應用機密、請求防偽保護及 cors 管理。 通過這些安全功能,可以生成安全可靠的 asp.net core 應用。

asp.net core 安全性功能

身份驗證是這樣乙個過程:由使用者提供憑據,然後將其與儲存在作業系統、資料庫、應用或資源中的憑據進行比較。 在授權過程中,如果憑據匹配,則使用者身份驗證成功,可執行已向其授權的操作。 授權指判斷允許使用者執行的操作的過程。

對身份驗證的另一種理解是將其看作進入某一空間(如伺服器、資料庫、應用或資源)的方式,而將授權看作使用者可對該空間(伺服器、資料庫或應用)內的物件執行的操作。

新建資料夾prehot,並在此資料夾中開啟命令介面,然後輸入以下命令:對命令還不熟悉的朋友,可以檢視嘗試:使用--help獲取dotnet命令的更多幫助

我們可以嘗試run起來,開始執行!

一切ok!

如上圖,用於身份註冊、登入、管理的頁面在**呢?

在這裡我們重新明確一下:

我們可以儲存登入資訊,例如使用 sql server 資料庫來儲存使用者名稱、 密碼和配置檔案資料。或者,可用別的的持久儲存區,例如,azure 表儲存。

以上我們了解asp.net core identity的概念後,回頭再看看我們的專案:

嘗試執行,使用者註冊、登入和退出,一切ok!

但是檢查解決方案我們並沒有找到相關使用者註冊、登入、退出等頁面檔案呢;

從 asp.net core 2.1 及更高版本開始,將asp.net core identity 作為 razor類庫(razor class library,rcl)的一部分進行提供,所以當你執行這些註冊、登入、退出等相關操作的時候,都是rcl提供的預設模板完成的。

大家一定會提出,那如果我想完成更多的控制,比如修改登入介面、漢化等又怎麼辦呢?

我們知道問題得原因,就好辦了!

如果以前未安裝 asp.net core 基架,請立即進行安裝:

dotnet tool install -g dotnet-aspnet-codegenerator
新增到包引用microsoft.visualstudio.web.codegeneration.design到專案 (*.csproj) 檔案。 在專案目錄中執行以下命令:

dotnet add package microsoft.visualstudio.web.codegeneration.design

dotnet restore

注意下圖中高亮的2個位置

執行以下命令,以列出標識基架更多選項:

dotnet aspnet-codegenerator identity -h
在專案資料夾中,執行所需的選項標識基架。 例如,若要設定預設值 ui 標識和最小的檔案數,執行以下命令。 使用資料庫上下文的正確完全限定的名稱:

dotnet aspnet-codegenerator identity --usedefaultui
注意所在的命名空間,prehot是你的專案名稱

使用分號作為命令分隔符, 例如:

如果未指定執行標識基架--files標誌或--usedefaultui標誌,所有可用的標識 ui 頁將在專案中建立。

在本專案中,我們選擇利用基架新增所有可用identity的ui頁面:

我們的解決方案中會增加乙個資料夾areas,內容包括:

run起來,開始執行!

為MongoDB新增身份驗證

mongodb 預設沒有開戶身份驗證,除非不開放外網訪問,否則這種模式極不安全,現紀錄新增身份驗證步驟如下 配置建立使用者的時候,需要關閉 security 副本集之間通訊用到的認證檔案 keyfile home soft mongodb linux x86 64 rhel62 3.4.2 shar...

sql server 新增登陸身份

首先你用你自己的windows賬戶登入進去,然後右鍵點資料庫的屬性,在security 我的是英文的,對應的中文自己找 裡面有一項,叫做 server authentication。你要選擇sql server and windows authentication mode而不是 windows a...

WPF身份證自動驗證並獲取部分身份資訊

在這給大家分享乙個在wpf文字框中輸入身份證自動驗證是否正確,並根據所輸入的身份資訊自動獲取位址 年齡 性別 以及出生日期 首先在xaml中建立乙個個文字框,並給這個文字框定義文字改變事件,新增name值 建立乙個封裝類,類名自取,在類中例項化雜湊 用於封裝方法 在類中建立乙個方法,根據雜湊 建立集...