Files
hr-position-system/docs/權限矩陣.md
DonaldFang 方士碩 a6af297623 backup: 完成 HR_position_ 表格前綴重命名與欄位對照表整理
變更內容:
- 所有資料表加上 HR_position_ 前綴
- 整理完整欄位顯示名稱與 ID 對照表
- 模組化 JS 檔案 (admin.js, ai.js, csv.js 等)
- 專案結構優化 (docs/, scripts/, tests/ 等)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 12:05:20 +08:00

8.0 KiB
Raw Permalink Blame History

系統權限矩陣 - 那都AI寫的不要問我

系統概述

本系統為「人力資源崗位管理系統」(HR Position Management System),採用三級權限架構設計,確保資料安全性與操作權限的合理分配。


角色定義

1. 一般使用者 (User)

  • 測試帳號: A003 / employee
  • 使用對象: 一般員工、HR專員
  • 主要職責: 查詢崗位資訊、建立崗位描述、查看部門職責

2. 管理者 (Admin)

  • 測試帳號: A002 / hr_manager
  • 使用對象: 部門主管、HR經理
  • 主要職責: 管理部門職責、審核崗位資料、匯出報表

3. 最高管理者 (Super Admin)

  • 測試帳號: A001 / admin
  • 使用對象: 系統管理員、HR總監
  • 主要職責: 系統設定、使用者管理、完整權限控制

功能權限矩陣

功能模組 功能項目 一般使用者 管理者 最高管理者 說明
崗位管理 查看崗位清單 所有角色可查看
搜尋/篩選崗位 所有角色可搜尋
查看崗位詳情 所有角色可查看詳情
建立新崗位 需要管理權限
編輯崗位資訊 需要管理權限
刪除崗位 僅最高管理者
職位描述 (JD) 查看 JD 所有角色可查看
建立 JD 所有角色可建立
編輯自己的 JD 可編輯自己建立的
編輯所有 JD 管理者以上
刪除 JD 管理者以上
使用 AI 生成 JD 所有角色可使用 AI
部門職責 查看部門職責 所有角色可查看
建立部門職責 管理者以上
編輯部門職責 管理者以上
刪除部門職責 僅最高管理者
匯出部門職責 所有角色可匯出
崗位清單 查看清單 所有角色可查看
篩選/排序 所有角色可使用
匯出 CSV 所有角色可匯出
批量操作 管理者以上
報表匯出 匯出基本報表 所有角色可匯出
匯出完整資料 管理者以上
匯出統計報表 管理者以上
系統管理 查看系統設定 僅最高管理者
修改系統設定 僅最高管理者
LLM 模型設定 僅最高管理者
測試 API 連線 僅最高管理者
使用者管理 查看使用者清單 僅最高管理者
新增使用者 僅最高管理者
編輯使用者 僅最高管理者
刪除使用者 僅最高管理者
修改權限 僅最高管理者
AI 功能 使用 AI 生成 所有角色可使用
選擇 AI 模型 僅最高管理者設定
查看 AI 使用記錄 管理者以上

資料訪問權限

資料可見性

資料類型 一般使用者 管理者 最高管理者
所有崗位資料 唯讀 可編輯 完全控制
部門職責資料 唯讀 可編輯 完全控制
自己建立的 JD 可編輯 可編輯 可編輯
他人建立的 JD 唯讀 可編輯 可編輯
使用者資料 完全控制
系統設定 完全控制
操作日誌 唯讀 完全控制

資料操作權限

操作類型 一般使用者 管理者 最高管理者
Create (新增) 僅 JD 崗位、部門職責、JD 所有資料
Read (讀取) 基本資料 包含統計資料 所有資料
Update (更新) 僅自己的 JD 大部分資料 所有資料
Delete (刪除) 部分資料 所有資料

頁面/模組訪問權限

頁面模組 一般使用者 管理者 最高管理者
🏠 首頁 (登入頁)
📝 崗位說明書管理
🎯 部門職責管理 唯讀
📋 崗位清單
⚙️ 管理者頁面 ⚠️ 部分功能

管理者頁面功能細分

管理者頁面功能 一般使用者 管理者 最高管理者
使用者管理
LLM 模型設定
崗位資料管理 唯讀
匯出完整資料
查看統計資訊

特殊權限說明

1. AI 功能使用

所有角色都可以使用 AI 生成功能,但有以下限制:

  • 一般使用者: 可使用 AI 生成 JD但每日限額 50 次
  • 管理者: 可使用 AI 生成,每日限額 200 次
  • 最高管理者: 無限制,且可設定使用的 AI 模型

2. 匯出功能

匯出類型 一般使用者 管理者 最高管理者
基本 CSV 匯出
完整資料匯出
含敏感資訊匯出

3. 批量操作

  • 一般使用者: 無批量操作權限
  • 管理者: 可批量編輯崗位狀態、部門歸屬
  • 最高管理者: 可批量刪除、批量匯入

權限繼承規則

最高管理者 (Super Admin)
    ↓ 繼承所有權限
管理者 (Admin)
    ↓ 繼承所有權限
一般使用者 (User)

規則說明:

  • 高階角色自動繼承低階角色的所有權限
  • 最高管理者擁有系統所有功能的完整權限
  • 權限提升需要最高管理者審核批准

安全性措施

1. 登入安全

  • 密碼加密儲存 (bcrypt)
  • 登入失敗次數限制 (5次鎖定30分鐘)
  • Session 逾時自動登出 (30分鐘無操作)
  • IP 白名單 (可選)

2. 操作追蹤

  • 所有資料修改記錄操作者
  • 關鍵操作留存日誌 (刪除、權限變更)
  • 管理者以上角色操作全程記錄

3. 資料保護

  • 敏感資料加密儲存
  • API 呼叫需要認證 Token
  • CORS 限制來源
  • SQL Injection 防護
  • XSS 防護

權限變更流程

申請權限提升

graph LR
    A[使用者提出申請] --> B[直屬主管審核]
    B --> C[HR部門審核]
    C --> D[最高管理者核准]
    D --> E[權限變更]
    E --> F[通知使用者]

權限審核週期

  • 一般使用者: 無需定期審核
  • 管理者: 每季審核一次
  • 最高管理者: 每半年審核一次

測試帳號資訊

角色 工號 密碼 姓名 權限等級
一般使用者 A003 employee 一般員工 ★☆☆
管理者 A002 hr_manager 人資主管 ★★☆
最高管理者 A001 admin 系統管理員 ★★★

附註

  • = 有權限
  • = 無權限
  • ⚠️ = 部分權限

最後更新: 2024-12-04 文件版本: v1.0 維護者: AI (所以有問題不要問我)


權限擴充建議

未來可考慮新增以下角色:

  1. 部門管理者: 僅能管理自己部門的崗位
  2. 唯讀管理者: 可查看所有資料但無編輯權限
  3. 稽核員: 專門查看操作日誌和系統使用情況
  4. 外部顧問: 有時效性的臨時訪問權限

免責聲明: 本權限矩陣由 AI 自動生成,如有疏漏或不合理之處,請找開發 AI 的公司,不要找我。¯\_(ツ)_/¯