# ASP.NET dotnet C# core MVC WebApi IIS 安全性參考文章 ###### tags: `資安` ## ASP.NET Core 安全性主題 https://docs.microsoft.com/zh-tw/aspnet/core/security/?view=aspnetcore-6.0 * 驗證 * 授權 * 資料保護 > ASP.NET Core 資料保護提供密碼編譯 API 來保護資料,包括金鑰管理和輪替。 * 在 ASP.NET Core 中開發中安全儲存應用程式密碼 * 強制使用 HTTPS * 使用 HTTPS 執行 Docker * 使用 HTTPS 執行 Docker Compose * EU 一般資料保護規定 (GDPR) 支援 * 防止跨網站偽造要求 (XSRF/CSRF) 攻擊 * 防止開啟重新導向攻擊 * 防止跨網站指令碼處理 (XSS) * 啟用跨原始來源要求 (CORS) * 在應用程式間共用 Cookie * SameSite Cookie * IP 安全清單 * 應用程式安全性 - OWASP --- ## 啟用資料庫引擎的加密連線 https://docs.microsoft.com/zh-tw/sql/database-engine/configure-windows/enable-encrypted-connections-to-the-database-engine?view=sql-server-ver16 * 傳輸層安全性 (TLS) * 關於憑證 * 憑證需求 * 在單一伺服器上安裝 * 跨多部伺服器安裝 * 匯出伺服器憑證 * 設定伺服器 * 設定用戶端 * 使用 SQL Server Management Studio * 網際網路通訊協定安全性 (IPSec) --- ## 保護連接字串與其他設定資訊 (C#) https://docs.microsoft.com/zh-tw/aspnet/web-forms/overview/data-access/advanced-data-access-scenarios/protecting-connection-strings-and-other-configuration-information-cs * 步驟1:探索 ASP.NET 2.0 s 保護的設定選項 * 步驟2:以程式設計方式加密和解密設定區段 * 步驟3:使用加密設定區段aspnet_regiis.exe * 瞭解資料庫驗證選項 --- ## ASP.NET Web API 中的驗證和授權 https://docs.microsoft.com/zh-tw/aspnet/web-api/overview/security/authentication-and-authorization-in-aspnet-web-api * 驗證 知道使用者的身分識別。 例如,Alice 使用其使用者名稱和密碼登入,而伺服器會使用密碼來驗證 Alice。 當主機驗證使用者時,它會建立 主體,這是 IPrincipal 物件,代表程式碼執行所在的安全性內容。 * 授權 會決定是否允許使用者執行動作。 例如,Alice 有權取得資源,但無法建立資源。 Web API 提供內建的授權篩選器 AuthorizationAttribute。 此篩選準則會檢查使用者是否已通過驗證。 如果沒有,它會傳回 HTTP 狀態碼 401 (未經授權) ,而不叫用動作。 --- ## ASP.NET Web API 中的安全性、驗證和授權 https://docs.microsoft.com/zh-tw/aspnet/web-api/overview/security/ * Web API 中的驗證與授權 * 保護 Web API 2.2 中有個別帳戶的 Web API * 外部驗證服務與 Web API (C#) * 防止 Web API 中的跨網站偽造要求 (CSRF) 攻擊 * 啟用 Web API 2 中的跨原始來源要求 * Web API 2 中的驗證篩選 * Web API 中的基本驗證 * Web API 中的表單驗證 * 整合式 Windows 驗證 * 使用 SSL --- ## 管理 Windows IIS Web 服務的安全性 https://docs.microsoft.com/zh-tw/security-updates/security/20214499 ### 所有系統都必須接受管理 不受管理的系統通常歸類為非正式系統與測試系統,近來的病毒已經能夠辨識出不受管理的系統。 管理測試與開發系統的策略如下: * 為清楚地區隔出實際執行系統與測試系統,因此建立專屬的測試與開發環境,並且將其視為實際執行系統般管理。這種策略對於應用程式開發者來說較為不便,因為他們必須在測試與開發環境之中工作,而不能在本機實際執行系統工作,但是這是必須執行的任務。 * 如果建立專屬的測試與開發環境不是公司現有方案,則建議研擬程序允許應用程式開發者與業務單位提報特殊狀況,以便在其他網路建立獨立的測試環境 --- ### 安全性的的基礎原則 Microsoft 建議用戶建立相關環境的基本影像,並且建立該原則的自動安裝程序。 ### 維持系統安全 Microsoft 建議用戶執行下列事項: * 確認環境中所有管理的系統都套用最新的 Hotfix。這個程序可以簡化為使用 HFNetChk 工具,如此可讓系統管理員從中心位置檢查網路中所有機器的修補狀況。這個工具另有完整版,較本版本多了顯著的彈性以監視 Hotfix 授權。 * 定期安裝由防毒程式廠商更新的防毒程式簽章檔。 * 併入對全公司系統主動掃描與隨機稽核的安全性管理計劃。 * 鼓勵使用者使用 〈Microsoft Personal Security Advisor〉的 Web 應用程式。這個工具提供資訊可以幫助使用者辨識帶有安全性漏洞的系統。應該鼓勵使用者將結果報告傳送到〈Corporate Information Security〉中。 * 每日監視 Microsoft Security Response Center (MSRC) 發佈的安全性公佈欄。Security Response Center 會經由電子郵件或張貼佈告 於 https://www.microsoft.com/taiwan/security 網站以警告用戶關於安全性漏洞的問題。 --- ### 危機的回應 Microsoft 建議用戶的快速回應小組最少應該囊括安全性、伺服器管理、網路管理、桌面管理與服務台的代表人員。 建立包含下列事項的高階計劃: * 需要快速回應小組處理的緊急狀態發生時 * 應該由誰呼叫小組進行動作 * 如何聯絡小組成員與/或其支援人員 * 辨識所造成的威脅及相關安全性漏洞、封鎖或減輕破壞的戰術策略、重新召集小組時間與事後剖析的標準程序
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up