合規控制報告(SOC2 / ISO 27001)

AutoControl 已內建稽核員關注的*控制項* —— 網路出口允許清單、即時憑證租約、 maker-checker 審批、密鑰掃描器、稽核記錄、CycloneDX SBOM。 build_compliance_report() 把「這些控制項是否到位?」轉化為稽核員可讀的**控制證 據報告**:你提供一個扁平的 evidence 觀察事實對應表,每個編目控制項即被標記為 satisfied / gap / not_assessed

它是報告*輔助工具*,非認證 —— 它記錄你所聲明的證據,並不自行驗證控制項。純標準函式 庫,不匯入 PySide6

對應的控制項

無頭 API

from je_auto_control import build_compliance_report, write_compliance_report

report = build_compliance_report({
    "egress_allowlist_enforced": True,
    "jit_credentials_used": True,
    "secrets_scanned": True,
    "audit_logging_enabled": True,
    "change_approval_required": True,
    "sbom_generated": True,
}, frameworks=["SOC2"])          # frameworks 為選用

print(report["summary"])         # {satisfied, gap, not_assessed, total}
write_compliance_report(report, "build/compliance.html", fmt="html")

當控制項的證據鍵為真時為 satisfied,明確為假時為 gap,鍵不存在時為 not_assessed —— 因此部分證據字典會產生誠實的缺口分析。render_compliance_html 回傳獨立的 HTML 表格;``write_compliance_report`` 寫出 jsonhtml

執行器指令

AC_compliance_report 接受 evidence``(JSON 物件,或視覺化建構器傳入的 JSON 串)、選用的 ``frameworks 清單/逗號字串,以及選用的 path + fmt 以寫出檔案; 回傳 {summary, controls, path?}。相同操作亦提供為 MCP 工具 ac_compliance_report,以及 Script Builder 中 Report 分類下的指令。