題幹與適用場景
一款 SaaS 產品讓客服、分析師和管理員查看客戶資料。安全團隊要求客服只能看到部分聯絡方式,分析師看到不可逆遮罩,少數合規角色才可查看完整值。現行系統只有整張表的存取控制,客戶透過匯出檔案繞過頁面限制。
請判斷是否提供欄位級動態遮罩,並設計最小可行的策略、角色、稽核和匯出體驗。BigQuery 與 Snowflake 文件都把遮罩放在欄級策略和查詢時決策上;題目考察你能否把技術能力轉成清晰的客戶價值和風險邊界。
面試官考察點
重點包括客戶任務與威脅模型、敏感欄位分類、角色與條件策略、可逆和不可逆變換、查詢與快取效能、匯出/API 一致性、策略誤配、稽核和商業驗證。
回答前需要釐清的問題
- 哪些欄位和角色必須遮罩,是否有地區、租戶或目的限制?
- 客戶需要部分顯示、雜湊比對、格式保持還是完全隱藏?
- 策略作用於 UI、API、匯出、搜尋索引和快取的哪些路徑?
- 遮罩失敗時預設拒絕、返回空值還是阻斷整條查詢?
- 是否有現成的分類標籤、權限目錄和稽核事件基線?
30 秒回答框架
「先驗證高風險欄位和具體任務,再提供少量可組合的角色與目的策略。預設最小揭露,查詢時執行遮罩,匯出和 API 重用同一策略引擎。可逆解密需要額外審批和稽核,不可逆遮罩用於分析。用誤曝率、誤拒率、查詢 p95、匯出一致性和付費採用率驗證價值。」
分步驟深入解答
第一步:確定任務、欄位與風險
與安全、客服、分析和合規角色訪談,列出查看、搜尋、比對、匯出和更正任務。按欄位敏感度建立標籤,例如公開、內部、個人資料和高敏憑證;不要把所有欄位都塞進一個「敏感」開關。
把策略綁定主體、資源、目的和環境條件。地區、租戶、裝置信任和工單狀態可能影響決策,但第一版應只支援少量可解釋條件。
第二步:設計遮罩變換與預設行為
提供完全隱藏、部分顯示、雜湊、格式保持和自訂函數等有限變換。變換必須宣告是否可逆、是否保持排序/比對語意和最大輸入長度。
預設最小揭露,策略缺失或判定失敗時拒絕明文。可逆值需要短時授權、二次確認和原因;不可逆遮罩可用於聚合和去重,但不能被誤稱為加密。
第三步:統一 UI、API、匯出與快取
遮罩決策應在共用策略層完成,UI 只是渲染結果。API、批次匯出、搜尋索引、非同步任務和快取都必須帶上主體、租戶、策略版本和用途上下文,避免頁面隱藏但下載介面洩露。
快取鍵不能把明文結果重用給低權限主體。策略更新要使相關快取失效,並記錄舊版本與新版本的影響範圍。
第四步:控制效能與故障模式
把常用策略編譯為可快取的決策計畫,減少每行重複解析;對大量匯出採用分塊、限流和非同步任務。測量策略評估、底層查詢和遮罩函數各自的延遲。
策略服務不可用時,低風險非敏欄位可使用短時快照,高敏欄位預設拒絕明文。遮罩函數逾時或異常不能靜默返回原值;產品要提供可恢復錯誤和工單路徑。
第五步:建立稽核與治理閉環
記錄策略版本、主體、欄位標籤、用途、決策結果、變換類型和匯出範圍,但不要把明文寫進稽核日誌。高敏解封事件需要獨立告警、審批和複核。
策略發布前做衝突檢查、樣本回放和雙人審批。提供「誰在什麼條件下能看到什麼」的可視化解釋,減少客戶把權限問題誤判成資料遺失。
第六步:驗證客戶價值與風險護欄
用客戶真實任務做驗收:客服處理工單、分析師比對重複記錄、稽核員匯出證據。測量明文誤曝率、合法請求誤拒率、查詢 p95、匯出一致性和策略修改後的快取殘留。
商業上比較高敏產業採用率、升級收入、支援工單和安全事件下降。先針對受監管客戶做受控試點,再決定是否開放自助策略編輯;避免用一個客戶的複雜條件拖累所有租戶。
高品質示範回答
我會先驗證高風險欄位和任務,再提供有限的角色、目的和環境條件。預設最小揭露,UI、API、匯出、搜尋和快取共用策略引擎;可逆明文需要短時授權與稽核,不可逆遮罩用於分析。策略帶版本、解釋和回滾,服務故障時高敏欄位拒絕明文。用誤曝率、誤拒率、查詢 p95、匯出一致性和付費採用率判斷是否擴展。
常見錯誤
- 只隱藏頁面欄位 → API 或匯出仍洩露 → 所有輸出路徑共用策略。
- 把遮罩當成加密 → 客戶錯誤理解可逆性 → 明確變換性質和金鑰邊界。
- 策略失敗時返回原值 → 故障變成明文洩露 → 高敏欄位預設拒絕。
- 快取不帶策略版本 → 低權限使用者命中舊明文 → 按主體、版本和用途隔離快取。
- 支援任意條件 → 難以解釋、測試和計費 → 先提供有限可組合條件。
追問及應對
追問一:部分顯示和雜湊如何選擇?
部分顯示適合人工識別和回撥,雜湊適合比對與去重;兩者都要說明碰撞、推斷和格式洩露風險,不能取代權限控制。
追問二:如何支援客服臨時查看完整值?
要求工單或業務原因、短時授權、二次確認和全量稽核;到期自動撤銷,並限制批次匯出和複製。
追問三:策略評估會不會拖慢報表?
快取編譯後的計畫,按查詢批次評估主體和用途,並對大量任務非同步化;持續監控策略、查詢和變換函數的獨立 p95。
追問四:怎樣證明沒有繞過路徑?
枚舉 UI、API、匯出、搜尋、快取和非同步任務,做權限矩陣與跨角色回放;對每條路徑檢查策略版本、結果形態和稽核記錄。