安全性
本節包含與建置適用於 Windows 的安全通用 Windows 平台 (UWP) 應用程式相關的文章。
簡介
如果您是 Windows 或 UWP 開發的新手,請從安全開發 Windows 應用程式的簡介開始。 本簡介層級文章提供應用程式的安全性考量概觀,以及 Windows 中可用的各種功能概觀。
驗證和使用者識別
驗證和使用者身分識別一節包含使用者登入和身分識別相關案例的逐步解說。 應用程式有數個使用者驗證選項,範圍從使用 Web 驗證代理程式的的簡易單一登入 (SSO) 到高度安全的雙重要素驗證。
主題 | 說明 |
---|---|
認證保險箱 | 本文說明應用程式如何使用「認證保險箱」安全地儲存和擷取使用者認證,並在具有使用者 Microsoft 帳戶的裝置之間漫遊。 |
指紋生物識別技術 | 本文說明如何將指紋生物特徵辨識新增至您的應用程式。 在使用者必須同意特定動作時納入指紋驗證的要求,會增加應用程式的安全性。 例如,在授權應用程式內購買之前,您可能需要指紋驗證,或存取受限制的資源。 指紋驗證是使用 Windows.Security.Credentials.UI 命名空間中的 UserConsentVerifier 類別所管理。 |
Windows Hello | 本文描述 Windows Hello 技術,並討論開發人員如何實作這項技術來保護其應用程式和後端服務。 它重點介紹了這些技術的特定功能,這些功能有助於減輕來自傳統憑證的威脅,並提供有關在已封裝 Windows 應用程式中設計和部署這些技術的指導。 |
建立 Windows Hello 登入應用程式 | 有關如何建立使用 Windows Hello 作為傳統使用者名稱和密碼驗證系統替代方案的封裝 Windows 應用程式的完整逐步解說的第 1 部分。 |
建立 Windows Hello 登入服務 | 有關如何在封裝的 Windows 應用程式中使用 Windows Hello 作為傳統使用者名稱和密碼驗證系統替代方案的的完整逐步解說的第 2 部分。 |
智慧卡 | 本主題說明應用程式如何使用智慧卡將使用者連線到安全的網路服務,包括如何存取實體智慧卡讀取器、建立虛擬智慧卡、與智慧卡通訊、驗證使用者、重設使用者 PIN,以及移除或中斷智慧卡的連線。 |
在應用程式之間共用憑證 | 除了使用者識別碼和密碼組合之外,需要安全驗證的 UWP 應用程式可以使用憑證進行驗證。 驗證使用者時,憑證驗證可提供高度的信任。 在某些情況下,服務群組需要驗證多個應用程式的使用者。 本文說明如何使用相同的憑證來驗證多個應用程式,以及如何為使用者提供方便的程式碼來匯入提供的憑證,以存取受保護的 Web 服務。 |
使用隨附 IoT 裝置的 Windows 解除鎖定 | 隨附裝置是可與 Windows 搭配使用,以增強使用者驗證體驗的裝置。 透過「隨附裝置架構」,即使在 Windows Hello 無法使用時 (例如,如果 Windows 機器缺少可進行臉部驗證的相機或指紋辨識器裝置),隨附裝置還是可以提供豐富的體驗。 |
Web 帳戶管理員 | 本文說明如何使用 Windows Web 帳戶管理員 API 顯示 AccountsSettingsPane,並將您的通用 Windows 平台 (UWP) 應用程式連線到外部身份識別提供者 (例如 Microsoft 或 Facebook)。 您將了解如何要求使用者使用其 Microsoft 帳戶的權限、取得存取權杖,以及將其用來執行基本作業 (例如取得設定檔資料或將檔案上傳至其 OneDrive)。 |
Web 驗證代理人 | 本文說明如何將應用程式連接到使用 OpenID 或 OAuth 等驗證通訊協定的線上身分識別提供者。 AuthenticateAsync 方法會將要求傳送至線上識別提供者,並取得說明應用程式可存取提供者資源的存取權杖。 |
密碼編譯
密碼編譯一節包含更複雜的密碼編譯相關主題資訊。
主題 | 說明 |
---|---|
憑證簡介 | 本文討論在應用程式中使用憑證。 數位憑證用於公開金鑰密碼編譯,將公開金鑰繫結至人員、電腦或組織。 繫結身分識別最常用來對一個實體驗證另一個實體。 例如,憑證經常用來對使用者驗證網頁伺服器以及對網頁伺服器驗證使用者。 您可以建立憑證要求,並安裝或匯入發行的憑證。 您也可以在憑證階層中註冊憑證。 |
密碼編譯金鑰 | 本文說明如何使用標準金鑰衍生函式來衍生金鑰,以及如何使用對稱和非對稱金鑰來加密內容。 |
資料保護 | 本文說明如何使用 Windows.Security.Cryptography.DataProtection 命名空間中的 DataProtectionProvider 類別,來加密和解密 UWP 應用程式中的數位資料。 |
MAC、雜湊以及簽章 | 本文討論如何在應用程式中使用訊息驗證碼 (MAC)、雜湊和簽章來偵測訊息竄改。 |
密碼編譯的匯出限制 | 使用此資訊來確定您的應用程式使用加密的方式是否可能阻止其在 Microsoft Store 中列出。 |
常見的密碼編譯工作 | 這些文章提供常見密碼編譯工作的範例程式碼,例如建立亂數、比較緩衝區、在字串與二進位資料之間轉換、複製到位元組陣列和從位元組陣列複製,以及編碼和解碼資料。 |