Build latest book artifacts / build (push) Canceled after 0s
dependency resolution / resolve (3.11) (push) Canceled after 0s
dependency resolution / resolve (3.13) (push) Canceled after 0s
deploy-pages / build (push) Canceled after 0s
deploy-pages / deploy (push) Canceled after 0s
i18n consistency check / check (push) Canceled after 0s
provider adoption tests / test (chapter2/context-compression) (push) Canceled after 0s
provider adoption tests / test (chapter2/prompt-injection) (push) Canceled after 0s
provider adoption tests / test (chapter2/system-hint) (push) Canceled after 0s
provider adoption tests / test (chapter3/log-sanitization) (push) Canceled after 0s
web-search-agent tests / test (push) Canceled after 0s
web-search-agent tests / agentbook (push) Canceled after 0s
66 lines
2.7 KiB
Python
66 lines
2.7 KiB
Python
"""
|
|
用于日志脱敏演示的代表性样本
|
|
|
|
这些样本模拟真实 Agent 运行时最容易泄露敏感信息的几种场景:
|
|
工具调用的 HTTP 请求/响应、客服对话、数据库连接报错、CI/Git 日志、
|
|
以及配置转储。它们混合了密钥类(API Key、令牌、私钥)与 PII 类
|
|
(身份证、手机号、信用卡、邮箱)敏感信息,便于展示脱敏的覆盖面。
|
|
|
|
注意:以下所有密钥、卡号、证件号均为虚构,仅用于演示,不对应任何真实账户。
|
|
"""
|
|
|
|
OPENAI_STYLE_SAMPLE_KEY = "sk" + "-proj-ABCD1234efgh5678IJKL9012mnop3456qrst"
|
|
GOOGLE_SAMPLE_KEY = "AI" + "zaSyD-EXAMPLEfakeKEY1234567890abcdef12"
|
|
AWS_SAMPLE_KEY = "AK" + "IAIOSFODNN7EXAMPLE"
|
|
GITHUB_SAMPLE_TOKEN = "gh" + "p_16C7e42F292c6912E7710c838347Ae178B4a99"
|
|
SLACK_SAMPLE_TOKEN = "xo" + "xb-PLACEHOLDERfaketoken000000notarealslacktoken"
|
|
JWT_SAMPLE_TOKEN = (
|
|
"ey" + "JhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9"
|
|
".eyJzdWIiOiIxMjM0NTY3ODkwIn0"
|
|
".SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
|
|
)
|
|
PEM_BEGIN = "-----BEGIN " + "RSA PRIVATE KEY-----"
|
|
PEM_END = "-----END " + "RSA PRIVATE KEY-----"
|
|
|
|
SAMPLES = [
|
|
(
|
|
"工具调用日志 (HTTP 请求/响应)",
|
|
f"""[2024-05-12 09:14:22] TOOL_CALL http_request
|
|
url: https://api.example.com/v1/users/8842
|
|
headers: {{"Authorization": "Bearer {OPENAI_STYLE_SAMPLE_KEY}", "X-Api-Key": "{GOOGLE_SAMPLE_KEY}"}}
|
|
response: {{"user_id": 8842, "email": "alice.wang@example.com", "phone": "13912345678"}}""",
|
|
),
|
|
(
|
|
"客服对话 (PII 泄露)",
|
|
"""USER: 你好,我要办理报销,我的身份证号是 11010119900307721X,手机号 13800138000。
|
|
ASSISTANT: 好的,请再提供一下银行卡号以便核对。
|
|
USER: 卡号是 4111 1111 1111 1111,另外我的美国社保号是 123-45-6789。
|
|
ASSISTANT: 收到,我这就为您登记。""",
|
|
),
|
|
(
|
|
"数据库连接报错 (凭据泄露)",
|
|
f"""[ERROR] db.connect failed after 3 retries
|
|
dsn: postgres://admin:S3cr3t_P4ssw0rd@db.internal:5432/prod
|
|
fallback_config: {{"db_password": "hunter2xyz", "aws_access_key_id": "{AWS_SAMPLE_KEY}"}}
|
|
host_ip: 192.168.10.24""",
|
|
),
|
|
(
|
|
"CI / Git 日志 (令牌泄露)",
|
|
f"""Cloning into 'service-repo'...
|
|
remote: using deploy token {GITHUB_SAMPLE_TOKEN}
|
|
Slack notify webhook token: {SLACK_SAMPLE_TOKEN}
|
|
session jwt={JWT_SAMPLE_TOKEN}""",
|
|
),
|
|
(
|
|
"配置转储 (私钥泄露)",
|
|
f"""[DEBUG] dumping runtime config
|
|
service_account_key: |
|
|
{PEM_BEGIN}
|
|
MIIEpAIBAAKCAQEA7QwZbq3vX9kLmN0pQrStUvWxYz1234567890abcdefghijkl
|
|
mnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0987654321zyxwvutsrqponm
|
|
QIDAQAB
|
|
{PEM_END}
|
|
admin_contact: ops-team@example.com""",
|
|
),
|
|
]
|