ASP.NET安全
在網站中實現安全性有以下幾個方面:
- 認證:這是確保用戶身份和真實性的過程。ASP.NET允許四種類型的認證:
- Windows身份驗證
- 表單認證
- 通行證認證
- 自定義驗證
- 授權:是爲特定用戶定義和分配特定角色的過程。
- 保密性:它涉及加密客戶端瀏覽器和網絡服務器之間的通道。
- 完整性:涉及維護數據的完整性。例如,實施數字簽名。
基於表單的身份驗證
傳統上,基於表單的身份驗證涉及編輯web.config
文件並添加具有適當的驗證代碼的登錄頁面。
可以編輯web.config
文件並在其上編寫以下代碼:
<configuration>
<system.web>
<authentication mode="Forms">
<forms loginUrl ="login.aspx"/>
</authentication>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
...
...
</configuration>
在上面的代碼片段中提到的login.aspx
頁面具有以下代碼文件,其中用戶名(username
)和密碼(password
)是硬編碼的身份驗證。
注意FormsAuthentication
類負責認證過程。
Visual Studio允許通過Web站點管理工具無縫地輕鬆實現用戶創建,身份驗證和授權,而無需編寫任何代碼。這個工具允許創建用戶和角色。
除此之外,ASP.NET還提供了現成的登錄控件集,它具有控制執行所有工作的控件。
實現基於表單的安全性
要設置基於表單的身份驗證,需要以下內容:
- 支持認證過程的用戶數據庫
- 使用數據庫的網站
- 用戶帳戶
- 角色
- 限制用戶和小組活動
- 默認頁面,顯示用戶的登錄狀態等信息。
- 登錄頁面,允許用戶登錄,檢索密碼或更改密碼
IIS身份驗證:SSL
安全套接字層或SSL是用於確保安全連接的協議。 啓用SSL後,瀏覽器會加密發送到服務器的所有數據,並解密來自服務器的所有數據。同時,服務器加密和解密來自瀏覽器的所有數據。
安全連接的URL從HTTPS而不是HTTP開始。瀏覽器使用安全連接顯示小鎖圖標。 當瀏覽器使用SSL通過安全連接初次嘗試與服務器通信時,服務器通過發送其數字證書來驗證自身。
要使用SSL,您需要從受信任的認證中心(CA)購買數字安全證書,並將其安裝在Web服務器中。 以下是一些值得信賴和知名的認證機構:
SSL內置於所有主流瀏覽器和服務器中。要啓用SSL,需要安裝數字證書。 各種數字證書的強度取決於加密期間生成的密鑰的長度。 更多的長度,更安全的是證書,因此連接。
編號
強度
描述
1
40位
大多數瀏覽器支持,但很容易中斷。
2
56位
強於40位
3
128位
非常難破解,但所有的瀏覽器不支持它。
易百教程移動端:請掃描本頁面底部(右側)二維碼並關注微信公衆號,回覆:"教程" 選擇相關教程閱讀或直接訪問:http://m.yiibai.com 。
上一篇:ASP.NET LINQ 下一篇:ASP.NET緩存
加QQ羣啦,易百教程官方技術學習羣
QQ羣名稱
羣號
人數
免費
等級
羣介紹
JAVA技術
227270512
2000
否
LV5
Java基礎,JSP(Servlet),JAVA框架,Java高併發架構,Maven等等
MySQL/SQL
418407075
2000
否
LV5
SQL基礎,MySQL基礎,MySQL存儲過程,視圖,觸發器等等
大數據開發
655154550
2000
否
LV5
Spark,zookeeper,kafka,CDH,hive,fulme,hbase等Hadoop雲計算生態圈技術
Python技術
287904175
2000
否
LV5
Python編程,Python Web,Python大數據,Python爬蟲,自然語言處理等
Linux技術
479429477
2000
是
LV1
Redhat/Centos,Ubuntu,Shell,運維,監控等技術
PHP/Web開發者
460153241
1000
是
LV0
PHP基礎,PHP高級,網站優化/架構,JS,HTML,JQuery,前端等Web開發技術
人工智能
456236082
1000
是
LV0
人工智能,深度學習,算法等技術
Oracle數據庫
175248146
1000
是
LV0
SQL基礎,Oracle基礎,Oracle存儲過程,視圖,觸發器等等
Android開發
159629185
1000
是
LV0
Android開發,Android Studio,Kotlin,Dagger等技術
微軟技術
579821706
1000
是
LV0
C#,ASP.Net,VB.Net,ADO.Net,SQL Server,VBA,Excel等技術
測試工程師
415553199
1000
是
LV0
軟件測試,硬件測試,測試平臺開發,黑白盒測試,Labview,C/C++, Java/.net; 軟件開發,遊戲開發等技術