SAD-005 安全架構與個資保護
| 項目 |
內容 |
| 文件編號 |
SAD-005 |
| 版本 |
1.3(BEAM PMO 2026-09-21 17:10 核定採 B:新增 §3.4 身分轉傳原則) |
| 狀態 |
已核定 |
| 撰寫者 |
Security Architect |
| 審查者 |
SA / 法遵 |
| 對應需求 |
B.2 Authentication / Authorization / Transaction security / Audit Trail / 資料儲存的安全性 / 資料傳輸 |
1. 安全原則
| 編號 |
原則 |
說明 |
| SP-01 |
預設拒絕 |
未明確允許者一律拒絕 |
| SP-02 |
最小權限 |
每個角色、每個服務僅擁有完成職責所需之最小權限 |
| SP-03 |
縱深防禦 |
網路、主機、應用、資料多層控制 |
| SP-04 |
零信任 |
服務間亦須驗證與授權,不因在內網而信任 |
| SP-05 |
個資最小化 |
僅蒐集與處理業務必要之個資 |
| SP-06 |
全程加密 |
傳輸中與靜態資料皆加密 |
| SP-07 |
可稽核 |
所有敏感操作留下不可竄改之軌跡 |
| SP-08 |
失敗安全 |
安全檢查失敗時拒絕服務而非放行 |
| SP-09 |
密鑰隔離 |
金鑰由 HSM 或密鑰管理服務持有,不落應用程式碼 |
| SP-10 |
供應鏈安全 |
第三方套件須經漏洞掃描與授權審查 |
2. 威脅建模(STRIDE)
| 威脅類別 |
具體威脅 |
影響 |
控制措施 |
對應需求 |
|
Spoofing(偽冒) |
偽冒持卡人交易、偽冒內部使用者 |
資金損失 |
MFA、Token 化、裝置綁定、EMV 驗證 |
Authentication |
|
Tampering(竄改) |
竄改交易金額或帳務紀錄 |
帳務錯誤 |
交易紀錄不可變、數位簽章、完整性雜湊、稽核軌跡 |
Audit Trail |
|
Repudiation(否認) |
否認曾執行某筆交易或操作 |
爭議無法釐清 |
不可否認性軌跡、時間戳、操作者識別 |
Audit Trail |
|
Information Disclosure(資訊洩露) |
卡號、身分證字號外洩 |
法遵與商譽 |
加密、遮罩、最小權限、日誌遮罩 |
資料儲存的安全性 |
|
Denial of Service(阻斷服務) |
瞬間大量交易打垮授權 |
服務中斷 |
限流、自動擴容、斷路器、佇列削峰 |
POC-17 |
|
Elevation of Privilege(權限提升) |
客服取得管理員權限 |
內部舞弊 |
RBAC + 資料層級權限、職責分離、雙人覆核 |
Authorization |
2.1 攻擊面分析
flowchart LR
subgraph EXT["外部攻擊面"]
U1["使用者登入"]
U2["合作夥伴 API"]
U3["卡組織連線"]
end
subgraph EDGE["邊緣防護"]
W1["WAF"]
W2["API 閘道<br/>認證 / 限流"]
W3["mTLS"]
end
subgraph APP2["應用防護"]
A1["RBAC + 資料層級權限"]
A2["輸入驗證"]
A3["日誌遮罩"]
end
subgraph DATA["資料防護"]
D1["靜態加密"]
D2["欄位級加密"]
D3["稽核軌跡"]
end
U1 --> W1 --> W2 --> A1
U2 --> W3 --> W2
U3 --> W3
A1 --> A2 --> D1
A3 --> D3
D1 --> D2
3. 身分驗證(Authentication)
3.1 使用者認證
| 項目 |
設計 |
| 認證方式 |
帳號密碼 + 多因子(MFA) |
| 密碼政策 |
長度 ≥ 12、含大小寫與數字與符號、不得與前 5 次相同 |
| 密碼儲存 |
Argon2id 雜湊 + 個別 salt |
| 登入失敗 |
連續 5 次鎖定 15 分鐘,並記錄來源 IP |
| 工作階段 |
JWT(有效期 15 分鐘)+ Refresh Token(有效期 8 小時) |
| 閒置逾時 |
15 分鐘無操作自動登出 |
| 單一登入 |
支援 SSO(SAML 2.0 / OIDC) |
| 敏感操作再驗證 |
調額、沖正、覆核等高風險操作須再次輸入密碼或 OTP |
3.2 服務間認證
| 項目 |
設計 |
| 方式 |
mTLS(服務憑證)+ 服務權杖(Service Token) |
| 憑證管理 |
由憑證管理服務簽發與輪替(有效期 90 天) |
| 授權範圍 |
每個服務僅能呼叫其被允許之服務端點(見 SAD-002 §5) |
實作狀態對照(2026-09-20 更新,誠實揭露):
| 設計項 |
狀態 |
說明 |
| 服務權杖(Service Token) |
✅ 已實作並實測通過
|
OAuth2 client_credentials,由 Keycloak realm cardcore 之 confidential client cardcore-services 簽發;呼叫端由 ClientCredentialsTokenProvider 取得並快取,攜於 Authorization 標頭。詳見 CR-010 與 SCS-022 §7.9
|
| mTLS(服務憑證) |
⚪ 未實作
|
須基礎設施(憑證簽發/輪替/佈署)先就緒;目前僅完成權杖半邊,縱深防禦尚未完整(違反 SP-03 之完整意圖,但已非「內網即信任」) |
| 授權範圍(服務對服務之端點白名單) |
✅ 已實作並實測通過(2026-09-21) |
依 CR-011 階段二:以 SAD-002 §5 互動矩陣為單一真實來源,由 tools/gen_service_acl.py 轉置產生 cardcore-service-acl.yml;不符即 403 CC-PLT-4030。⚠️ 原「未實作」之記載已過時,本列更正 |
⚠️ fail-closed 已就位:入站認證啟用(cardcore.security.enabled=true)但出站憑證未設定完整時,
服務啟動期即失敗(OutboundTokenAutoConfiguration 拋 IllegalStateException),
不會退化為「內網免驗證」——此點確保上述缺口不會被靜默放行,而是顯式暴露。
3.3 認證流程
sequenceDiagram
participant U as 使用者
participant GW as API 閘道
participant IDP as 身分提供者
participant SVC as 領域服務
U->>GW: 帳號密碼 + MFA 驗證碼
GW->>IDP: 驗證憑證
IDP-->>GW: 驗證通過
GW->>IDP: 取得權杖(含角色)
IDP-->>GW: JWT + Refresh Token
GW-->>U: 回傳權杖
U->>GW: 業務請求(Bearer Token)
GW->>GW: 驗證簽章與有效期
GW->>SVC: 轉發請求(含 trace_id 與角色)
SVC->>SVC: 資料層級權限檢查
SVC-->>U: 回應
3.4 身分轉傳原則(Token Relay)——gateway/bff 呼叫領域服務之唯一方式
裁定:BEAM PMO 2026-09-21 17:10 核定採 B(轉傳使用者權杖),不採「為 gateway/bff 開 M2M 白名單」。
依據:CR-011 §11。本節為該裁定之設計層落地;程式設計規格見 SCS-022 §7.11。
| 項目 |
設計 |
| 適用對象 |
api-gateway(8100)/bff-web(8101) |
| 呼叫領域服務時之身分 |
轉傳當前使用者之 JWT,非自身 M2M 身分 |
| 組態 |
cardcore.security.outbound.mode: token-relay(預設 client_credentials) |
| 禁止 |
❌ 以 cc-api-gateway/cc-bff-web 之 M2M 權杖呼叫領域服務(將遭 403 CC-PLT-4030 拒絕) |
| 例外 |
非使用者情境(批次/排程/事件消費)→ 採 M2M client_credentials,且須列於 SAD-002 §5 互動矩陣
|
為何不得以 M2M 替代(三點):
-
失去使用者身分——gateway/BFF 係使用者之代理人(
§3.3 認證流程即為「GW 轉發請求(含角色)」,
轉傳本為原始設計意圖)。改以自身身分呼叫,領域服務將無從得知「誰做的」,
使用者層級授權(§4.1)與稽核軌跡(§6.1 之 actor)皆無從實作——銀行核心之硬需求。
-
違反最小權限(SP-02)——為 gateway/bff 開白名單,等於給予「可呼叫所有服務」之超級身分
(CR-011 §11 選項 A)。
-
現行 ACL 已預留此路徑——使用者權杖之
azp 非 cc- 前綴,本就不受服務間 ACL 管制
(SCS-022 §7.10 規則 3),故無須修改白名單即成立。
⚠️ 配套(消除誤用誘因):CR-010 §9.5 曾為 gateway/bff 補上出站 M2M 組態。
採本原則後該組態不得用於呼叫領域服務——已於組態層改為 token-relay 模式
(SCS-022 §7.11),從機制上移除誤用之可能,而非僅靠文件告誡。
⚠️ 直接刪除該組態不可行:OutboundTokenAutoConfiguration 之 fail-closed 會使
「入站啟用 + 出站憑證未設定」啟動期失敗——故須以模式切換,不是移除。
4. 授權(Authorization)
4.1 權限模型
採 RBAC + 資料層級權限(Data Scope):
| 層次 |
說明 |
| 功能權限 |
角色可否使用某功能(端點層) |
| 資料層級 |
角色可存取哪些資料範圍(如僅自己分行、僅自己承辦案件) |
| 欄位層級 |
敏感欄位是否可見(如完整卡號僅特定角色可見) |
| 操作層級 |
是否需覆核(如超限調額) |
4.2 角色權限矩陣(節錄)
| 功能 \ 角色 |
CSR |
CSR_SUP |
CREDIT |
CREDIT_MGR |
OPS |
RISK |
FIN |
AUDIT |
ADMIN |
| 查詢客戶資料 |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
✅ |
| 查詢完整卡號 |
❌ |
⚠️ |
❌ |
❌ |
⚠️ |
❌ |
❌ |
⚠️ |
❌ |
| 掛失/鎖卡 |
✅ |
✅ |
❌ |
❌ |
❌ |
✅ |
❌ |
❌ |
❌ |
| 額度調整(限額內) |
❌ |
✅ |
✅ |
✅ |
❌ |
✅ |
❌ |
❌ |
❌ |
| 額度調整(超限) |
❌ |
❌ |
❌ |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
| 沖正交易 |
❌ |
⚠️ |
❌ |
❌ |
✅ |
❌ |
⚠️ |
❌ |
❌ |
| 爭議受理 |
✅ |
✅ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
| 批次執行 |
❌ |
❌ |
❌ |
❌ |
✅ |
❌ |
✅ |
❌ |
❌ |
| 清算覆核 |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
✅ |
❌ |
❌ |
| 參數設定 |
❌ |
❌ |
❌ |
⚠️ |
❌ |
✅ |
❌ |
❌ |
✅ |
| 權限管理 |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
✅ |
| 稽核軌跡匯出 |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
❌ |
✅ |
❌ |
✅ 允許 ⚠️ 需覆核或另需權限 ❌ 不允許
完整矩陣(含頁面層級)見 SDD-007 §5。
4.3 職責分離(Segregation of Duties)
| 規則 |
說明 |
| SoD-01 |
交易之建立者不得為其覆核者 |
| SoD-02 |
參數設定者不得為其生效之核准者 |
| SoD-03 |
沖正申請人不得為沖正覆核人 |
| SoD-04 |
權限管理者不得為稽核軌跡匯出者 |
| SoD-05 |
超過門檻之金額操作須雙人覆核 |
5. 加密與個資保護
5.1 傳輸加密
| 通道 |
協定 |
要求 |
| 使用者 ↔ 閘道 |
TLS 1.3 |
停用 TLS 1.0/1.1;停用弱加密套件 |
| 服務 ↔ 服務 |
mTLS 1.3 |
雙向憑證驗證 |
| 服務 ↔ 資料庫 |
TLS 1.3 |
憑證驗證,不允許明文 |
| 服務 ↔ 外部系統 |
TLS 1.3 / SFTP |
依對方能力,至少 TLS 1.2 |
| 卡組織 |
專線 + 加密 |
依卡組織規範 |
5.2 靜態加密
| 資料 |
加密方式 |
| 資料庫檔案 |
透明資料加密(TDE) |
| 個資欄位(卡號、身分證字號) |
欄位級加密(AES-256-GCM) |
| 備份檔 |
加密後儲存 |
| 日誌 |
個資欄位遮罩後寫入 |
5.3 個資分類與處理
| 資料項 |
分類 |
儲存 |
顯示 |
日誌 |
| 卡號(PAN) |
最高敏感 |
加密 |
4111****1234(前 6 後 4) |
禁止 |
| CVV2 |
最高敏感 |
不儲存 |
產生後即回傳 |
禁止 |
| 身分證字號 |
高敏感 |
加密 |
A12345**** |
禁止 |
| 生日 |
敏感 |
明文(需權限) |
需權限 |
遮罩 |
| 手機號碼 |
敏感 |
加密 |
0912***567 |
遮罩 |
| 電子郵件 |
敏感 |
加密 |
abc***@mail.com |
遮罩 |
| 姓名 |
一般 |
明文 |
明文 |
允許 |
| 交易金額 |
一般 |
明文 |
明文 |
允許 |
| 地址 |
敏感 |
加密 |
需權限 |
遮罩 |
CVV2 不得儲存(BRD-001 BR-01-03、POC-06 情境 6-8)。
5.4 金鑰管理
| 項目 |
設計 |
| 金鑰儲存 |
HSM(主金鑰)/密鑰管理服務(資料金鑰) |
| 金鑰輪替 |
資料金鑰每 90 天;主金鑰每年 |
| 金鑰分級 |
依敏感度分級,不同用途不同金鑰 |
| 存取控制 |
金鑰操作須經服務身分驗證與授權 |
| 稽核 |
所有金鑰操作留存軌跡 |
| 禁止 |
金鑰不得出現於程式碼、設定檔或日誌 |
5.4.1 實作機制(W-1,2026-09-19)
金鑰由 common-security 之 KeyProvider 埠介面取得;其實作由環境提供:
| 環境 |
KeyProvider 實作 |
取得方式 |
| SIT/UAT/PROD |
HSM/KMS 版本(由部署方提供,尚未實作) |
服務自行定義 KeyProvider bean;CryptoAutoConfiguration 因 @ConditionalOnMissingBean 自動讓位 |
| 本地/測試 |
StaticKeyProvider(common-security 提供) |
cardcore.security.crypto.* 組態;由 CryptoAutoConfiguration 建立 |
啟用方式:cardcore.security.crypto.static-keys-enabled=true(預設 false,
必須顯式開啟)。未開啟時不產生任何 bean——生產環境若忘記設定 HSM 實作,
啟動會因缺少 KeyProvider 而 fail-fast,而非靜默地以組態金鑰運作。
5.4.2 本地開發之豁免條款(與「禁止」項之衝突及處置)
⚠️ 本節 5.4 之「禁止:金鑰不得出現於程式碼、設定檔或日誌」與本地開發實務衝突。
衝突內容:本地開發須解密 ops/local/init/oracle/*-dev-*-seed.sql 之預先產生密文
(如 party-service 之 MOBILE_ENC),否則服務無法啟動驗證。
HSM 於本地不可得,故本地必須有可用的靜態金鑰。
豁免範圍(僅限本地/測試):
| 項 |
說明 |
| 允許位置 |
各服務 src/main/resources/application-local.yml 之 cardcore.security.crypto.keys.<keyId>(Base64) |
| 金鑰性質 |
非機密之測試常數——材質已公開於版控(含種子檔產生時所用者),不得與任何真實金鑰相同 |
| 強制防護 |
CryptoAutoConfiguration 對作用中 profile 屬生產類(prod/production/prd/uat/sit/staging/preprod,含複合名如 prod-tokyo)時拒絕啟動並拋出例外。該清單刻意不可由組態調整——若可調整,誤設即可繞過防護 |
| 流向限制 |
application-local.yml 僅供本地,禁止流入 SIT/UAT/PROD(SAD-006 §2.1) |
| 啟動可見性 |
啟用時記 WARN,明載「此機制僅供本地/測試;生產環境必須改用 HSM/KMS」 |
因此:5.4「禁止」項之效力限於 SIT/UAT/PROD;本地開發依本豁免條款為之,
且由自動配置之 fail-fast 而非「人工自律」確保不外流。
歷史(已修正):W-1 之前,party-service 之 DevKeyProvider 將金鑰材質
硬編於 Java 程式碼(PartyCryptoConfig)——該作法連本地豁免之形式要求都不符
(金鑰出現於程式碼,且無任何環境防護)。W-1 已改為組態驅動 + fail-fast 防護。
仍待辦(誠實揭露):HSM/KMS 版本之 KeyProvider 尚未實作。
生產環境之金鑰保管、輪替(資料金鑰 90 天)、操作稽核均未實作亦未驗證。
本節 5.4 其餘各項(輪替週期、存取控制、稽核軌跡)目前皆為設計,非實作。
6. 稽核軌跡(Audit Trail)
6.1 軌跡內容
| 欄位 |
說明 |
trace_id |
追蹤識別碼 |
occurred_at |
發生時間(UTC,毫秒精度) |
actor_type |
操作者類型(USER / SERVICE / SYSTEM) |
actor_id |
操作者識別碼 |
actor_role |
操作者角色 |
action |
動作(CREATE / UPDATE / DELETE / APPROVE / REJECT / QUERY_SENSITIVE) |
resource_type / resource_id
|
標的資源 |
before_image |
異動前值(JSON) |
after_image |
異動後值(JSON) |
result |
成功 / 失敗 |
source_ip / user_agent
|
來源資訊 |
6.2 軌跡保證
| 保證 |
機制 |
| 不可竄改 |
僅 INSERT 權限;定期計算雜湊鏈 |
| 完整性 |
每筆軌跡含前一筆雜湊(hash chain) |
| 可查詢 |
依時間、操作者、資源、動作查詢 |
| 保留 |
依 BRD-001 §7.3;不得任意刪除 |
| 匯出 |
僅 AUDIT 角色可匯出 |
6.3 必稽核事件
| 類別 |
事件 |
| 認證 |
登入成功/失敗、登出、MFA 驗證、密碼變更 |
| 授權 |
權限變更、角色指派、存取被拒 |
| 敏感查詢 |
查詢完整卡號、查詢客戶個資 |
| 金額操作 |
額度調整、沖正、退費、點數調整 |
| 參數 |
參數新增/修改/刪除、規則發布 |
| 批次 |
批次啟動、中止、重跑 |
| 匯出 |
報表匯出、軌跡匯出 |
| 系統 |
服務啟停、設定變更、金鑰操作 |
7. 交易安全
| 控制 |
說明 |
| 電文完整性 |
交易金額、卡號以 MAC 或簽章保護 |
| 重放防護 |
交易序號(STAN)+ 時間窗檢核 |
| EMV 驗證 |
ARQC / ARPC 驗證 |
| PIN 驗證 |
由 HSM 執行,PIN Block 不在應用層解密 |
| Token 化 |
行動支付使用 Token,不以真實卡號傳輸 |
| 3D 驗證 |
3-D Secure 交易依卡組織規範 |
| 異常偵測 |
即時風險評分(MCC、地區、金額、頻率) |
| 交易限額 |
單筆、日限額、日限次、專用額度 |
8. 應用安全控制
| 控制 |
說明 |
驗證方式 |
| 輸入驗證 |
依 OpenAPI schema 嚴格驗證 |
契約測試 |
| 輸出編碼 |
防 XSS |
DAST |
| 參數化查詢 |
防 SQL Injection |
SAST + 人工複核 |
| CSRF 防護 |
前端使用 Token |
安全測試 |
| 依賴掃描 |
第三方套件漏洞掃描 |
CI 自動 |
| 秘密掃描 |
禁止硬編碼密鑰 |
CI 自動 |
| 錯誤訊息 |
不對外揭露內部細節 |
人工複核 |
| 檔案上傳 |
型別與大小限制 |
安全測試 |
9. 安全測試
| 測試類型 |
時機 |
工具/方式 |
通過標準 |
| SAST |
每次提交 |
CI 靜態分析 |
0 Critical/High |
| DAST |
每週 |
動態掃描 |
0 Critical/High |
| 依賴掃描 |
每次建置 |
套件漏洞庫 |
0 Critical |
| 滲透測試 |
上線前 |
第三方 |
高風險項全數修復 |
| 權限矩陣測試 |
每次 release |
自動化逐角色測試 |
100% 符合矩陣 |
| 個資遮罩測試 |
每次 release |
自動化 |
100% 欄位正確遮罩 |
| 稽核軌跡測試 |
每次 release |
自動化 |
必稽核事件 100% 留痕 |
| 弱點修補驗證 |
修補後 |
複測 |
原弱點不復現 |
10. 安全檢核清單
| # |
檢核項 |
標準 |
| 1 |
所有端點皆經認證 |
0 匿名端點(除健康檢查) |
| 2 |
所有端點皆經授權 |
100% 掛載授權中介層 |
| 3 |
個資欄位皆加密 |
資料字典標記 PII 者 100% 加密 |
| 4 |
日誌無個資 |
掃描日誌輸出 0 筆個資 |
| 5 |
CVV2 不落地 |
資料庫掃描 0 筆 CVV2 |
| 6 |
金鑰不落程式碼 |
秘密掃描 0 筆;生產環境另須符合 §5.4「禁止」項(不含設定檔)。本地開發依 §5.4.2 豁免條款(組態驅動 + 生產類 profile 拒絕啟動) |
| 7 |
職責分離生效 |
SoD-01~05 自動化測試通過 |
| 8 |
稽核軌跡完整 |
必稽核事件 100% 留痕 |
| 9 |
傳輸加密 |
0 明文通道 |
| 10 |
依賴無高風險漏洞 |
0 Critical |
11. 修訂記錄
| 版本 |
日期 |
修訂者 |
說明 |
| 1.0 |
2026-09-17 |
Security Architect |
初版 |
| 1.1 |
2026-09-19 |
Security Architect |
依 W-1(KeyProvider 推廣) 更新:①新增 §5.4.1 實作機制——載明 KeyProvider 埠介面、各環境之實作對應(SIT/UAT/PROD 為 HSM/KMS,尚未實作;本地為 StaticKeyProvider),及 static-keys-enabled 預設 false 之 fail-fast 設計。②新增 §5.4.2 本地開發豁免條款——處理本節「禁止:金鑰不得出現於程式碼、設定檔或日誌」與本地開發實務之衝突:本地須解密種子密文而 HSM 不可得,故明訂豁免範圍(僅 application-local.yml、材質為非機密測試常數、由自動配置對生產類 profile 拒絕啟動把關、禁止流入 SIT/UAT/PROD)。「禁止」項之效力限於 SIT/UAT/PROD。③**§10 檢核項 6 補註豁免條款之依據。④新增本修訂記錄區**(原文件欠缺)。⑤誠實揭露:HSM/KMS 版本之 KeyProvider 尚未實作;金鑰輪替(90 天)、存取控制、操作稽核皆為設計、未實作亦未驗證
|
| 1.2 |
2026-09-20 |
Security Architect |
依 CR-010(服務間呼叫缺授權標頭) 更新:①**§3.2 新增「實作狀態對照」表**——服務權杖(Service Token)已實作並實測通過(OAuth2 client_credentials + Keycloak cardcore-services);mTLS 半邊仍未實作(待基礎設施);服務對服務之端點白名單(授權範圍)未實作,目前為「持有有效服務權杖即可呼叫」,與 SAD-002 §5 之限縮意圖仍有落差——三者皆誠實揭露、未以「已設計」冒充「已實作」。②明載 fail-closed 已就位:入站認證啟用而出站憑證缺漏時,服務於啟動期即失敗,確保上述缺口顯式暴露而非靜默退化為「內網即信任」。③修正既有文件結構缺陷:§10 檢核清單之第 7–10 項(職責分離/稽核軌跡/傳輸加密/依賴漏洞)原先誤置於 §11 修訂記錄表內(且欄數不合),已移回 §10 |
| 1.3 |
2026-09-21 |
WorkBuddy AI |
①新增 §3.4「身分轉傳原則(Token Relay)」(BEAM PMO 2026-09-21 17:10 核定採 B:gateway/bff 呼叫領域服務轉傳使用者權杖,不以自身 M2M 身分替代;依據 CR-011 §11,程式規格見 SCS-022 §7.11)。②更正 §3.2 之過時記載——「授權範圍(服務對服務端點白名單)⚪ 未實作」已過時:CR-011 階段二(2026-09-21)已依 SAD-002 §5 實作並實測通過(不符即 403 CC-PLT-4030)。③明訂配套:CR-010 §9.5 為 gateway/bff 補之出站 M2M 組態改以 token-relay 模式取代,不得直接刪除(fail-closed 會導致啟動失敗) |