《Cursor文档》-合规与监控

合规要求清晰了解谁在何时因何原因做了什么。本篇文档涵盖审计日志、AI 代码追踪、认证,以及如何满足监管要求。

审计日志

审计日志记录安全事件和管理操作。可在企业版方案上使用审计日志,企业版方案提供审计日志,可帮助您满足合规要求并调查安全事件。

我们会记录以下事件:

  • **身份验证事件:**登录和登出
  • **用户管理:**添加用户 (通过 SSO、邀请、注册、创建团队或自动注册) 、移除用户、更改角色以及设置个人支出限额
  • **API 密钥管理:**创建和撤销团队及用户 API 密钥
  • **团队设置:**团队范围和按用户设置的支出限额、管理员设置、团队名称变更、Slack 集成设置以及代码仓库映射
  • **代码仓库管理:**创建、删除代码仓库以及更新其设置
  • **云端代理环境:**创建、更新、恢复环境以及更改生命周期
  • **目录组:**创建、更新、删除目录组,更改成员资格和修改权限
  • **隐私设置:**更改用户或团队级别的隐私模式
  • **团队规则:**管理自定义工作流的团队规则 (包括 Bugbot 规则)
  • **团队命令:**创建、更新和删除自定义命令
  • **Grok Bot:**创建 bot、更改成员访问权限、Team Setup 清单和例程
  • **集成:**MCP 认证和 Slack 账户关联

我们不会记录智能体响应或生成的代码内容。

建议改用钩子记录提示词和代码。

访问审计日志

团队仪表盘中查看审计日志。此功能仅适用于企业版方案,且需要管理员权限。

流式审计日志

为满足合规和安全监控需求,您可以将审计日志流式传输到现有系统:

  • SIEM 系统 (Splunk、Sumo Logic、Datadog 等)
  • 用于自定义处理的 webhook 端点
  • 用于长期保留的 S3 存储桶
  • Elasticsearch 或 CloudWatch 等日志聚合工具

如需接收流式审计日志,请联系 hi@cursor.com。流式传输的事件包含 application_type

日志格式

审计日志以 JSON 格式提供,包含元数据和特定于事件的字段:

{
  "metadata": {
    "timestamp": "2024-10-14T18:30:45Z",
    "event_id": "evt_abc123xyz789"
  },
  "team_id": "team_xyz789",
  "ip_address": "203.0.113.42",
  "user_email": "alice@company.com",
  "application_type": "grok_bot",
  "event": { /* 事件专属字段 */ }
}

application_type 表示执行该操作的产品:grok_bot 表示 Grok Bot,cursor 表示 Cursor 桌面端、iOS、CLI、Agent SDK、cursor.com 以及 Admin API。当无法确定应用时,该字段为空字符串;在该字段引入之前写入的记录也为空。旧记录不会回填。

event_type 的取值包括:

  • login - 用户登录事件 (Web 或应用)
  • logout - 用户登出事件
  • add_user - 添加用户 (来源:ssoinvitesignupcreateTeamautoEnroll)
  • remove_user - 从团队中移除用户
  • update_user_role - 角色变更 (OWNER、ADMIN、MEMBER)
  • user_spend_limit - 单个用户的支出限额变更
  • team_api_key - 团队 API 密钥操作 (创建、撤销)
  • user_api_key - 用户 API 密钥操作 (创建、撤销)
  • team_settings - 团队设置变更,包括:
  • team_hard_limit_dollars - 团队整体支出硬性限额
  • team_hard_limit_per_user_dollars - 每位用户的硬性限额
  • per_user_monthly_limit_dollars - 每位用户的月度支出限额
  • admin_only_usage_pricing - 仅管理员可见的用量定价设置
  • team_admin_settings - 常规管理员设置
  • team_name - 团队名称变更
  • slack_default_repo - Slack 集成代码仓库设置
  • slack_default_branch - Slack 集成分支设置
  • slack_default_model - Slack 集成模型设置
  • slack_share_summary - Slack 摘要共享设置
  • slack_share_summary_in_external_channel - 在外部频道中共享
  • slack_channel_repo_mappings - Slack 频道与代码仓库的映射
  • mcp_server_config - MCP 服务器配置变更
  • team_repo - 代码仓库操作 (创建、删除、update_settings)
  • create_directory_group - 创建目录组
  • update_directory_group - 更新目录组
  • update_directory_group_permissions - 目录组权限变更
  • delete_directory_group - 删除目录组
  • add_user_to_directory_group - 将用户添加到目录组
  • remove_user_from_directory_group - 从目录组中移除用户
  • privacy_mode - 隐私模式变更 (范围:”用户” 或 “团队”)
  • team_rule - 团队规则管理 (创建、更新、删除)
  • team_hook - 团队钩子管理 (创建、更新、删除)
  • bugbot_installation - Bugbot 安装事件
  • bugbot_installation_settings - Bugbot 安装设置变更
  • bugbot_repo_settings - Bugbot 代码仓库设置变更
  • bugbot_team_rule - Bugbot 专属规则管理 (创建、更新、删除)
  • bugbot_team_settings - Bugbot 团队设置变更
  • bugbot_bulk_repo_update - Bugbot 批量更新代码仓库事件
  • team_command - 自定义团队命令管理 (创建、更新、删除)
  • grok_bot_created - 创建 Bot (空白创建、基于模板创建或通过 Agent SDK 创建)
  • grok_bot_access_changed - Grok Bot 成员访问权限变更 (全体成员或特定群组)
  • grok_bot_team_setup_manifest - Team Setup 清单操作 (保存、删除)
  • mcp_authentication - MCP OAuth 登录 (作为用户凭据或团队服务账户)
  • slack_account_link - Slack 账户关联 (关联、重新关联)
  • grok_bot_routine - Grok Bot 例程管理 (创建、更新)

