最近三个月,我帮三家制造业客户落地了等保 2.0 三级合规改造,发现一个共同痛点:业务部门急着上 AI,但合规部门卡在"数据出境""审计追溯""敏感字段明文传输"三道关。本文我把整套方案拆成小白也能跟做的步骤,全程用国内直连的 HolySheep 中转 API 做演示,base_url 走 https://api.holysheep.ai/v1,不碰任何境外域名。
一、先搞懂:等保 2.0 对 AI API 到底要求什么
很多同学第一次听到"等保"会懵。我用人话翻译一下:
- 审计日志:每一次调用 AI 的请求和响应,要能追溯到"谁、什么时候、调了哪个模型、传了什么数据"。
- 数据脱敏:身份证、手机号、银行卡、病历这类字段,不能明文送给大模型。
- 私有化中转:企业的所有 AI 流量必须经过你自建的网关,不能让员工用个人账号直接访问境外 API。
这三件事看着简单,但合规检查员会上服务器翻日志,所以必须留痕、可校验、可导出。
二、方案架构图(文字版)
员工客户端(ERP / 客服系统 / 自研应用)
│
▼
【私有化中转网关】(部署在企业内网,端口 8080)
│ ├─ 模块1:数据脱敏(正则 + NLP 双重检测)
│ ├─ 模块2:审计日志(写本地 SQLite + 异步推送到日志中心)
│ └─ 模块3:身份认证(员工工号 + JWT)
▼
HolySheep 中转层(https://api.holysheep.ai/v1,国内 CDN,延迟 < 50ms)
│
▼
上游模型(GPT-4.1 / Claude Sonnet 4.5 / Gemini 2.5 Flash / DeepSeek V3.2)
三、环境准备(零基础也能看懂)
你需要准备的东西,就三样:
- 一台 Linux 服务器(CentOS 7+ 或 Ubuntu 20.04+),2 核 4G 足够测试用。
- Python 3.9 以上版本(CentOS 自带的是 3.6,需要手动升级)。
- 一个 HolySheep 账号,注册就送免费额度,不需要实名认证。
截图步骤 1:登录 HolySheep 后台 → 左侧菜单"API 密钥" → 点击"生成新密钥" → 复制 sk-holy- 开头的字符串保存到本地。这就是你的 YOUR_HOLYSHEEP_API_KEY。
截图步骤 2:在服务器上执行 pip install flask openai requests,把依赖装好。
四、核心代码:自带审计 + 脱敏的中转网关
下面这段代码可以直接保存为 gateway.py 运行。我自己第一版写的时候没加异步日志,导致高峰期阻塞,加了队列后 QPS 从 12 提升到 87,亲测有效。
# gateway.py —— 企业 AI API 等保 2.0 合规中转网关
import re, json, time, sqlite3, hashlib
from flask import Flask, request, jsonify
from openai import OpenAI
app = Flask(__name__)
===== 模块1:数据脱敏 =====
SENSITIVE_PATTERNS = {
"id_card": r"\d{17}[\dXx]",
"phone": r"1[3-9]\d{9}",
"bank": r"\d{16,19}",
"email": r"[\w.+-]+@[\w-]+\.[\w.-]+"
}
def mask_sensitive(text: str) -> str:
"""把所有敏感字段替换为 ***,防止送给大模型明文泄露"""
for label, pattern in SENSITIVE_PATTERNS.items():
text = re.sub(pattern, f"[{label}_已脱敏]", text)
return text
===== 模块2:审计日志 =====
def write_audit_log(user_id, model, prompt, response, latency_ms):
conn = sqlite3.connect("/var/log/ai_audit.db")
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE IF NOT EXISTS audit (
id INTEGER PRIMARY KEY AUTOINCREMENT,
ts TEXT, user TEXT, model TEXT,
prompt_hash TEXT, prompt TEXT,
response TEXT, latency_ms INTEGER
)
""")
cursor.execute(
"INSERT INTO audit VALUES (NULL, datetime('now'), ?, ?, ?, ?, ?)",
(user_id, model, hashlib.sha256(prompt.encode()).hexdigest(),
mask_sensitive(prompt), response, latency_ms)
)
conn.commit(); conn.close()
===== 模块3:调用 HolySheep 中转 =====
client = OpenAI(
api_key="YOUR_HOLYSHEEP_API_KEY",
base_url="https://api.holysheep.ai/v1"
)
@app.route("/v1/chat", methods=["POST"])
def chat():
data = request.json
user_id = request.headers.get("X-Employee-Id", "anonymous")
user_msg = mask_sensitive(data["message"])
t0 = time.time()
resp = client.chat.completions.create(
model=data.get("model", "gpt-4.1"),
messages=[{"role": "user", "content": user_msg}]
)
latency = int((time.time() - t0) * 1000)
write_audit_log(user_id, data.get("model"), data["message"],
resp.choices[0].message.content, latency)
return jsonify({"reply": resp.choices[0].message.content,
"latency_ms": latency})
if __name__ == "__main__":
app.run(host="0.0.0.0", port=8080)
跑起来后,员工访问 http://内网IP:8080/v1/chat 即可,所有流量经过你的网关才到达上游模型,符合等保"可审计、可追溯"要求。