使用者驗證(User authentication)是一種存取控制程序,用於在給予系統、網路或應用程式的存取權限之前,確認任何使用者(亦即,人員或機器)是否為其所聲稱的真實身分。雖然驗證流程可能有所不同,但共同目標都是保護敏感資訊與資源避免未經授權的存取。
在某些情況下,使用者驗證只需要使用者名稱(user id / account name)與密碼;而在其他情況下,則需使用更複雜的組合來驗證身分。
使用者驗證的運作方式
在簡單的驗證流程中,使用者會輸入其憑證,例如使用者名稱與密碼。系統會將這些憑證與儲存的資料進行比對;若輸入資料與儲存資料相符,系統便會驗證該使用者的身分,並授予其對資源(例如應用程式與系統)的存取權限。
另一個與驗證相關的部分是存取權限,它與驗證程序緊密相關。使用者的驗證會提供有關其被授權存取哪些內容(例如,內容和控制台),以及在該資源上允許執行哪些操作(例如,讀取、寫入、編輯、刪除、複製或分享)。當經過驗證的使用者存取某個資源時,他們只能依照被指派的權限進行操作。
使用者驗證的目的
使用者驗證能夠保護敏感資料、協助法遵規範,並實現資源的個人化存取。
使用者驗證可透過驗證使用者(亦即,人員與機器)的身分並強制執行存取限制,來保護數位系統與資料不受未經授權的存取與濫用,同時也是組織更廣泛的資安架構中的關鍵組成部分。
使用者驗證的具體功能包括以下幾項。
存取控制(access control)
使用者驗證會與存取控制機制配合運作,根據指派給使用者的權限,限制其對資源、應用程式或資料的存取。
稽核(auditing)
在識別與驗證使用者及其活動的過程中,系統會保留記錄,追蹤誰在何時、出於何種目的存取了哪些資訊。這些記錄可用於稽核、法規遵循與鑑識記錄分析。
資料保護(data protection)
使用者驗證透過基於有效憑證和權限來限制存取權限,降低資料外洩及其他網路威脅的風險,以防止敏感資料遭未經授權的揭露、竊取或竄改。
個人化(personalization)
透過使用者驗證,可以識別個別使用者,根據其偏好與權限,為其量身打造服務、設定與內容,進而實現個人化的資源體驗。
防止未經授權的操作
使用者驗證可用來控管經驗證的使用者在已存取資源中的操作,防止可能損害系統、洩露資料或導致違反法規的未經授權的操作。
法遵規範(regulatory compliance)
多數組織皆受法規規範,須對財務記錄、個人識別資訊 (Personally Identifiable Information , PII) 以及受保護的健康資訊 (Protected Health Information , PHI) 等敏感資料進行嚴格的保護。使用者驗證有助於管控及監控對敏感資料的存取,以符合這些法規的要求。
安全的線上服務
許多線上服務,例如銀行、購物及使用者入口網站,都會收集並使用敏感資訊。透過使用者驗證,可確保與這些服務的互動安全可靠,並由合法帳戶持有人執行,以防止未經授權的活動。
使用者驗證通訊協定
使用者驗證通訊協定是一組規則,用以規範使用者在存取系統前的驗證方式。這些通訊協定促進使用者與服務之間的安全通訊,並定義驗證的執行方式。
以下是幾種使用者驗證通訊協定的例子。每種通訊協定皆有其優勢與限制;選擇最適合的通訊協定需視特定適用情況中的系統與安全需求而定。
詢問握手驗證通訊協定 (Challenge-handshake authentication protocol , CHAP)
CHAP 是一種網路通訊協定,用於向身分驗證實體驗證網路主機或使用者的身分。它透過在連線期間定期驗證使用者或主機的身分,提供持續性的保護機制。
CHAP 採用三向交握程序,過程包括由驗證方發出詢問、使用者回傳雜湊過的回應,以及對該回應的驗證。此機制有助於防止重播攻擊,並確保網路通訊的安全性。CHAP 常用於點對點通訊協定 (Point-to-Point Protocol ,PPP) 連線,例如虛擬私人網路 (VPN) 和網際網路服務提供商 (ISP) 中。
可延伸的驗證通訊協定 (Extensible Authentication Protocol , EAP)
EAP 在單一通訊協定中支援多種使用者驗證方式。它提供靈活的驗證機制,包括密碼、數位憑證、公鑰加密、智慧卡及權杖型驗證等。EAP 可用於各種網路環境中的安全驗證,如 Wi-Fi、VPN 和撥接連線等。
Kerberos
Kerberos 是一種專為用戶端-伺服器環境設計的網路驗證通訊協定,採用金鑰加密進行安全驗證。它發出帶有時間戳記的票證,向伺服器證明使用者的身分。Kerberos 用於安全的企業內部網路以及 Microsoft Active Directory 環境中。
OAuth
OAuth 一種開放標準的存取授權機制,可讓第三方服務在不洩露使用者密碼的情況下,代表使用者交換網路資源。它使用權杖型驗證進行身分驗證,授權第三方存取伺服器資源,例如使用第三方憑證(例如瀏覽器或社群媒體平台)登入網站。
OpenID Connect (OIDC)
OIDC 是基於 OAuth 2.0 建立的使用者驗證通訊協定,專為網頁與行動應用程式提供身分驗證功能。它支援單一登入 (Single Sign On , SSO),並透過授權伺服器執行的驗證來確認使用者身分,以增強安全性並提升使用者體驗。
密碼驗證通訊協定 (Password authentication protocol , PAP)
PAP 是一種用於 PPP 連線的使用者驗證方法。它涉及從用戶端將明文密碼傳送至伺服器。
雖然 PAP 實作上相對簡單,但由於密碼易遭攔截,因此被視為不安全的通訊協定。EAP 已在很大程度上取代了 PAP,但某些舊有系統仍在使用。
RADIUS(遠端授權撥接使用者服務)
RADIUS(Remote Authentication Dial In User Service) 是一種網路通訊協定,用於提供集中式驗證、授權與帳務管理 (認證(Authentication)、授權(Authorization)、帳務(Accounting), AAA) 服務。它可用於對連線至網路的遠端使用者進行安全驗證,以支援不同網路環境中的存取控制和使用者管理。
RADIUS 最初是為管理撥接網路的存取而設計,但現今已廣泛應用於各種網路類型,包括無線、有線網路及 VPN。ISP 最常利用 RADIUS 來管理對網路或電子郵件服務的存取。
SAML(安全聲明標記語言)
SAML(Security Assertion Markup Language) 是一種以 XML 為基礎的架構,用於在不同實體間交換身分驗證與授權資料。它常用於身分提供者與服務提供者之間的資訊交換,也廣泛應用於單一登入 (SSO) 服務。
安全通訊端層 (SSL) 與傳輸層安全性 (TLS)
SSL 和 TLS 是專為網路安全資料傳輸而設計的使用者驗證通訊協定。目前,它們也用於使用憑證的伺服器驗證和用戶端驗證。
SSL 是 TLS 的前身,而 TLS 則是其更安全且更新的版本。TLS 被廣泛應用於需要在網際網路上安全傳輸資料的情境,例如瀏覽器、電子郵件、即時通訊、網頁瀏覽以及其他應用程式中。
使用者驗證原則的優點
- 展現對安全性的承諾,以增加顧客、客戶與合作夥伴之間的信任
- 支援從任何位置安全存取組織資源,以利支援遠端使用者
- 透過定義明確的帳號建立、管理與終止指示,以獲得更佳的使用者管理
- 強化防禦措施,以防範試圖利用使用者行為的安全威脅
- 協助組織遵循法規所訂定的嚴格資料隱私保護要求
- 提供防範網路釣魚(phishing)及其他社交工程(Social Engineering)攻擊的保護機制
- 提供詳細的存取嘗試與系統互動的稽核記錄
- 降低可能導致資料外洩(Data Breach)和未經授權存取的網路攻擊(Cyber Attack)風險
- 透過自動化驗證系統,簡化存取管理流程
使用者驗證類型
使用者驗證機制可根據其用以驗證個人身分的要素,大致分類如下。以下列出多種常見的使用者驗證類型。
五種常見的使用者驗證類型
您擁有的特徵(個人特徵)
這指的是使用者身分驗證的生物特徵驗證方法,例如:
- 臉部辨識
- 指紋掃描
- 虹膜掃描
- 語音辨識
您所在的位置(地理位置)
此驗證因子根據使用者所在地點進行身分驗證。位置型使用者驗證方法包括:
- 基於地理位置的驗證 – 利用使用者裝置的全球定位系統 (GPS) 功能來判定其目前所在位置
- IP 地理位置:分析使用者裝置的 IP 位址,以估算其地理位置
- 近場驗證 – 利用藍牙、近場通訊 (NFC) 或其他近距離通訊技術,以確認使用者裝置是否與受信任的驗證裝置(例如智慧型手機或穿戴式裝置)位於實體上的接近範圍內
- Wi-Fi 網路驗證:使用者僅在連接到特定 Wi-Fi 網路(例如,企業網路或受信任的熱點)時,才能進行身分驗證
您所做的事情(行為)
與使用者獨有的行為模式關聯的行為型驗證方式,例如:
- 步態識別
- 互動模式
- 滑鼠移動
- 簽名識別
- 打字節奏
- 語音辨識
您擁有的物品(持有物)
這是一種權杖型使用者驗證方式,透過軟體權杖(Token)或應用程式(Application)在裝置上產生一次性密碼 (one-time password , OTP),例如:
- 鑰匙扣
- 行動裝置
- 安全權杖 (Security Tokens)
- 智慧卡
您已知的資訊(知識)
知識型驗證依賴僅有使用者本人應該知道的資訊,例如:
- 密碼
- 個人識別碼 (PIN)
- 安全問題的答案可以是靜態的(亦即,在帳戶設定時由使用者自行設定),也可以是動態的(亦即,根據公開資訊隨機選擇)
其他類型的使用者驗證
除了上述常見的驗證因子外,隨著技術能力的進步,身分驗證的概念也正逐漸擴展,涵蓋更多細緻的驗證要素。
用來擴充或補充傳統使用者驗證因子的新興要素包括以下幾項。
自適應驗證 (Adaptive authentication)
亦稱為風險型驗證,會根據使用者行為、所在位置、裝置安全狀態,以及所存取資料的類型等使用情境因素的風險評估結果進行動態調整。
憑證型驗證 (Certificate-based authentication)
數位憑證由受信任的憑證機構 (Certificate Authority , CA) 驗證,用於確認使用者或裝置的身分。
裝置信任分數
裝置信任分數是一項用來評估裝置安全狀態的指標,根據的因素包括軟體更新、組態、安全事件、裝置健康狀態,以及是否越獄(取得裝置最高系統權限)等。
時間型驗證
時間型驗證是根據使用者進行驗證的時間點來確認其身分。常見例子包括時間型一次性密碼 (Time-based one-time passwords , TOTP) 與限時驗證權杖。
使用者驗證是有效的第一道防線
使用者驗證通常是保護數位資產存取權限的第一道防線,有助於維護系統與資訊的機密性、完整性與可用性(CIA Triad)。有效的使用者驗證系統與流程能防止未經授權的存取、資料外洩與身分盜用。使用者驗證應做為多層次安全防護機制中的第一道防線,以有效抵禦各類網路威脅。