重命名之前以 automation 写入的记录,在 API、CSV 和 SIEM 中仍沿用该名称。新的例程记录使用 grok_bot_routine。Cloud Agent 自动化不会被记录。

搜索和筛选

在仪表盘中按以下条件筛选审计日志:

  • 日期范围
  • 事件类型 (身份验证、用户管理、设置)
  • 操作主体 (特定用户)
  • 应用 (全部应用,或 Grok Bot)

Grok Bot 的事件类型在筛选器中显示为 Bot Created、Grok Bot Access Updated、Grok Bot Team Setup、MCP Server Authenticated、Slack Account Link 和 Routines。

将筛选后的结果导出为 CSV,用于分析或生成合规报告。导出内容包含一个应用列。

通过 OpenTelemetry 获取用量遥测数据

审计日志涵盖管理和安全事件。如果您需要的是用量或活动数据,例如令牌、工具调用和成本指标,API 请求和云端代理日志,以及记录下来的 Grok Bot 操作 (需启用 Action Recording) ,并通过 OTLP 传输至自有收集器,请使用 OpenTelemetry Export。这与审计日志的 SIEM 流式传输是两条独立的管道,在企业版方案中提供。

使用钩子记录合规日志

审计日志会记录管理操作,但部分合规要求还需要记录开发活动。使用钩子记录:

提示词提交钩子

#!/bin/bash
input=$(cat)
prompt=$(echo "$input" | jq -r '.prompt')
user_id=$(echo "$input" | jq -r '.user_id')

# 记录到您的合规系统
curl -X POST "https://compliance.company.com/log" \
  -H "Content-Type: application/json" \
  -d "{\"type\":\"prompt\",\"user\":\"$user_id\",\"timestamp\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\"}"

cat << EOF
{
  "continue": true
}
EOF

代码生成钩子

#!/bin/bash
input=$(cat)
file_path=$(echo "$input" | jq -r '.file_path')
edits=$(echo "$input" | jq -r '.edits')

# 记录代码生成事件(不记录实际代码)
curl -X POST "https://compliance.company.com/log" \
  -H "Content-Type: application/json" \
  -d "{\"type\":\"generation\",\"file\":\"$file_path\",\"timestamp\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\"}"

exit 0

重要提示: 记录实际代码或提示词时请务必谨慎,它们可能包含敏感信息。在可能的情况下,应记录元数据 (谁、何时、哪个文件) ,而非内容。

有关钩子实现的详细信息,请参阅 Hooks

认证与合规

Cursor 符合 SOC 2 Type II、GDPR 等行业标准。

可通过信任中心访问以下合规文档:

  • SOC 2 报告
  • 渗透测试摘要
  • 安全架构文档
  • 数据流图

负责任披露

如果您在 Cursor 中发现安全漏洞,请通过我们的负责任披露计划报告:

请将以下信息发送至 security-reports@cursor.com

  1. 漏洞的详细描述
  2. 复现问题的步骤
  3. 相关截图或概念验证

企业版方案提供审计日志

联系我们的团队,详细了解合规功能。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