issue 133 客戶敏感欄位與印鑑卡 SoD 決策鏈
這頁保留客戶姓名/身分證/印鑑卡等敏感欄位的權限決策 source。穩定模型應併回 RBAC 授權權威與現況 與客戶管理 concept。
最終結論
客戶姓名、身分證、印鑑卡等欄位不是單靠前端 readonly 控制。它們屬於業務 SoD:一般使用者不應任意改,主管/管理者等特定授權才可改,且後端需要 enforce。
決策鏈
| 來源 | 內容 |
|---|---|
| #219 | 客戶管理編輯頁欄位與編輯權限問題。 |
| #179 | 印鑑卡主管操作 permission code 對應 RBAC 角色。 |
| #133 | 權狀修改權限角色清單未定義,牽涉客戶/權狀敏感欄位能否被改。 |
| #246 | D1 類缺口:SoD 不能只靠 UI,後端也要有權限/來源限制。 |
現行 code 錨點
| 目的 | 錨點 |
|---|---|
| 客戶敏感欄位 API | CustomerController |
| 客戶修改規則 | CustomerModificationManager |
| 印鑑卡相關資料 | SealCard / SealCardDto |
| 後端授權 | ApiPermissionFilter.OnAuthorizationAsync |
| 前端 gate | usePermission |
注意事項
- 前端 readonly 只是 UX,不是安全邊界。
- source=purchase 這類來源資料要看後端規則,不能只看編輯頁欄位。
- 權狀修改與客戶修改跨模組,需避免只在其中一頁補 gate。