本文件以多种语言发布。如各语言版本存在差异,以波兰语版本为准。
版本 1.2 · 最后更新:2026年10月29日
1. 如何阅读本记录
本文件是 formexposed 依据 GDPR 第 30 条编制的处理活动记录。它不是隐私政策,也不是营销材料。它的作用是向监管机构、为审核我们作为处理者的工作而进行审计的客户,或下一个需要回答问题的人说明:实际处理了哪些数据、存放在何处、谁会接收以及保留多久。我们公开本记录,是因为一项检查和监控表单的服务本身也应当接受检查。
本记录的编写遵循三条规则。
- 以实测为准,而非以意图为准。关于数据字段、保存期限、接收者或保障措施的陈述,只有在程序代码、数据库结构或测量结果支持时才会出现。计划中的内容标注为“计划中”。默认关闭的内容标注为“默认关闭”。凡我们无法证明之处,我们会如实说明。
- 保存期限说明两次。一次针对每项处理活动,一次在第 6 节中作为整体情况说明:哪个每晚运行的程序删除哪些数据,以及哪些数据它无法触及。一份声称某个保存期限而该期限实际只适用于部分数据的记录,比一份指出待定事项的记录更糟。
- 待定事项写在正文中,而非脚注中。第 8.1 节列出尚未实施的措施,第 10 节列出待定事项及计划采取的措施。记录是一种工作工具,而非证书。
以数据字段代替表名。对于每项处理活动,我们以通俗易懂的字段列出所存储的数据。数据库表名跟在括号中,以便审计人员找到相应位置,例如“登录尝试(login_attempts)”。字段列表源自数据库结构,而非凭记忆编写。
以占位符表示保存期限。凡可在管理区域中设置的保存期限,在此处的呈现方式与每晚运行的程序读取方式完全相同:您看到的数字来自控制删除的同一项设置。程序中固定的保存期限则以数字给出。
测量依据。数据库结构、代码和设置于2026年10月11日在开发系统上测量,该系统在代码和数据库结构上与生产系统一致。我们不提供开发系统中的行数;这些数据包含测试数据,无法反映实际运营情况。
有意省略的内容。本记录不列出我们服务器的主机名、内部网络地址、端口、用户名或软件版本。这些细节对攻击者有帮助,对数据主体却毫无帮助。出于同样的原因,对于我们自有服务器安全防护方面的待定事项,我们仅作概括性说明(第 8.1 节):我们指出风险,而不指出通往风险的途径。应监管机构的要求,我们将向其提供详细信息。
法律性质。本记录是我们依据 GDPR 第 30 条为监管机构保存的文件;我们自愿将其公开。它不构成任何合同的组成部分,也不构成对客户或第三方的任何陈述、保证或质量约定。我们对客户所负的义务由服务条款、数据处理协议及其附件规定;就这些义务而言,它们优先于本记录。本记录描述的是本版本日期时的情况。“待定事项”或“评估”等分类反映的是我们自己的观点,并不预判监管机构或法院的任何法律评价;被描述为“计划中”的措施是没有承诺日期的意向。
2. 法律实体以及本记录为何分为两部分
| 字段 | 内容 |
| 法律实体 | LW IT Solutions Company Lukas Wójcik,在波兰经济活动登记系统(CEIDG)登记的个体经营企业;所有者 Lukas Wójcik |
| 地址 | al. Tadeusza Kościuszki 80/82, lok. 301, 90-437 Łódź, Poland |
| 税务识别号 | NIP 7252266190,增值税识别号 PL7252266190 |
| 联系方式 | contact@lukaswojcik.com;支持窗口(导航栏中的问号);联系页面 |
| 服务 | formexposed:检查、监控和保护网站上的联系表单(应用程序位于 formexposed.com,着陆页位于 form.exposed) |
| GDPR 第 27 条规定的代表 | 不适用。该法律实体设立于欧盟境内(波兰)。 |
| 数据保护官 | 未指定。根据第 37 条所作的评估见第 9 节。 |
| 主管监管机构 | Prezes Urzędu Ochrony Danych Osobowych(UODO,波兰数据保护机构),ul. Moniuszki 1A, 00-014 Warszawa |
| 托管 | 我们位于波兰的自有服务器:一台运行应用程序和数据库的 Web 服务器,以及一台在同一内部网络中运行本地语言模型的扫描服务器。不使用第三方数据中心或云服务提供商。 |
formexposed 对不同群体的人扮演不同的角色。将这些角色混为一谈,得出的记录对谁都不适用。
- 控制者(B 部分,第 30(1) 条)。对于我们自身客户及其团队成员的数据(账户、登录、账单、支持、日志)、我们自己网站的访客、无账户检查(免费检查、安全响应头工具、研究、潜在客户检查)以及滥用防范,我们自身是控制者。
- 处理者(A 部分,第 30(2) 条)。对于客户带入服务,或我们为客户履行服务时产生的第三方个人数据,我们代表客户处理:送达检查中的真实表单邮件副本、客户门户的订阅者、客户提醒的收件人、在客户被检查页面上偶然可见的人员、客户测试账户的凭据,以及客户粘贴的表单代码。依据为在每位客户注册时订立的数据处理协议。
- 仅在客户一侧处理。WordPress 插件和 TYPO3 扩展程序的某些功能仅在客户网站上处理数据,数据从不传到我们这里(隔离区、安全网、算术题、保留设置、本地计数器、录制器)。这些不属于我们进行的处理,因此未列入任一部分。不过,我们仍在 A 部分末尾说明这些功能,以明确边界。
这种区分不仅体现在文字中,也落实于代码:对于真实表单邮件,送达检查仅将时间、归属和身份验证结果写入数据库;浏览器检查的截图会遮蔽输入字段;测试账户凭据采用加密方式,使 Web 服务器无法再读取。详情见各条目。
第 6 至 11 节适用于两部分:保留、自动化决定、技术和组织措施、数据保护官、待解决事项及本记录的维护。
范围。本文件是处理活动记录中涉及 formexposed 服务的部分。同一法律实体为其他服务进行的处理,记载在各自的记录中;服务之外的一般会计和业务管理不属于本部分。
3. A 部分 – 第 30(2) 条:代表客户处理
A.0 相关各方
| 字段 | 内容 |
| 处理者 | LW IT Solutions Company Lukas Wójcik, al. Tadeusza Kościuszki 80/82, lok. 301, 90-437 Łódź, Poland; contact@lukaswojcik.com |
| 控制者 | formexposed 的客户:在账户中持有域名并使用会产生第三方数据的功能的企业和代理机构。对于代理机构,其自身的客户也可能是控制者;此时代理机构作为该客户的处理者,我们则作为次级处理者。 |
| 控制者名单 | 本记录的一部分,以电子形式(GDPR 第 30(3) 条)保存在服务系统中,未在本公开版本中重现,因为其中包含客户个人数据,且每新增一位客户就会过时:每个工作区的所有者及客户账户中的姓名、电子邮件地址和公司(地址和增值税识别号仅在 Stripe)(users、workspaces、workspace_users),另加工作区的域名(domains)。经监督机关请求,我们提供其摘录。 |
| 控制者的代表和数据保护官 | 系统中没有专门字段。如果客户指定了 GDPR 第 27 条下的代表或数据保护官,可通知我们;我们将该通知与控制者名单一同保存。 |
| 处理者的代表 | 不适用(设立于波兰)。 |
| 数据保护官 | 未指定(第 9 节)。 |
| 指示 | 指示来源于数据处理协议及客户所作的设置:客户开启送达检查、设置提醒目标、存储测试账户并设置客户门户。没有该操作,就不会发生相应处理。 |
| 技术和组织措施 | 第 8 节及技术和组织措施页面适用于 A 部分的每项处理活动。特殊措施在相关条目中列明。 |
A.1 送达检查 – 表单邮件的控制副本
| 字段 | 内容 |
| 目的 | 检查客户联系表单的邮件是否实际发送,以及如何进行身份验证(SPF、DKIM、DMARC、对齐)。主动测试提交被接受后,其副本必须在可调整的等待时间内(目前为 3 小时)到达控制邮箱;否则触发“未收到测试邮件”提醒。邮件标头还用于推导表单邮件的真实性、所用邮件服务及用于黑名单检查的发送地址。 |
| 前提 | 付费套餐、已验证域名,由客户开启。客户在其表单通知中,将自己的带标识符控制地址(形式为“delivery+identifier@…”)填为密送地址。未配置控制邮箱时,该功能不可用。 |
| 数据主体类别 | 提交客户表单的客户网站访客;访客在消息中写入其数据的人员;在邮件标头中作为收件人出现的客户员工。 |
| 个人数据类别 | 控制邮箱中(位于邮件服务提供商):每封表单邮件的完整副本,包括含姓名、电子邮件地址、电话号码及自由文本的真实咨询,直至删除。获取过程读取:邮件标头和最多前 8 KB 的正文。数据库中:接收时间、域名归属及适用时的测试运行归属(delivery_log);每个域名的最新身份验证结果,包括 SPF、DKIM、DMARC 结果、对齐、发件域名、签名域名和发送邮件服务器的地址(domains 中域名的身份验证字段)。内容、主题及访客的发件人地址不写入数据库。 |
| 发件域名说明 | 如果表单将访客地址填为发件人(本检查旨在发现的配置错误),身份验证结果包含该地址的域名,而非地址本身。如果访客使用个人域名,这也可能属于个人数据。下次收到邮件时会覆盖。 |
| 来源 | 客户网站上的表单,通过客户填写的密送地址传入。 |
| 法律依据(由控制者确定) | 由客户确定。我们为客户隐私政策提供的建议文本,以 GDPR 第 6(1)(f) 条为副本的依据(可靠接收咨询的合法利益)。客户须向访客说明该数据流;数据处理协议要求客户履行此义务。 |
| 接收方 | 运营控制邮箱的邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)。副本直接送至那里:仅当我们域名的 MX 记录指向该邮箱时才会到达(上线前检查清单会检查此项);通过转发则不会到达该邮箱。客户在域名页面仅看到时间、归属和身份验证结果。如果身份验证结果恶化,向客户及其所选渠道发送的提醒会在发件域名不属于该网站时列明该域名(A.3、4.1)。 |
| 第三国 | 取决于邮件服务提供商;见第 4 节。与拟用提供商的合同及数据传输依据尚未记录。 |
| 保留 | 成功处理后,邮件被标记为删除,并在同次运行中从邮箱移除,即使无法归属于任何域名亦然。在管理区域开启监控期间,获取过程随状态任务每五分钟运行一次(srv/cron_status.php、cfg/zustellung_lib.php)。如果获取或删除失败,邮件会留在邮箱,直至下次成功运行。同一获取过程会在 180 天后删除 delivery_log 中的归属记录。身份验证结果随域名保留。 |
| 证据证明什么 | 仅证明控制邮箱收到了归属于特定测试运行的副本。既不证明实际收件人收到,也不证明已录入 CRM。不提供 HubSpot 原生确认。 |
| 技术和组织措施 | 第 8 节。尤其是:内容仅在内存中评估;不存储正文、主题或完整发件人地址;无论归属是否成功均删除。 |
送达检查是客户访客的真实消息到达我们这里的唯一功能。因此它属于代表客户进行的处理,而非由我们自行负责的服务;因此,邮件在邮箱内停留的时间才是真正的风险衡量指标:通常为几分钟;如果获取中断,则持续至再次运行。副本不应包含特殊类别的个人数据;我们无法从技术上阻止,因为访客写什么取决于访客本人。
A.2 客户门户与发送给订阅者的月报
| 字段 | 内容 |
| 目的 | 代理机构(Business 套餐)以自身品牌向客户显示其域名状态(门户使用随机地址,可选密码,也可使用代理机构自己的子域名)。客户可在其中订阅电子邮件月报。报告以代理机构名义发送。 |
| 数据主体类别 | 订阅报告的代理机构客户及其员工;打开门户的人。 |
| 个人数据类别 | 订阅者:电子邮件地址、语言、确认标识符、订阅时间和订阅时的 IP 地址、确认时间(双重确认订阅)、退订时间、上次发送月份(client_subscribers)。门户:名称、所选域名、随机标识符、仅以哈希形式保存的密码、创建人、时间、撤销状态(client_portals)。门户访问记入页面浏览日志(B.2)。 |
| 来源 | 订阅者自行在门户中输入。 |
| 法律依据(由控制者确定) | 通过双重确认订阅程序取得的订阅者同意;控制者为代理机构。我们不会向未自行订阅并确认的人发送邮件。 |
| 接收方 | 代理机构(可查看自己的订阅者);用于发送确认邮件和报告的邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)。 |
| 第三国 | 通过邮件服务提供商;见第 4 节。 |
| 保留 | 夜间删除任务(cfg/fristen_lib.php,“portal subscribers”部分):从未确认的订阅在 30 天后删除;已退订的订阅者在退订三年后删除,期间保留作为此前同意的证明。已确认且未退订的订阅者,在代理机构工作区存在期间保留。撤销门户仅会将其封锁,不会删除;其订阅者不再收到报告,但数据仍保留(第 10 节)。工作区删除时,门户和订阅者立即一并删除(fe_arbeitsbereich_daten_loeschen())。已发送报告在发件箱中保留 30 天(B.25)。 |
| 技术和组织措施 | 第 8 节。尤其是:门户密码仅以哈希形式保存,限制猜测尝试(每个门户和 IP 地址十次,每个门户在 15 分钟内 50 次);每封邮件提供一键退订;门户仅显示状态和关键指标,不显示附有证据的单项发现。 |
A.3 客户的提醒收件人、确认人和负责人
| 字段 | 内容 |
| 目的 | 向客户为域名配置的目标发送故障和变更通知:电子邮件、Webhook、Slack、Discord、Microsoft Teams、Google Chat、Telegram。每个目标可立即发送,或按日、按周汇总发送,另可设置仅用于升级通知的目标。每条问题通知都会成为事件,收件人可通过链接确认。对于受监控的表单,客户可指定负责人和截止日期。 |
| 数据主体类别 | 客户填为提醒目标或指定为负责人的员工和服务提供商;确认事件的人。拥有自己账户的团队成员也列于 B 部分。 |
| 个人数据类别 | 提醒目标:渠道、目标地址(电子邮件地址、Webhook 或聊天地址、Telegram 聊天 ID)、所选事件、发送模式、Webhook 签名密钥、最近一次发送和最近一次错误(alerts)。发送日志:目标、事件、状态、错误、时间(alert_log)。摘要队列:发送前的通知文本行和链接(alert_queue)。事件:标题、通知文本行、链接、确认标识符、时间及表单中输入的确认人的姓名或电子邮件地址,否则为已登录成员的地址(alert_incidents)。按事件和目标记录的升级通知发送尝试:尝试次数(最多五次)、上次和下次尝试时间及成功时间、对发件箱中邮件的引用、错误(表 alert_escalation_deliveries)。分配:负责人的账户和截止日期(位于 monitored_forms)。 |
| 通知内容 | 域名、事件、简短说明及域名页面链接。不包含访客消息内容。 |
| 来源 | 由客户输入;确认人自行输入姓名;收件人在机器人中按下“开始”时生成 Telegram 聊天 ID(B.32)。 |
| 法律依据(由控制者确定) | 由客户确定;通常为组织客户自身的运营(就客户员工和服务提供商而言,适用 GDPR 第 6(1)(b) 或 (f) 条)。 |
| 接收方 | 所选渠道的运营商;见 4.1。电子邮件提醒通过邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)发送。 |
| 第三国 | 取决于所选渠道;多家提供商位于美国,Telegram 位于欧盟以外,且无充分性决定。见 4.1。 |
| 保留 | 发送日志在 90 天后删除(夜间,fe_alert_log_aufraeumen(),由 srv/cron_status.php 调用)。摘要通知在发送 30 天后删除(cfg/kanal_lib.php,每次发送摘要时)。未解决事件持续保留;已解决事件在解决 180 天后,连同其升级通知发送尝试一并删除(cfg/vorfall_lib.php,升级任务)。提醒目标和分配记录保留至客户删除或随域名一并删除。 |
| 技术和组织措施 | 第 8 节。尤其是:Webhook 使用每个目标独立的密钥签名;仅点击后才确认(POST),因此聊天程序的链接预览不会触发操作;维护窗口期间的提醒仅记录,不发送。 |
A.4 在被检查的客户页面和截图中偶然可见的人员
| 字段 | 内容 |
| 目的 | 检查客户账户中的域名(扫描、监控、主动检查)时,会读取客户的公开页面并对表单截图。页面本身显示的内容可能涉及与检查无关的人。这些数据仅偶然产生,并非检查目的。 |
| 数据主体类别 | 姓名、照片或联系方式出现在被检查页面上的人(表单旁的联系人、首页的团队照片、法律声明中的资料)。 |
| 个人数据类别 | 截图:主页的可见区域、每个可见表单的裁剪图,以及主动测试提交后续页面的图像;作为文件存储在 Web 目录之外,数据库仅保存引用(scan_screenshots)。表单结构:页面地址、选择器、字段名称、字段类型、字段标签、必填和可见性标记、提交按钮标签(forms,“field map”字段);不含字段值。扫描器仅在检查期间读取隐藏字段开头(最多 24 个字符)和数据属性(最多 60 个字符),以识别时间戳和令牌;仅存储结果。附有证据的发现项(findings)、含页面标题的摘要(scans)。对于付费账户中符合条件的检查,本地模型会根据选定的检测结果和扫描元数据生成按优先级排列的行动计划;其文本、语言、状态和时间戳存储在扫描摘要中。如果表单中有电子邮件地址作为收件人,仅存储其域名,绝不存储地址。 |
| 来源 | 扫描器获取的客户域名公开页面。 |
| 法律依据(由控制者确定) | 客户就其自身网站内容确定依据。对我们而言,处理属于受委托检查的一部分。 |
| 接收方 | 客户;对于代理机构,其客户可通过门户或白标报告获取;任何收到报告链接的人(报告使用随机地址,不进入搜索引擎)。表单类型不明确时,我们自己服务器上的本地语言模型会收到表单结构、页面标题、页面地址和表单可见文本(最多 400 个字符),用于分类;它不会收到图像。对于符合条件的付费检查,本地模型还会收到主机名、总体结果和评分、CMS、相关表单类型和页面地址、识别出的插件,以及选定的未通过或不明确的检测结果,以生成行动计划。请求暂存于内部任务队列,取回结果后删除,或通过定时清理删除超过一小时的条目。 |
| 第三国 | 无。 |
| 保留 | 域名的检查结果最多保留 13 个月;每个域名最后一次完成的检查予以保留(夜间删除任务,“old check results”部分)。表单、发现项、图像引用和图像文件随检查结果一并删除。域名删除时,这些数据立即一并删除(B.15 中的删除链;例外见第 6.4 节)。 |
| 遮蔽的限度 | 完整检查的截图不遮蔽任何内容:显示的是页面向所有访客展示的内容。获取时表单字段为空,因为扫描器未输入内容;预填值则会可见。登录后不截图(A.5)。浏览器检查的图像会遮蔽输入字段(A.6)。 |
| 技术和组织措施 | 第 8 节。尤其是:图像仅可通过报告获取,其他人的图像标识符会返回“未找到”;报告使用 noindex;每次检查在独立隔离容器中运行。 |
无账户检查(免费检查、研究、潜在客户检查)会产生相同数据。在这些情况下,不存在由我们代表的客户;因此列于 B 部分(B.5、B.7、B.8)。
A.5 登录后扫描的测试账户凭据
| 字段 | 内容 |
| 目的 | 读取仅在登录后显示的表单(客户区、会员区)。扫描器使用客户在自己网站上创建的测试账户登录,并读取指定页面。除登录表单外,不提交任何内容,不在那里进行主动测试,不截图,也不访问退出登录、删除或取消地址。如果登录表单带有 CAPTCHA,扫描即停止;不会绕过 CAPTCHA。 |
| 前提 | 已验证域名、付费套餐、所有者或管理员角色,并明确确认该账户是测试账户。最多五个页面,且全部位于同一域名。 |
| 数据主体类别 | 测试账户所属姓名对应的人(理想情况下不对应任何人;客户应使用功能性账户);其数据出现在登录后页面上的人。 |
| 个人数据类别 | 测试账户的用户名和密码,仅以加密形式保存;用户名提示(首字符和长度);登录地址、页面列表、登录字段名称、成功标记、创建人、时间、以简短代码表示的最近结果(domain_logins)。对于运行中的任务,保存一份密文副本(scan_jobs 中的“login package”字段)。登录后页面的数据:与 A.4 相同的表单结构,不含截图和 Cookie。 |
| 来源 | 由客户在账户中输入。 |
| 法律依据(由控制者确定) | 由客户确定。客户保证其有权使用测试账户。 |
| 接收方 | 无。客户、支持人员和编程接口均无法读取凭据;界面仅显示用户名提示。 |
| 第三国 | 无。 |
| 凭据保护 | 用户名和密码在存储时立即使用扫描服务器公钥加密(X25519、HKDF-SHA256、AES-256-GCM;域名作为关联数据绑定,因此密文无法附加到其他域名)。仅扫描服务器持有私钥。Web 服务器、数据库和备份仅包含密文;我们在那里同样无法解密。扫描服务器仅为本次运行解密,仅通过标准输入将凭据传入隔离检查容器,立即删除任务中的副本,并且不将凭据写入任何结果、日志或错误文本。传输至客户网站的途中,仅受该网站自身加密保护;此传输的局限见第 10 节。 |
| 保留 | 已存储凭据保留至客户删除。删除时,密文先用等长随机数据覆盖,然后删除数据行;等待中的任务会被清除(fe_login_loeschen())。域名删除时,该行通过外键一并删除。扫描服务器在运行后清除任务中的副本;任何残留内容(任务中止、扫描服务器宕机)最迟一小时后由状态任务清除(fe_login_aufraeumen(),“login_jobs”部分)。数据库备份包含密文,直至备份在 14 天后到期。 |
| 技术和组织措施 | 第 8 节。尤其是:采用独立密钥的非对称加密;退出登录和删除路径的黑名单;登录后不截图;功能仅限付费套餐和已验证域名;每次变更均记入活动日志(不含凭据)。 |
我们有意不提供存储客户服务器、CMS 管理区或托管账户凭据的途径。测试账户是客户网站上的访客账户,而非客户系统的访问权限。
A.6 配置的表单操作流程、浏览器检查与独立探针
| 字段 | 内容 |
| 目的 | 在真实浏览器(Chromium、WebKit 或两者)中执行受监控表单的操作流程,直至提交前一步:加载页面、执行前置点击(最多五次,绝不点击输入字段或提交按钮)、用明显合成的值填写字段(例如使用保留后缀 .invalid 的地址)、推进多步骤表单。浏览器检查不提交任何内容;浏览器在技术上阻止提交。此外还进行表单的时间测量和视觉比较。 |
| 数据主体类别 | 同 A.4(表单页面上可见的人);被填为负责人的客户员工(A.3)。 |
| 个人数据类别 | 配置:表单地址、选择器、入口地址、点击步骤、浏览器选择、标签、关键程度、分配、截止日期(monitored_forms)。每次运行结果:状态、技术故障原因、已净化的错误消息、网络和时间测量、最多 32 KB 的 JPEG 表单图像,且输入字段已遮蔽(form_browser_runs)。每次检查的观察记录(form_observations)、时间序列(form_performance)。包含目标列表的任务(scan_jobs 中的“targets”和“result”字段)。 |
| 测试访问 | 如果客户已存储测试账户(A.5),完整检查也会将其用于已配置的表单操作流程。根据实测代码,两次完整检查之间的独立浏览器检查不使用测试账户。 |
| 独立探针 | 计划在不同位置设置第二个检查点,在发出提醒前进行交叉检查。它将接收域名、净化后的配置和任务标识符,不接收访客输入或凭据。目前尚未设置(默认关闭)。没有探针就没有来自第二位置的证据;提醒此时依据我们自己的测量。 |
| 来源 | 由客户配置;结果来自获取客户页面。 |
| 法律依据(由控制者确定) | 客户就其网站内容及其员工的职责确定依据。 |
| 接收方 | 客户;如果设置探针,还包括其运营者(目前没有)。 |
| 第三国 | 无。 |
| 保留 | 浏览器运行结果、已完成的浏览器任务和时间序列在 13 个月后删除(夜间删除任务,“browser_runs”“browser_jobs”“form_performance”部分)。配置保留至域名删除(单项可修改或关闭,不能删除);域名删除时,配置连同运行、观察记录和时间序列通过外键一并删除。 |
| 测量证明什么 | 来自我们检查浏览器的时间和状态。它们不测量真实访客的体验,也不证明完成率或流失的咨询。 |
| 技术和组织措施 | 第 8 节。尤其是:技术上阻止提交;仅允许同域名地址;遮蔽图像;隔离检查容器。 |
A.7 “Fix it for me” – 粘贴的表单代码
| 字段 | 内容 |
| 目的 | 客户粘贴其表单代码;我们自有硬件上的语言模型将防护模块集成其中。返回内容包括修改后的文件、补丁、语法检查结果,以及是否已实际集成检查调用的说明。未粘贴代码时,服务提供一个现成模块,使用上次扫描中的字段名称。 |
| 数据主体类别 | 其数据偶然出现在粘贴代码中的人(例如收件人地址、注释中的姓名、邮件服务器凭据)。 |
| 个人数据类别 | 粘贴的代码,最多 30,000 个字符。数据库仅保留活动日志条目(操作“fix_ai”,含工作区和时间),该条目计入目前每个工作区每天十次调用的限额。 |
| 来源 | 由客户粘贴。 |
| 法律依据 | 代码本身的依据为履行与客户的合同(GDPR 第 6(1)(b) 条);偶然包含的第三方数据,其依据由客户确定。 |
| 接收方 | 无。语言模型运行在内部网络中我们自己的扫描服务器上;不使用外部 AI 服务,即使作为备用也不使用。 |
| 第三国 | 无。 |
| 保留 | 不存储代码。语法检查时创建临时文件,检查后立即删除。活动日志条目在 365 天后删除。 |
| 给客户的提示 | 包含密码、API 密钥或个人数据的代码,应在粘贴前清理。我们不检查内容。 |
| 技术和组织措施 | 第 8 节。尤其是:仅限付费套餐的所有者和管理员;粘贴的代码标记为数据后传给模型,绝不执行;不上传至第三方服务器。 |
A.8 白标品牌与代理机构的联系人
| 字段 | 内容 |
| 目的 | 代理机构(Business 套餐)的报告、简报、证据日志和客户门户以其品牌显示,应请求可使用代理机构自己的子域名。 |
| 数据主体类别 | 其姓名或联系方式出现在联系信息行中的代理机构联系人。 |
| 个人数据类别 | 公司名称、网站、联系信息行、给客户的备注、强调色、外观、标志文件、是否显示 formexposed 引用的开关、自有域名及其验证标识符和验证状态(workspace_branding)。 |
| 来源 | 由代理机构输入。 |
| 法律依据 | 履行与代理机构的合同(GDPR 第 6(1)(b) 条)。如果联系信息行列出代理机构员工,由代理机构确定依据。 |
| 接收方 | 代理机构向其提供报告、简报或门户链接的任何人。 |
| 第三国 | 无。 |
| 保留 | 保留至代理机构修改;品牌和标志文件随工作区删除(fe_arbeitsbereich_daten_loeschen())。自有域名连续七天 DNS 验证失败时会关闭。自有域名默认关闭。 |
| 技术和组织措施 | 第 8 节。 |
A.9 插件和扩展程序的计数、状态指标与字段错误
| 字段 | 内容 |
| 目的 | WordPress 插件和 TYPO3 扩展程序每天一次报告所连接网站的表单统计:按原因分类的拦截提交、提交次数、成功和失败的邮件发送、表单设置的状态指标、按来源和保留期限分类的已存储咨询。可选且默认关闭:表单事件及按字段位置分类的字段错误类别。这些统计用于生成“防护数据”、月报、静默提醒以及高风险设置提示。 |
| 分类 | 这些统计按不描述任何个人的方式设计。我们将其列于 A 部分,因为其源于客户访客在客户网站上触发的事件;我们认为,仅在边缘情形下(网站在某日提交极少)才至多可能构成个人数据。传输本身(密钥、版本、主机)见 B 部分(B.20)。 |
| 数据主体类别 | 提交表单的客户网站访客。 |
| 个人数据类别 | 按主机统计的每日数据:拦截总数及按原因分类的数量、提交、成功和失败的邮件发送、邮件发送错误类别(仅四类之一,绝不含错误文本,因为其中可能包含收件人地址)、reCAPTCHA 响应计数、已删除和已放行的咨询(plugin_stats)。状态:固定清单中的表单、CAPTCHA 和邮件插件版本、以数字表示的设置指标、保留期限(plugin_health)。变更通知:更新插件的名称和版本(plugin_changes)。可选:按表单和日期统计的计数,以及按字段位置分类的错误类别(form_metrics)。绝不包含:输入内容、字段名称、密码、文件、电子邮件地址、姓名、IP 地址或访客的持久标识符。 |
| 来源 | 客户网站上的插件,通过使用网站连接密钥的编程接口传输。 |
| 法律依据(由控制者确定) | 由客户确定;客户决定是否启用可选计数,以及如何向访客说明。 |
| 接收方 | 客户。被拦截消息中链接的域名进入群体防护(B.21)。 |
| 第三国 | 无。 |
| 保留 | 每日数据、变更通知和表单计数器在 13 个月后删除(夜间删除任务,“plugin_stats”和“form_metrics”部分)。状态指标在每次报告时覆盖。系统中不再有任何域名引用某主机时,该主机的全部插件数据即被删除(最后一个域名删除时立即处理;历史残留数据由夜间任务“orphan_hosts”部分处理)。 |
| 统计证明什么 | 插件计数的内容。既不证明完成率,也不证明流失的咨询。 |
| 技术和组织措施 | 第 8 节。尤其是:仅凭网站绑定的密钥对接受数据;仅接受已知键和数字,其他内容全部丢弃;拒绝 14 天窗口以外的日期。 |
A.10 边界:仅保留在客户网站上的内容
WordPress 插件和 TYPO3 扩展程序的以下功能仅在客户服务器上处理数据。数据不会传到我们这里,我们也无法访问。网站运营者独自负责;由运营者决定启用、保留期限以及如何向访客说明。为此,插件为运营者的隐私政策提供建议段落。
| 功能 | 在本地处理的内容 | 客户一侧的保留期限 |
| 隔离区 | 被拦截的提交及原因,可通过电子邮件放行至网站地址 | 14 天 |
| 安全网 | 表单邮件发送失败的提交,用于重新发送(默认开启) | 30 天 |
| 以算术题替代 reCAPTCHA | 在访客浏览器内完成算术任务,无第三方服务(默认关闭) | – |
| 保留设置 | 按运营者选择的期限删除表单插件中存储的咨询(默认关闭) | 按配置 |
| 速率限制 | 从 IP 地址派生的短期标识符,不传输给我们 | 短期 |
| 本地每日计数器 | 传输前的计数器数值 | 最多 14 天 |
| 管理员录制器 | 已登录管理员浏览器会话存储中的技术选择器和导航步骤;不读取输入内容。仅传输所选配置(之后适用 A.6) | 最多 15 分钟 |
| 访客帮助 | 可单独启用;不存储草稿,也不自动重发 | – |
| 观察新的垃圾信息规则 | 在本地统计额外命中,不自动启用 | 七天 |
A.11 表单防护(formconfirmed)
| 字段 | 内容 |
| 目的 | 评估通过客户网站上的表单进行的提交,以识别自动提交:发放和校验任务(工作量证明)、一次性校验令牌、填写时长、陷阱字段、密集请求;应客户要求,由语言模型评估消息文本。仅适用于启用表单防护的客户。 |
| 数据主体类别 | 打开含有受保护表单的页面或提交该表单的客户网站访客。 |
| 个人数据类别 | IP地址(仅以截短形式并使用每日更换的密钥进行哈希处理后存储)、页面地址和域名、时间点和填写时长、陷阱字段是否被填写、Web服务器日志中的浏览器标识;仅在启用内容检查时,还包括消息文本(仅在内存中)。 |
| 来源 | 访客的浏览器(任务、校验令牌);客户的服务器(校验请求,如适用还包括文本)。 |
| 接收方 | 客户(分数、操作、原因)。无其他接收方;此项处理不涉及次级处理者。 |
| 第三国 | 无。 |
| 存储期限 | 哈希标识符1小时;已使用的校验令牌最多11分钟;不含IP地址和文本的校验结果30天;每日数据400天;Web服务器日志14天;文本不存储。 |
| 技术和组织措施 | 第8节;此外还有截短和使用每日密钥的哈希处理、签名任务、一次性使用、在自有硬件上运行且不记录文本的语言模型。 |
4. A 部分 – 接收方、次级处理者与第三国传输
下表列出我们自行委托且可能接收 A 部分数据的接收方。具有权威性并持续更新的清单为次级处理者页面;如果与本表不同,这属于一项发现,而非排版问题。
| 接收方 | 接收内容 | 第三国 | 依据 | 状态 |
| Namecheap, Inc. (Private Email), Phoenix, Arizona, USA | 送达检查的控制邮箱(A.1);发送提醒邮件(A.3)、门户订阅者确认和报告(A.2) | 处理地点仍待核实;见“次级处理者”页面 | 数据处理协议;传输依据仍待核实 | 待解决。相关合同、实际处理地点和传输依据尚未记录。本记录不确认任何认证,也不确认已订立合同。 |
| Namecheap, Inc.(注册商、DNS;邮箱设置完成前提供邮件转发) | 邮箱设置完成前,发送至我们域名下地址的一般来信;不包括送达检查副本,后者仅在 MX 记录直接指向邮箱时到达(A.1) | 美国 | 待核实:欧盟—美国数据隐私框架认证或标准合同条款 | 正在使用;依据待解决。 |
| 配备本地语言模型的自有扫描服务器 | 用于分类的表单结构,以及为付费账户中的行动计划选定的检测结果和扫描元数据(A.4)、粘贴的代码(A.7)、仅在运行期间解密的测试访问凭据(A.5) | – | 由我们运营,非第三方 | 正在使用。 |
| 位于第二位置的独立探针 | 域名、净化后的配置、任务标识符(A.6) | 取决于位置 | 投入运行前确定 | 尚未设置。 |
托管:无第三方。应用程序、数据库、截图和备份均保存在我们位于波兰的自有服务器上。如果迁移至数据中心或云提供商,必须重写本段。
4.1 客户选择的提醒渠道
除我们委托的接收方外,还有客户为其提醒选择的渠道(A.3)。我们的服务器触发传输;客户决定目标和提供商。选择渠道并不免除我们自身作为处理者的义务。必须针对每个提供商确定角色、合同及第三国所需保障;聊天服务方面尚未完成(法律审查的待解决问题)。
| 渠道 | 发送内容 | 提供商所在地 |
| 电子邮件 | 域名、事件、说明、链接;发送至所填地址 | 通过 Namecheap, Inc. (Private Email), Phoenix, Arizona, USA |
| 发送至自选地址的 Webhook | 以 JSON 表示的事件(域名、事件、文本行、链接、时间戳),使用目标密钥签名 | 由客户决定 |
| Slack、Discord、Microsoft Teams、Google Chat | 将相同通知作为聊天消息发送至所填 Webhook 地址 | 主要在美国 |
| Telegram | 客户选择目标;我们通过自己的机器人向已关联聊天 ID 发送消息 | 位于欧盟以外,无充分性决定;传输依据是法律审查的待解决问题 |
任何情况下均不发送访客消息的内容。通知包含域名、事件和链接。
5. B 部分 – 第 30(1) 条:由我们自行负责的处理
本部分所有内容的控制者:LW IT Solutions Company Lukas Wójcik, al. Tadeusza Kościuszki 80/82, lok. 301, 90-437 Łódź, Poland, contact@lukaswojcik.com。无需代表(设立于欧盟)。未指定数据保护官(第 9 节)。技术和组织措施:第 8 节及技术和组织措施页面。数据主体如何行使权利,见访问、删除及您的其他权利页面;账户持有人可自行下载数据文件(设置)。
在我们依据合法利益(GDPR 第 6(1)(f) 条)进行处理时,会列明利益及侵扰性更低的方式不足以实现目的的原因。利益衡量是我们的评估;其属于法律审查的一部分。
B.1 我们网站的访客 – Web 服务器日志
| 字段 | 内容 |
| 目的 | 网站和应用程序的运行及安全:提供内容、排查故障、检测攻击和过载。 |
| 数据主体类别 | 打开 formexposed.com 或 form.exposed 页面的人,包括浏览器加载我们徽章图片的客户页面访客(B.18)、打开报告或确认链接的收件人,以及插件调用我们接口的网站。 |
| 个人数据类别 | 完整 IP 地址、时间、请求地址、状态码、传输字节数、来源页面(referrer)、浏览器标识(user agent)。 |
| 存储位置 | 上游代理和 Web 服务器的访问日志,作为文件保存在 Web 服务器上,不在数据库中。 |
| 来源 | 发起请求的浏览器或程序。 |
| 法律依据 | GDPR 第 6(1)(f) 条。利益:安全且不中断的运行。衡量:没有完整地址,就无法关联同一发送方的重复请求,也无法抵御攻击;截短地址无法支持这种区分。日志不与其他数据合并,并在较短期限后删除。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 保留 | 14 天:每日轮转,保留 14 代,之后覆盖(系统日志轮转服务,而非应用程序的夜间删除任务)。 |
| 技术和组织措施 | 第 8 节。 |
B.2 应用程序页面浏览日志
| 字段 | 内容 |
| 目的 | 安全和滥用检测(谁请求什么以及频率)、账户访问可追溯性、不使用分析服务的简单使用统计。 |
| 数据主体类别 | 真正浏览页面时的所有网站访客和应用程序用户(不包括后台请求,也不包括表单提交)。 |
| 个人数据类别 | 完整 IP 地址、写入时据此推导的国家(本地地理数据库,不查询第三方)、已登录用户的账户 ID、请求地址和来源页面(其中的访问令牌,如报告或门户链接中的令牌,均已遮蔽)、浏览器标识及据此推导的设备类型、操作系统和浏览器、语言、时间(access_logs)。“以客户身份查看”(B.14)期间不设置账户 ID,使支持人员的页面浏览不会出现在客户日志中。 |
| 来源 | 浏览器请求。 |
| 法律依据 | GDPR 第 6(1)(f) 条。利益:防范滥用和确保可追溯性。衡量:同 B.1;保留期限更长,因为滥用模式需要数周才会显现。是否应截短 IP 地址或缩短保留期限,是法律审查的待解决问题。 |
| 接收方 | 无。账户持有人可在数据导出中获取自己的页面浏览记录。 |
| 第三国 | 无。 |
| 保留 | 60 天(每夜 03:00 至 03:05 之间,srv/cron_status.php,“page view log”设置)。 |
| 技术和组织措施 | 第 8 节。仅当请求来自我们自己的上游代理时,才从转发标头获取 IP 地址,且仅取该代理追加的条目;否则任何人均可任意声称其来源。 |
B.3 Cookie 与浏览器内存储
| 字段 | 内容 |
| 目的 | 技术上必要的存储:会话、防范跨站请求伪造(CSRF)、统计无账户检查的限额、登录、应请求保持登录、浅色或深色显示。 |
| 数据主体类别 | formexposed.com 的访客和用户。 |
| 个人数据类别 | 会话 Cookie bpid(会话标识符;浏览器关闭时结束;HttpOnly、SameSite=Lax,通过 HTTPS 时为 Secure)。Cookie bp_remember 仅在选择“保持登录”后设置(选择器和验证器;30 天)。本地存储 bp_theme(浅色、深色或系统)。管理区域还包括运营人员的本地显示设置。为实施限额,从会话标识符生成哈希;不存储标识符本身。 |
| 不设置的内容 | 无分析、广告或跟踪 Cookie。合作伙伴计划(B.33)不使用 Cookie。客户页面上的徽章图片不设置 Cookie(B.18)。提交受保护表单时,reCAPTCHA 可能设置 Google 的 Cookie(B.23)。 |
| 法律依据 | 访问终端设备:为提供用户请求的服务所严格必需(德国电信数字服务数据保护法 TDDDG 第 25(2) 条第 2 项;波兰电子通信法 PKE(Prawo komunikacji elektronicznej)第 399(3) 条)。处理:GDPR 第 6(1)(b) 条(账户)和 (f) 项(安全、限额)。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 保留 | 会话期间;保持登录令牌保留 30 天。夜间任务删除数据库中已过期的保持登录令牌(remember_tokens);退出登录、修改密码和撤销设备时立即删除。 |
| 技术和组织措施 | 第 8 节。 |
B.4 无账户免费检查 – 接受请求、限额与滥用监控
| 字段 | 内容 |
| 目的 | 任何人均可在无账户情况下检查域名。为避免输入框成为针对第三方网站的武器,采用分级限制:每个域名七天内一次匿名检查(之后返回同一报告)、24 小时内按 IP 地址和会话限制、系统每日总限额、封禁注册时间极短的域名、黑名单和排除机制、仅允许公开地址。异常模式会被记录并报告给运营者。按 IP 地址、会话和整个系统分别统计的限制,也适用于无账户插件检查(绑定密钥对的插件按网站而非地址统计)和排除请求(B.30);免费安全响应头工具(B.9)有其独立的按 IP 地址和日期及整个系统的限额。 |
| 数据主体类别 | 触发检查、安全响应头工具请求或排除请求的人;安装插件的服务器。 |
| 个人数据类别 | 每次请求的日志:来源(检查、插件、安全响应头工具、排除)、完整 IP 地址、会话标识符哈希、被检查主机、从 IP 地址推导的国家、接受或拒绝及原因、时间(check_throttle)。异常:类型(IP 地址、会话、国家、系统)、键(“IP”类型为完整 IP 地址)、模式、严重程度、简短描述、发现和解决时间、解决人(abuse_flags)。任务:主机、模式、信任级别,以及作为请求者标识的截短会话哈希(scan_jobs)。报告:随机标识符、主机、语言、到期时间、首次查看、查看次数(reports)。注册信息查询所得的域名年龄缓存(domain_age_cache)。 |
| 来源 | 该人的输入及请求;通过注册信息查询(RDAP)获得域名年龄。 |
| 法律依据 | 执行所请求检查:GDPR 第 6(1)(b) 条(依服务条款使用免费检查);备选依据为 (f) 项。限额和监控:第 6(1)(f) 条。利益:防止服务被用作针对第三方网站的工具或垃圾信息发射器。衡量:不关联地址和会话就无法执行限额;七天期限仅与据此统计的最长限额期限相同。 |
| 接收方 | Google(提交时使用 reCAPTCHA,B.23)。查询域名年龄时,扫描器请求 RDAP 重定向服务 rdap.org,由其转至主管注册管理机构;仅传输域名。出现异常时,运营者通过 Telegram 收到不含任何变量的信号(无主机、无地址)。任何持有随机链接的人均可查看报告。 |
| 第三国 | 通过 reCAPTCHA 涉及美国(B.23)。 |
| 保留 | 请求日志保留 7 天(夜间,srv/cron_status.php)。已解决异常在解决 90 天后删除;未解决异常保留至有人将其解决(第 10 节)。匿名报告在 30 天后到期;夜间任务随后删除报告、任务、检查结果、表单、发现项和图像(fe_reports_aufraeumen())。管理员可手动解除某地址的限制;这会删除该地址最近 24 小时的日志。 |
| 技术和组织措施 | 第 8 节。管理区域可紧急停止全部匿名检查;积压时通过背压机制停止接受新的免费检查。 |
B.5 对第三方网站的爬虫检查
| 字段 | 内容 |
| 目的 | 检查公开联系表单的安全:垃圾信息和滥用防护、数据保护和无障碍特性、嵌入的第三方脚本、在 Cookie 横幅中拒绝后的行为、手机显示。适用于无账户检查(B.4)、账户中尚未验证的域名,并作为研究(B.7)和潜在客户检查(B.8)的基础。对于账户中已验证的域名,我们代表客户处理(A.4)。 |
| 爬虫行为 | 使用自身标识并指向爬虫页面;检查前读取 robots.txt,如果禁止规则覆盖主页则停止(robots.txt 无法访问或服务器出错时亦同);不单独遵守各子路径的禁止规则。表单脉搏检查、证明获取、安全响应头工具和暴露文件搜索不读取 robots.txt。每次检查最多八个公开页面,另加最多三个在 Cookie 横幅中点击“拒绝”的页面、最多三个手机视图页面、已验证域名的主动探测,以及最多五个登录后页面(A.5);页面依次加载,不并行;仅允许公开地址,不访问内部网络,重定向后重新检查;接受请求前检查黑名单和排除项,扫描器内再次检查。被动:未提供控制权证明时,不为客户提交任何内容(例外:对我们自身测试和演示域名的内部检查,B.6)。 |
| 数据主体类别 | 被检查网站的运营者(其为自然人时,例如个体经营者);在被检查页面上偶然可见的人。 |
| 个人数据类别 | 同 A.4:页面地址和标题、表单结构(字段名称、类型和标签,无字段值)、防护措施、第三方脚本(地址;像素和录制工具的账户 ID 在存储前替换)、Cookie 横幅行为、截图(主页可见区域、表单)。如果表单中出现收件人地址,仅保留其域名(scans、forms、findings、scan_screenshots)。 |
| 来源 | 公开可访问的页面。 |
| 法律依据 | GDPR 第 6(1)(f) 条。利益:执行所请求的安全检查;提醒网站运营者注意可能损害访客的薄弱环节。衡量:仅读取任何访客均可看到的内容,范围有限且不提交任何内容;运营者可随时永久排除其域名,无需提供证明。GDPR 第 14 条要求的信息通过爬虫页面、排除页面和隐私政策提供;这是否满足第 14(5)(b) 条,是法律审查的待解决问题。 |
| 接收方 | 触发报告的人及其向之提供随机链接的任何人;表单类型不明确时,还包括我们自有服务器上的本地语言模型(表单结构、页面标题和地址、表单可见文本)。插件版本漏洞警告绝不出现在匿名报告中。 |
| 第三国 | 无。 |
| 保留 | 匿名检查:30 天(B.4)。潜在客户检查:90 天(B.8)。研究:直至发布(B.7)。账户中的域名:最多 13 个月,最后一次检查保留;域名删除时立即删除。运营者无域名、无报告的内部检查(如命令行创建的检查):无保留期限(第 10 节)。扫描服务器上的临时文件在每次运行后删除。 |
| 技术和组织措施 | 第 8 节。尤其是:独立检查容器,降低权限、只读文件系统、内存限制和独立网络;双重目标检查。 |
B.6 主动测试提交
| 字段 | 内容 |
| 目的 | 检查联系表单是否在无防护情况下接受提交,CAPTCHA、陷阱(蜜罐)、令牌、电子邮件地址验证和速率限制是否在服务器端生效,以及是否可注入邮件标头。 |
| 前提 | 对于客户,仅限已提供控制权证明的域名(DNS 记录、meta 标签、文件或已连接插件);此外,运营者使用内部命令行工具,为我们自有测试和演示域名创建“verified”级别检查。仅在全局开关开启时,且仅针对可靠分类为一般联系表单的表单。绝不用于订单、预订、注册、新闻通讯、付款、文件上传、需要真实个人数据的必填字段,以及公共机关、医疗或教育机构的域名。 |
| 数据主体类别 | 接收表单邮件的客户员工。 |
| 个人数据类别 | 测试提交不含个人数据:发件人为“FormExposed Security Scanner”,使用我们自己的发件地址或 .invalid 下的地址、带标记的主题行,以及使用页面语言、引用爬虫页面和排除机制并包含检查编号的文本。我们存储:页面响应、发现项、后续页面图像(同 A.4)。 |
| 范围 | 每次检查最多五次提交(设置,默认 5);按套餐检查频率重复,最高套餐每天进行。 |
| 来源 | 客户指示。 |
| 法律依据 | 履行与客户的合同(GDPR 第 6(1)(b) 条);提交发送至客户自己的表单。对于客户一侧的收件人:客户的组织安排。 |
| 接收方 | 客户(其表单邮件)。 |
| 第三国 | 不因我们而涉及。 |
| 保留 | 结果同 A.4。 |
| 技术和组织措施 | 第 8 节。仅检测邮件标头注入,绝不使用真实收件人实施;电子邮件地址验证仅使用不可能存在的域名。 |
B.7 “表单安全指数”研究
| 字段 | 内容 |
| 目的 | 统计某国家或行业联系表单的防护情况。仅发布总体数据,不披露网站名称;细分统计仅从至少 20 个含表单的页面起发布。 |
| 数据主体类别 | 清单内网站的运营者;偶然可见的人。 |
| 个人数据类别 | 同 B.5,仅被动。另有清单:主机、细分组、状态、任务(study_domains);研究及其标题、国家、结果总计(studies)。 |
| 来源 | 运营者编制的公开网站清单;页面本身。 |
| 法律依据 | GDPR 第 6(1)(f) 条。利益:就表单安全状况作出统计陈述。衡量:被动、限流(每次运行仅少量任务)、适用黑名单和排除机制、仅以总体数据发布、删除原始数据。 |
| 接收方 | 公众,仅总体数据。 |
| 第三国 | 无。 |
| 保留 | 发布时删除原始数据(检查结果、表单、发现项、图像、任务)(fe_studie_veroeffentlichen())。之后仍保留带细分组的主机清单;该清单和从未发布的研究均无保留期限(第 10 节)。运营者决定检查哪些清单,以及是否发布研究。 |
| 技术和组织措施 | 第 8 节。 |
B.8 潜在客户检查(代理机构获客模式)
| 字段 | 内容 |
| 目的 | 代理机构(Business 套餐)被动检查潜在客户网站,获得其品牌下的简报及被动检查报告。我们不联系任何人;由代理机构自行转交链接。 |
| 数据主体类别 | 被检查网站的运营者;偶然可见的人;触发检查的代理机构员工。 |
| 个人数据类别 | 同 B.5,仅被动。另有:工作区、触发检查的人、主机、报告随机标识符、时间(prospect_checks)。 |
| 来源 | 代理机构的输入;公开页面。 |
| 法律依据 | GDPR 第 6(1)(f) 条(我们提供服务的利益及代理机构有依据地联系潜在客户的利益)。代理机构与我们的角色,以及代理机构转交报告时的义务,是法律审查的待解决问题:如果代理机构未经请求发送报告邮件或拨打电话,即构成直接营销,依据 PKE 第 398 条及德国反不正当竞争法 UWG 第 7(2) 条需取得同意,企业之间亦然。这是代理机构的责任;服务条款规定了相应义务。 |
| 接收方 | 代理机构及其向之提供链接的任何人。 |
| 第三国 | 无。 |
| 保留 | 报告和检查结果在 90 天后到期,随后由夜间任务删除(fe_reports_aufraeumen());检查条目在 90 天后由每日 04:00 起的群体防护任务删除(srv/cron_status.php)。工作区删除时立即删除。 |
| 技术和组织措施 | 第 8 节。月度配额(设置,默认 30);七天内同一页面返回相同报告;适用排除机制。 |
B.9 无账户安全响应头工具
| 字段 | 内容 |
| 目的 | 免费评估域名主页的安全响应头等级(A+ 至 F)。两次请求,无浏览器、无表单、不提交。 |
| 数据主体类别 | 使用工具的人;被检查域名的运营者。 |
| 个人数据类别 | 请求日志同 B.4(来源“headers”、IP 地址、会话哈希、主机)。结果:主机、等级、分数、已评估安全响应头(header_checks)。 |
| 法律依据 | GDPR 第 6(1)(f) 条,同 B.4 和 B.5。 |
| 接收方 | Google(reCAPTCHA,B.23)。 |
| 第三国 | 通过 reCAPTCHA 涉及美国。 |
| 保留 | 请求日志保留 7 天;结果目前在 90 天后删除(夜间删除任务,“header_checks”部分,“headers_keep_days”设置)。对于账户中的域名,每天重新确定等级并随域名存储。 |
| 技术和组织措施 | 第 8 节。按 IP 地址和日期限制;适用排除机制。 |
B.10 客户账户
| 字段 | 内容 |
| 目的 | 运营客户账户、工作区和套餐。 |
| 数据主体类别 | 客户(企业)及其拥有独立账户的团队成员。 |
| 个人数据类别 | 电子邮件地址及规范化形式、仅以哈希形式保存的密码、名字(必填)、姓氏和公司(如提供);应用程序不存储地址和增值税识别号,这些仅在 Stripe 提供(B.26);状态、语言、显示模式、币种、套餐和账单状态、Stripe 客户和订阅 ID、计费周期结束日期、期末取消、带到期时间的确认和重置标识符、确认前的新电子邮件地址、注册时间、上次登录及最近一次 IP 地址、撤销所有会话的时间、双因素数据(B.11)、月报开关、提醒邮件时间、通过代码激活的权限、推荐码和推荐关系(users)。工作区及其名称、时间、状态(workspaces);成员关系及其角色和加入日期(workspace_users)。 |
| 来源 | 本人注册及设置;Stripe 提供账单状态。 |
| 法律依据 | GDPR 第 6(1)(b) 条(合同)。最近一次 IP 地址:(f) 项(账户安全)。 |
| 接收方 | Stripe(B.26);用于账户邮件的邮件服务提供商(B.25)。同一工作区成员可看到其他成员的姓名、电子邮件地址和角色。 |
| 第三国 | 通过 Stripe 和邮件服务提供商。 |
| 保留 | 保留至账户持有人删除。删除时,无他人使用的自有工作区连同全部域名和数据一并删除;有其他成员的工作区转交给另一成员,优先管理员,管理员中优先加入最早者。成员关系、保持登录令牌、设备、API 密钥、未使用的 Telegram 代码、报告反馈(B.35)和账户数据行被删除;正在运行的付费订阅先在 Stripe 立即终止,不退款(www/ajax.php、fe_konto_reste_loeschen())。相比之下,在账单区域取消于期间结束时生效;之后账户继续使用免费版套餐。保留内容见第 6.4 节。未曾确认且从未登录的账户在 30 天后删除,除非其工作区还有其他成员(夜间删除任务,“pending_accounts”部分)。不删除不活跃账户。如果账户合同以其他方式终止,例如由我们终止,我们最迟在合同结束后 30 天内删除账户;目前手动处理(数据处理协议中的承诺)。 |
| 技术和组织措施 | 第 8 节。 |
B.11 登录、设备、第二因素与活动日志
| 字段 | 内容 |
| 目的 | 保护账户:限制登录和其他密码尝试、显示并撤销已登录设备、双因素登录、确保变更可追溯。 |
| 数据主体类别 | 账户持有人和团队成员;尝试登录、注册或输入客户门户密码的人。 |
| 个人数据类别 | 登录尝试:IP 地址、所填电子邮件地址、是否成功、时间(login_attempts)。设备:会话标识符哈希(绝不存储标识符本身)、与保持登录令牌的关联、IP 地址、浏览器标识及据此推导的浏览器、操作系统和设备类型、登录、最近活动和撤销时间,以及“以客户身份查看”时支持人员的标识符(login_sessions)。“保持登录”的令牌:选择器、验证器、到期时间(remember_tokens)。双因素:加密的密钥、激活时间、最近使用的时间步、仅以哈希形式保存的恢复代码(位于 users)。活动日志:账户、工作区、操作、目标、详情、IP 地址、国家、时间(audit_logs)。登录、第二因素、密码确认、密码重置、注册和客户门户密码的尝试计数器:从目的和账户 ID(未知地址或重置时使用小写电子邮件地址)、IP 地址、账户与 IP 地址组合,或门户 ID(也可与 IP 地址组合)派生的 HMAC 键、尝试次数、到期时间;其中不以明文存储电子邮件和 IP 地址(表 auth_attempt_buckets)。 |
| 法律依据 | GDPR 第 6(1)(b) 条结合第 32 条(设备列表、第二因素)及 (f) 项(登录尝试、活动日志)。利益:防止账户被接管、记录变更(第 5(2) 条)。衡量:截短地址无法回答“那是我吗?”;活动日志必须保留至可能数月后才出现的争议之后。 |
| 接收方 | 无。账户持有人可查看自己的设备,并在数据导出中获得登录尝试、设备和活动记录;“以客户身份查看”会话期间,其中不会显示支持人员的 IP 地址或浏览器。 |
| 第三国 | 无。 |
| 保留 | 登录尝试保留 7 天;成功登录后,同一地址的失败尝试立即删除。尝试计数器在其时间窗口结束时到期(目前为 15 分钟,密码重置和注册为一小时);到期记录由下次访问及夜间任务删除。设备在最近使用或撤销 90 天后删除(夜间删除任务,“sessions”部分),账户删除时立即删除。保持登录令牌在 30 天后到期。活动日志保留 365 天(夜间处理);删除账户时,其条目仍保留至期限届满(第 6.4 节)。 |
| 技术和组织措施 | 第 8 节。 |
B.12 合同订立证明
| 字段 | 内容 |
| 目的 | 证明客户注册时接受或知悉了哪个版本的服务条款、数据处理协议和隐私政策,以及客户将服务用于其业务。 |
| 数据主体类别 | 客户。 |
| 个人数据类别 | 每份文件:账户、文件、版本(所显示文本的哈希)、场合、IP 地址、浏览器标识、时间(legal_consents)。显示版本本身包含全文、语言、标题和地址,每个版本存储一次(legal_versions;不含个人数据)。 |
| 法律依据 | GDPR 第 6(1)(b) 和 (f) 条(合同订立证明、针对请求的抗辩)。 |
| 接收方 | 无。账户持有人在数据导出中获得其记录。 |
| 第三国 | 无。 |
| 保留 | 账户存在期间保留;账户删除后,自同意起四年,随后由夜间任务删除(srv/cron_status.php)。代码中的理由:从年末起计算的三年时效,向上取整。波兰法律是否要求不同期限,属于法律审查内容。 |
| 技术和组织措施 | 第 8 节。三份文件中任何一份缺失时,关闭注册。 |
B.13 团队邀请
| 字段 | 内容 |
| 目的 | 邀请其他人员加入工作区。 |
| 数据主体类别 | 受邀者。 |
| 个人数据类别 | 电子邮件地址、角色、邀请标识符、邀请人、到期时间、接受时间(workspace_invites);发件箱中的邀请邮件(B.25)。 |
| 来源 | 由发出邀请的成员输入。 |
| 法律依据 | 就客户而言,适用 GDPR 第 6(1)(b) 条;就受邀者而言,适用 (f) 项(客户让团队参与的利益)。 |
| 接收方 | 邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)。 |
| 第三国 | 通过邮件服务提供商。 |
| 保留 | 邀请有效期为 14 天,且仅在邀请人仍为工作区所有者或管理员期间有效。未被接受的邀请在到期后删除;已接受邀请在接受后 30 天删除(夜间,srv/cron_status.php 及 cfg/fristen_lib.php 中的“invites”部分)。工作区删除时立即删除。 |
| 技术和组织措施 | 第 8 节。 |
B.14 支持人员“以客户身份查看”
| 字段 | 内容 |
| 目的 | 超级管理员以客户所见的方式查看应用程序,以解决支持问题(“我这里没有这个按钮”)。 |
| 数据主体类别 | 相关客户;超级管理员。 |
| 个人数据类别 | 客户在应用程序中看到的一切。记录内容:一条带有超级管理员标识的单独设备记录(login_sessions),以及活动日志中的开始和结束时间(audit_logs)。 |
| 法律依据 | GDPR第6条第1款(b)项(支持服务属于服务的一部分),或者依据(f)项。 |
| 限制 | 最长一小时,之后完全登出。结束查看时,超级管理员也会被完全登出,包括其原先所在的会话;只有重新使用密码和第二因素登录后,才能返回管理区域。如果超级管理员被降级或封禁,查看立即结束。所有会更改客户账户的操作均被阻止:密码、电子邮件地址、第二因素、设备、订阅、导出、删除、转移。会话期间管理区域处于关闭状态。客户可在其设备列表和数据导出中看到此次访问,标记为支持访问。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 存储期限 | 设备记录90天,活动日志365天。 |
| 技术和组织措施 | 第8节。 |
B.15 域名、控制权证明和监控
| 字段 | 内容 |
| 目的 | 面向客户的核心服务:在账户中管理域名、提供控制权证明、定期检查并发现变化。其中包括表单脉搏检查(根据套餐每10至30分钟进行一次不使用浏览器的轻量请求)、每日邮件DNS和证书监测、域名到期日、黑名单、暴露的文件、从外部可见的版本、脚本清单、表单的视觉变化、CAPTCHA和邮件服务商的故障,以及表单插件的漏洞监测。 |
| 数据主体类别 | 客户及其团队成员;域名的运营者(如为自然人)。 |
| 个人数据类别 | 域名及主机、公开标识、备注、客户标签、证明的类型和标识、检查频率、监控开/关、维护时间窗口、咨询价值、徽章、送达检查和部署钩子的标识、插件密钥、各项监测(DNS、证书、表单电子邮件的真实性、黑名单、暴露的文件、安全响应头、版本)的状态和最新结果(domains)。每个表单页面的脉搏检查(form_pulse)。根据插件版本得出的漏洞(vuln_hits)。脚本清单,包括地址、哈希值、大小、批准情况以及批准人和理由(script_inventory、script_changes)。检查数据同A.4。对于暴露的文件,仅存储路径、严重程度和类型,绝不存储内容。 |
| 向第三方发出的请求 | DNS查询(SPF、DMARC、MX、证明记录)。根据IANA目录通过RDAP进行注册局查询:仅域名。DNS黑名单(SpamCop、PSBL、Mailspike、SURBL;Spamhaus仅在已存储访问凭据时使用,目前未使用):Web服务器和邮件服务器的IP地址以及域名,不含访客数据。Google Web Risk仅在已设置时使用(目前未设置):首页地址。时间戳机构:仅哈希值(B.19)。WPVulnerability:仅插件或主题的标识,或WordPress版本;与已安装插件版本的比对由我们自行完成。Cloudflare、hCaptcha、Google Cloud、SendGrid、Mailgun和Brevo的状态页面:除请求本身外不传输任何内容。 |
| 来源 | 客户;对客户页面发出的请求;公开目录。 |
| 法律依据 | GDPR第6条第1款(b)项。 |
| 接收方 | 上述服务不会收到我们客户的个人数据,前提是企业的域名和服务器地址不属于个人数据;对于个体经营者,域名可能属于个人数据。工作区成员可以看到该域名。 |
| 第三国 | 请求可能会到达位于第三国的服务(例如注册局查询、黑名单)。仅传输“向第三方发出的请求”一行中所述的内容。 |
| 存储期限 | 直至域名被删除。届时fe_domain_loeschen()会立即删除检查结果、表单、发现项、图片、报告、任务、提醒目标和提醒日志、事件、Telegram代码、送达记录、脉搏检查、漏洞和证明;通过外键删除受监控的表单、浏览器运行记录、测试账户和表单计数器;如无其他域名引用该主机,则删除该主机的插件数据。同时删除的还有该域名的脚本清单和脚本变更;它们没有单独的存储期限(第6.4节)。检查结果最多保留13个月,最后一次结果保留。 |
| 技术和组织措施 | 第8节。对暴露文件和版本的监测仅针对已验证的域名,每个路径最多一次请求,仅读取前8 KB;未经请求探测第三方路径将成为一种攻击工具。 |
B.16 面向账户持有人的提醒、事件和升级
| 字段 | 内容 |
| 目的 | 向客户通报故障和变化、遵守维护时间窗口、确认并升级事件。如果提醒目标是第三方,我们代表客户行事(A.3);如果是账户持有人本人,则适用本条所述内容。 |
| 数据主体类别 | 作为接收方的账户持有人和团队成员。 |
| 个人数据类别 | 同A.3。通知以账户持有人的语言显示。 |
| 法律依据 | GDPR第6条第1款(b)项。 |
| 接收方 | 邮件服务提供商;所选的聊天服务(4.1)。 |
| 第三国 | 取决于渠道(4.1)。 |
| 存储期限 | 同A.3:送达日志90天,汇总通知在送达后30天,事件保留至解决后再保留180天。提醒目标随域名一并保留。 |
| 技术和组织措施 | 第8节。 |
B.17 发送给账户的月度报告
| 字段 | 内容 |
| 目的 | 每月1日08:00起(补发截至3日),每个账户收到一封涵盖其所有域名的电子邮件:等级、分数及变化、提醒、被拦截的机器人、电子邮件发送情况、对比值。 |
| 数据主体类别 | 已开启月度报告的活跃账户持有人。 |
| 个人数据类别 | 电子邮件地址、语言、域名的关键指标。 |
| 法律依据 | GDPR第6条第1款(b)项(服务的一部分)。可在设置中退订;可集中关闭。 |
| 接收方 | 邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)。 |
| 第三国 | 通过邮件服务提供商。 |
| 存储期限 | 不单独存储;电子邮件在发件箱中保留30天(B.25)。 |
| 技术和组织措施 | 第8节。 |
B.18 徽章和公开确认页面
| 字段 | 内容 |
| 目的 | 客户可以在其网站上嵌入徽章图片,并将其链接到公开确认页面。仅当域名已验证、监控正在运行,且最近一次完成的检查不超过45天并且结果为“已防护”或“部分防护”时,徽章才显示“已防护”;否则中性地显示“联系表单检查”。确认页面列明等级和日期,不含具体发现项。 |
| 数据主体类别 | 浏览器加载该图片的客户网站访客;确认页面的访客。 |
| 个人数据类别 | 加载图片时:Web服务器日志中的IP地址、时间、请求地址、来源页面和浏览器标识(B.1)。图片地址不启动会话、不设置Cookie,也不写入页面浏览日志。确认页面是普通页面(B.2、B.3)。 |
| 法律依据 | GDPR第6条第1款(f)项。利益:提供图片并保障运营安全。就访客IP地址的传输而言,根据关于嵌入第三方内容的判例,客户与我们是否构成共同控制者,以及是否需要依据第26条作出安排,是有待法律审查的未决问题。客户将获得用于其隐私政策的建议文本。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 存储期限 | 14天(Web服务器日志)。图片缓存一小时。关闭徽章后,该标识即失效。 |
| 技术和组织措施 | 第8节。 |
B.19 证据日志和时间戳
| 字段 | 内容 |
| 目的 | 每个域名每月一份证据日志(付费套餐):检查了什么、结果如何、报告了什么、发生了哪些变化,用作问责、保险公司或供应商审核的证明。每个版本都有一个核验编号;公开页面确认域名、期间和关键指标,不含细节。自2026年十月7日起,由符合RFC 3161的时间戳机构确认时间。 |
| 数据主体类别 | 客户;间接涉及可能在证据日志中作为批准人或确认人被提及的人员。 |
| 个人数据类别 | 域名、月份、核验编号、内容哈希值(SHA-512)、证据日志的摘要和数据、时间戳响应、时间戳机构和时间、失败的尝试(proof_docs)。 |
| 法律依据 | GDPR第6条第1款(b)项。 |
| 接收方 | 时间戳机构(默认Certum,备用DigiCert)仅接收证据日志的哈希值,不接收其内容。公开内容:通过确认页面公开关键指标。客户以及客户向其提供证据日志或核验编号的任何人。 |
| 第三国 | 不传输个人数据:哈希值无法推断出内容。备用机构位于美国。 |
| 存储期限 | 直至域名被删除(fe_domain_loeschen())。该时间戳不是eIDAS意义上的合格时间戳。 |
| 技术和组织措施 | 第8节。 |
B.20 插件和扩展:检查、连接和传输
| 字段 | 内容 |
| 目的 | WordPress插件和TYPO3扩展可以请求检查(即使没有账户)、连接到账户(安装插件即可在账户中一键作为控制权证明)、解锁保护功能、每日报告数据(A.9),并即时报告电子邮件错误和维护模式。 |
| 数据主体类别 | 客户;在没有账户的情况下使用插件的网站运营者。 |
| 个人数据类别 | 每个主机:插件和CMS版本、检查次数、最近一次报告标识、连接密钥的哈希值、首次和最近一次联系(plugin_sites)。一次性连接代码,以哈希值形式存储并带有到期时间(plugin_connect_tokens)。代理机构的批量部署代码,以哈希值形式存储,带有前缀、标签、使用次数、创建人(workspace_connect_codes)。包含调用服务器IP地址的请求日志(B.4)。插件密钥在网站的head部分公开可见;它是连接密钥的哈希值,而连接密钥本身仅以哈希值形式存储,且绝不返回。 |
| 法律依据 | GDPR第6条第1款(b)项(有账户);无账户时依据(f)项(请求的检查、防止滥用)。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 存储期限 | 一旦不再有域名引用某主机,该主机的数据即被删除;无账户插件的记录在90天未联系后才删除(夜间删除任务,“orphan_hosts”部分)。一次性代码在到期一天后删除。批量部署代码随工作区一并删除。 |
| 技术和组织措施 | 第8节。自2026年九月27日起,服务器仅接受绑定到网站的密钥对;旧的未绑定连接密钥已被删除。 |
B.21 群体防护
| 字段 | 内容 |
| 目的 | 共同防御垃圾信息:已连接的网站报告其防护层拦截的消息中所含链接的域名。在七天内出现在至少三个网站上且命中至少五次的域名会被列入一份名单,该名单将回传给所有已连接的网站;这些网站的防护层会将含有此类链接的消息移入隔离区,而绝不会直接丢弃。 |
| 数据主体类别 | 被报告链接域名的持有人(如为自然人,例如以本人名义运营垃圾网站的人)。不包括消息的发送者和接收者:地址、文本和姓名不会被报告。 |
| 个人数据类别 | 信号:类型、域名、报告主机、日期、命中次数(swarm_signals)。名单:类型、域名、网站数量和命中次数、时间(swarm_list)。大型服务、我们客户的域名以及运营者设定的例外绝不会被列入名单。 |
| IP网段 | 共享IP网段(/24、/48)的功能已准备就绪。该功能处于关闭状态,插件不报告任何IP网段;由于IP地址属于个人数据,只有在法律审查之后才会开启。 |
| 法律依据 | GDPR第6条第1款(f)项。利益:保护所有客户的表单免受垃圾信息浪潮的侵扰。权衡:仅限域名、设置最低阈值以防投毒、消息不会丢失、可随时移除。 |
| 接收方 | 所有已连接的网站(域名名单)。 |
| 第三国 | 取决于已连接网站的所在地;名单也可能到达欧洲经济区以外的网站。仅在边缘情况下(自然人的域名)构成个人数据。针对此类情况依据GDPR第五章的传输依据尚待确定(有待法律审查的未决问题)。 |
| 存储期限 | 信号30天(每日04:00起运行的群体任务,cfg/swarm_lib.php)。名单每日重新计算;不再达到阈值的条目将被移除。 |
| 技术和组织措施 | 第8节。 |
B.22 API密钥、编程接口和MCP服务器
| 字段 | 内容 |
| 目的 | 客户自有工具(REST API、Zapier、Make、面向AI助手的MCP服务器)访问客户的域名、检查和事件。 |
| 数据主体类别 | 创建密钥的客户。 |
| 个人数据类别 | 密钥仅以哈希值形式存储,以及前缀、标签、创建时间、最近使用时间和撤销时间(api_keys)。每分钟调用次数(api_usage)。 |
| 法律依据 | GDPR第6条第1款(b)项。 |
| 接收方 | 客户为其配置密钥的工具;由客户决定。 |
| 第三国 | 取决于客户的工具。 |
| 存储期限 | 密钥保留至被撤销,账户删除时立即删除;无账户的密钥(遗留数据)在夜间删除。调用计数器在一天后删除(偶尔在调用时顺带清理)。 |
| 技术和组织措施 | 第8节。 |
B.23 reCAPTCHA和我们自己的表单防护
| 字段 | 内容 |
| 目的 | 防御对我们自有表单的自动化访问:免费检查、安全响应头工具、域名排除(opt-out)、登录、注册、忘记密码和重置密码、支持和联系。此外还有不依赖第三方的自有防护:陷阱(隐藏字段)、带签名的时间检查和CSRF令牌。自2026年10月29日起,免费检查、注册、登录和“忘记密码”还额外使用我们的表单防护formconfirmed(工作量证明和一次性校验令牌)。 |
| 数据主体类别 | 提交这些表单的人员。 |
| 个人数据类别 | 在Google处:IP地址、浏览器和设备数据、行为数据、Google Cookie。在我们处:Google的评估结果(分数和操作)仅在检查时刻使用,不予存储,即使提交被拒绝也不存储。自有表单防护:IP地址(仅以截短和哈希形式存储)、页面、时间点、陷阱字段是否被填写;不涉及内容。 |
| 时机 | Google的脚本仅在提交受保护表单时加载,而不是在打开页面时加载。自有表单防护在打开页面时获取其任务,并在表单开始被使用时立即进行计算。在开发系统上,reCAPTCHA处于关闭状态。 |
| 法律依据 | GDPR第6条第1款(f)项。利益:防御机器人,特别是针对免费检查,否则它可能被用来攻击第三方网站。尽管脚本仅在提交时加载,访问终端设备是否仍需依据TDDDG第25条或PKE第399条取得同意,是有待法律审查的未决问题。自有表单防护不设置Cookie,不在浏览器中存储任何内容,也不生成指纹;它旨在长期取代reCAPTCHA。 |
| 接收方 | Google Ireland Limited;Google LLC。自有表单防护无接收方。 |
| 第三国 | 美国(仅限reCAPTCHA)。依据:欧盟-美国数据隐私框架(EU-US Data Privacy Framework)认证或标准合同条款;有待详细记录。 |
| 存储期限 | reCAPTCHA:我们不存储;Google处按其规则处理。自有表单防护:哈希标识符1小时,已使用的校验令牌最多11分钟,不含IP地址的校验结果30天。 |
| 故障 | 如果Google在三秒内未响应或响应不可用,则拒绝提交;令牌为空或响应所对应的操作与表单的操作不符时,同样拒绝。仅当reCAPTCHA关闭时才跳过该检查。对于自有表单防护,没有有效校验令牌的提交将被拒绝;如果获取任务时服务无法访问,则允许提交。 |
| 技术和组织措施 | 第8节。 |
B.24 支持和联系表单
| 字段 | 内容 |
| 目的 | 通过支持窗口和联系页面接收并答复咨询。两者使用相同的路由和相同的数据表。 |
| 数据主体类别 | 咨询者,无论是否已登录。 |
| 个人数据类别 | 账户(如已登录;此时以账户的地址为准,而非输入的地址)、电子邮件地址、从固定列表中选择的原因、最多4,000个字符的文本、状态、完整IP地址、国家/地区、浏览器标识、来源页面(仅限自有路径)、语言、接收和答复时间(support_requests);活动日志中的条目(不含文本);在发件箱中发给咨询者的收件确认(B.25),仅对已登录的发送者附带最多2,000个字符的文本,未登录提交的请求则不附带文本。 |
| 法律依据 | 如咨询涉及合同,依据GDPR第6条第1款(b)项;否则依据(f)项。完整IP地址:(f)项(每个地址每小时最多三次咨询的限制,防止滥用)。 |
| 接收方 | 用于收件确认和答复的邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)。Telegram收到的是不含任何变量的固定信号(“有新的支持请求”),因此不涉及个人数据。 |
| 第三国 | 通过邮件服务提供商。 |
| 存储期限 | 24个月(夜间删除任务,“support”部分);也可提前手动删除。删除账户时,咨询记录保留至存储期限届满(第6.4节)。 |
| 技术和组织措施 | 第8节。reCAPTCHA、我们自己的表单防护、速率限制。 |
B.25 发送电子邮件(发件箱)
| 字段 | 内容 |
| 目的 | 事务性电子邮件:注册确认和新电子邮件地址确认、密码重置、邀请、提醒、月度报告、门户确认和报告、支持收件确认和答复、关于试用期和设置的提醒、发给运营者的运营通知。不发送广告,不向未自行注册或未被客户设为接收方的人发送电子邮件。 |
| 数据主体类别 | 这些电子邮件的接收者。 |
| 个人数据类别 | 收件人地址、主题、完整内容、回复地址、用途、发送途径、状态、错误、尝试次数、时间(mail_outbox)。内容可能包含带有效标识的确认链接和重置链接。 |
| 法律依据 | GDPR第6条第1款(b)项;运营通知依据(f)项。 |
| 接收方 | Namecheap, Inc. (Private Email), Phoenix, Arizona, USA(发送);账户持有人可在数据导出中看到其已发送的电子邮件(不含内容)。 |
| 第三国 | 取决于邮件服务提供商的处理地点;合同和传输依据尚待记录(第4节)。 |
| 存储期限 | 30天(夜间,srv/cron_status.php)。该期限有意设为所有日志中最短的:长期保存的发送日志将成为有效密钥的集合。状态任务每五分钟检查一次是否需要重试。 |
| 状态 | 电子邮件发送必须在上线前设置完成。在邮件服务提供商及其所在地和依据确定之前,法律文本中会显示一个标记。 |
| 技术和组织措施 | 第8节。发送失败的电子邮件会以逐渐递增的间隔重试,并在达到最大尝试次数后放弃。 |
B.26 付款和计费
| 字段 | 内容 |
| 目的 | 订立和管理订阅(按月或按年预付)、无需绑卡的14天试用期并在结束前三天发送提醒、年度订阅的发票付款(默认关闭)、通过托管服务商代码和合作伙伴代码免付款解锁、开具发票、出于税务目的的留存。 |
| 数据主体类别 | 客户。 |
| 个人数据类别 | 在Stripe处:电子邮件地址、姓名、账单地址、增值税号、付款数据、发票;以及作为元数据的我们的账户ID和套餐。在我们处:Stripe客户ID和订阅ID、套餐、状态、计费周期结束时间、周期结束时取消(users);收到的Stripe事件,仅含标识、类型、状态和时间,不含内容(stripe_events);托管服务商代码的兑换记录,含账户、活动和到期时间(bundle_redemptions)。银行卡数据绝不会到达我们这里。 |
| 来源 | 客户在Stripe结账页面中提供;来自Stripe的事件。 |
| 法律依据 | GDPR第6条第1款(b)项;出于税务目的的留存依据(c)项。 |
| 接收方 | Stripe Payments Europe Limited(爱尔兰);Stripe, Inc.(美国)。对于部分付款处理,Stripe自行承担责任;角色的具体划分属于法律审查的内容。 |
| 第三国 | 美国,经由Stripe, Inc.;依据:数据隐私框架(Data Privacy Framework)或Stripe条款中的标准合同条款。 |
| 存储期限 | 计费字段随账户保留;在删除账户之前会终止正在进行的订阅。根据波兰税法,发票和计费记录自纳税期限届满之年年末起保留五年;它们保存在Stripe处,可在Stripe的客户门户中调取。Stripe事件和代码兑换记录没有存储期限(第6.4节)。 |
| 技术和组织措施 | 第8节。仅接受带有效签名的Stripe事件;每个事件仅处理一次。 |
B.27 备份
| 字段 | 内容 |
| 目的 | 出错后的恢复:误删除、迁移损坏。 |
| 数据主体类别 | 其数据存于数据库中的所有人。 |
| 个人数据类别 | 应用程序数据库的完整压缩转储。截图和徽标文件保存在数据库之外,不属于本备份的一部分。测试账户的访问凭据在其中仅以密文形式存在(A.5)。 |
| 流程 | 每晚03:00,在删除任务之后进行,以免备份带走存储期限刚刚删除的内容。转储仅在其内容经过检查(退出代码、表数量、末行)后才会保留。每周日进行恢复测试,将最新备份加载到一个临时数据库中并逐表比对。如有任何失败,将向运营者发出信号和电子邮件。 |
| 法律依据 | GDPR第6条第1款(f)项,结合第32条第1款(c)项。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 存储期限 | 14天;较旧的转储仅在新备份成功后才被删除(cfg/backup_lib.php)。在此期间进行的删除仅在备份到期时才在备份中生效;如果从备份恢复数据,之后会重新执行删除请求。 |
| 存放地点 | 备份目前与数据库存放在同一地点,且未单独加密;计划在第二个地点存放一份加密副本(第8.1节和第10节)。 |
| 技术和组织措施 | 第8节。 |
B.28 错误日志和错误提醒
| 字段 | 内容 |
| 目的 | 在客户报告之前发现并修复错误。新的错误类型和集中出现的错误会报告给运营者,另外每天08:00起发送一份概览。 |
| 数据主体类别 | 其请求引发错误的用户;间接涉及其数据出现在错误消息中的人员。 |
| 个人数据类别 | 级别、来源、消息、JSON格式的上下文、会话的账户ID、时间(error_logs)。错误类型:指纹、模式(已去除电子邮件地址、地址、数字和标识)、一条最多2,000个字符的未经修改的示例消息、首次和最近一次出现时间、次数(error_kinds)。 |
| 法律依据 | GDPR第6条第1款(f)项(运营安全,第32条)。 |
| 接收方 | 运营者,通过邮件服务提供商以电子邮件方式接收:对于新的错误类型,发送来源和最多400个字符的消息原文(未经清理),另加每日概览电子邮件;对于集中出现的错误,仅发出Telegram信号。Telegram仅接收不含变量的固定语句(“出现了新的错误类型”、“短时间内出现大量错误”)。 |
| 第三国 | 通过邮件服务提供商。 |
| 存储期限 | 错误日志90天(夜间)。错误类型没有存储期限(第10节)。错误提醒在生产系统中开启,在开发系统中关闭。 |
| 技术和组织措施 | 第8节。 |
B.29 运营信号和状态监控
| 字段 | 内容 |
| 目的 | 发现故障:每五分钟检查各组件(首页、数据库、磁盘空间、扫描器心跳、队列积压),提供状态页面,在出现故障和解除故障时发出信号,向外部监控服务发送心跳,以便即使完全宕机也能被发现;扫描器前的积压情况。 |
| 数据主体类别 | 通常没有。 |
| 个人数据类别 | 无。每个组件每日一条记录,含检查次数和最近一次错误(system_status_logs),扫描器心跳(scanner_heartbeat),不涉及个人的每日关键指标(daily_stats)。发送到Telegram的信号是不含变量的固定语句;心跳是不含内容的请求。 |
| 法律依据 | 不适用,因为不涉及个人数据;出于谨慎,依据第6条第1款(f)项。 |
| 接收方 | Telegram(固定语句);外部监控服务(仅请求本身);运营者(通过电子邮件)。 |
| 第三国 | Telegram位于欧盟以外;不传输个人数据。 |
| 存储期限 | 状态记录400天(夜间)。 |
| 技术和组织措施 | 第8节。 |
B.30 域名排除(opt-out)
| 字段 | 内容 |
| 目的 | 任何人都可以无需证明,将任意域名永久排除在检查之外;该屏蔽立即对所有检查途径生效(免费检查、无账户插件、研究、潜在客户检查、安全响应头工具),也适用于已提供控制权证明的付费客户的域名;其正在进行的监控将在下一次计划检查时结束。屏蔽适用于该域名及其www变体,不适用于其他子域名。只有我们才能应请求并在提供证明后解除屏蔽。为了能够发现并撤销滥用行为(例如竞争对手屏蔽他人的域名),屏蔽操作会被记录。 |
| 数据主体类别 | 排除域名的人员。 |
| 个人数据类别 | 域名、最多250个字符的自愿填写理由、来源、IP地址、国家/地区、浏览器标识、时间;解除时记录时间、解除屏蔽的人员和理由(blocklist)。请求日志同B.4。 |
| 法律依据 | 排除本身依据GDPR第6条第1款(f)项。利益:在所有检查途径中永久落实不希望某域名被检查的意愿。如果进行排除的人本身是数据主体,则排除同时落实其依据第21条提出的反对(第6条第1款(c)项)。地址、国家/地区和浏览器标识依据(f)项(发现滥用)。 |
| 接收方 | Google(reCAPTCHA,B.23)。 |
| 第三国 | 美国,经由reCAPTCHA。 |
| 存储期限 | IP地址、国家/地区和浏览器标识在12个月后删除(夜间删除任务,“optout_ip”部分)。排除本身永久保留,以确保其持续有效。 |
| 技术和组织措施 | 第8节。短时间内来自同一国家/地区的大量屏蔽会产生异常提醒(B.4)。 |
B.31 注册后的提醒
| 字段 | 内容 |
| 目的 | 在注册后两至14天内,向尚无已确认域名的已确认账户发送一封电子邮件:“添加网站”或“确认域名”。不含优惠、价格或升级推荐;并注明该邮件不会再次发送。工作日09:00至18:00,每次运行最多50封。 |
| 数据主体类别 | 新账户持有人。 |
| 个人数据类别 | 电子邮件地址、语言、发送时间(users中的“提醒已发送”字段)、域名和确认状态。 |
| 法律依据 | GDPR第6条第1款(b)项(关于设置本人账户的提示)。该电子邮件属于有关合同关系的通知,还是属于需要取得同意的商业信息(UŚUDE第10条,即波兰《电子方式提供服务法》(ustawa o świadczeniu usług drogą elektroniczną);PKE第398条;UWG第7条),是有待法律审查的未决问题;运营者可集中关闭该功能。 |
| 接收方 | 邮件服务提供商(Namecheap, Inc. (Private Email), Phoenix, Arizona, USA)。 |
| 第三国 | 通过邮件服务提供商。 |
| 存储期限 | 该时间随账户保留;电子邮件在发件箱中保留30天。 |
| 技术和组织措施 | 第8节。发送时间在发送前即已设置,以免中断后触发第二封电子邮件。 |
B.32 用于客户提醒的Telegram机器人
| 字段 | 内容 |
| 目的 | 将Telegram聊天关联为提醒目标:客户会收到一个指向我们机器人的链接以及一次性代码;当接收者点击“Start”时,我们的服务器从发给机器人的新消息中读取该代码并存储聊天ID。为此,我们这边不需要开放的端点(webhook)。 |
| 数据主体类别 | 客户以及其Telegram聊天被关联的人员。 |
| 个人数据类别 | 一次性代码、域名、创建代码的账户、事件、送达方式、聊天ID、时间(telegram_links);作为提醒目标的聊天ID(alerts)。Telegram随消息提供更多个人资料信息;仅代码和聊天ID会被分析和存储。 |
| 法律依据 | GDPR第6条第1款(b)项;第三方作为接收者时,同A.3。 |
| 接收方 | Telegram。 |
| 第三国 | 位于欧盟以外,无充分性决定;由客户自行选择(4.1)。传输依据和告知是有待法律审查的未决问题。 |
| 存储期限 | 代码有效期为30分钟;关联记录在一天后、于创建新代码时删除,未使用的代码随账户和域名一并删除。作为提醒目标的聊天ID保留至提醒目标或域名被删除。 |
| 技术和组织措施 | 第8节。 |
B.33 合作伙伴计划和解锁代码
| 字段 | 内容 |
| 目的 | 账户可以通过推荐代码推荐新客户,并在有限的月数内就其已付发票获得佣金。代码在注册前随地址传递;不设置Cookie。托管服务商和合作伙伴可以发放代码,在一段时间内免付款解锁某个套餐;到期前一周,客户会收到提醒。 |
| 状态 | 合作伙伴计划默认关闭,直到合作伙伴条款生效。 |
| 数据主体类别 | 合作伙伴和被推荐的客户。 |
| 个人数据类别 | 推荐代码、推荐合作伙伴和推荐时间(在users中);佣金记录,含合作伙伴、客户、Stripe发票ID、金额、币种、佣金、状态、时间(partner_commissions)。解锁信息,含套餐、结束时间、来源、提醒(在users中);活动和兑换记录(bundle_campaigns、bundle_redemptions)。 |
| 法律依据 | GDPR第6条第1款(b)项(合作伙伴协议);对于客户依据(f)项(佣金结算,除佣金金额外不向合作伙伴传递客户数据);税务记录依据(c)项。 |
| 接收方 | 合作伙伴可以看到其佣金。 |
| 第三国 | 无。 |
| 存储期限 | 推荐和解锁信息随账户保留。佣金和兑换记录在代码中没有设定存储期限;佣金作为会计记录,须出于税务目的予以留存(第6.4节)。 |
| 技术和组织措施 | 第8节。 |
B.34 漏洞报告渠道
| 字段 | 内容 |
| 目的 | 根据安全页面和/.well-known/security.txt中的规则,接收有关formexposed漏洞的报告。 |
| 数据主体类别 | 报告人;报告中作为证据包含其数据的人员。 |
| 个人数据类别 | 报告人发送的电子邮件地址、姓名、报告内容和附件。报告通过电子邮件发送到该处所列地址;应用程序不存储报告。 |
| 法律依据 | GDPR第6条第1款(f)项(服务安全,第32条);如报告中包含作为证据的第三方个人数据,同样依据(f)项,目的是修复漏洞。 |
| 接收方 | 邮件服务提供商,以及在邮箱设置完成之前Namecheap 对寄往我们域名下地址的邮件提供的转发服务(第4节)。 |
| 第三国 | 通过邮件服务提供商,以及在切换完成之前通过转发服务。 |
| 存储期限 | 尚未设定存储期限,技术上也未强制执行(第10节)。运营者尚需设定期限;一种合理的做法是在漏洞修复后删除第三方证据,并将往来通信按支持咨询的方式处理。 |
| 技术和组织措施 | 第8节。 |
B.35 对报告的反馈
| 字段 | 内容 |
| 目的 | 接收报告下方的反馈(“此报告中有错误吗?”),以发现表单识别中的错误。超级管理员对反馈进行分类(新建、已确认、已修复、已拒绝),并可将报告的检查数据作为测试用例下载(含字段、原因和发现项的表单,不含截图,也不含主动发送的文本)。 |
| 数据主体类别 | 查看报告的人员,无论是否已登录。 |
| 个人数据类别 | 从固定列表中选择的类别和检查项、最多500个字符的页面地址、最多1,000个字符的文本、语言、时间、报告标识、检查、主机;如已登录则包括账户标识;用于限制的、以密钥计算的IP地址HMAC-SHA256值;状态、处理人、处理时间(report_feedback)。活动日志:状态变更和测试用例的下载。不含电子邮件地址,不含明文IP地址。 |
| 法律依据 | GDPR第6条第1款(f)项(发现并修复识别错误;防止滥用的限制)。 |
| 接收方 | 无。 |
| 第三国 | 无。 |
| 存储期限 | 24个月(夜间删除任务,“report_feedback”部分);IP地址的校验值在2天后清除(“report_feedback_ip”部分);删除账户时立即删除。下载的测试用例不含任何关于反馈人的数据。 |
| 技术和组织措施 | 第8节。自有表单防护(陷阱、带签名的时间、CSRF),每个校验值每小时最多5条、每天最多20条反馈,每份报告最多10条;仅超级管理员可读。 |
6. 存储期限——夜间删除任务涵盖和未涵盖的内容
自动删除确实存在,并且有固定的执行位置。状态任务(srv/cron_status.php)通过Web服务器的crontab每五分钟启动一次,生产系统和开发系统均如此。它检查各组件、取回送达检查邮件、安排检查并发送提醒。每天一次,在03:00至03:04的时间窗口内,它按照存储期限执行删除,随后创建备份。自2026年九月27日起,它还会调用cfg/fristen_lib.php中的存储期限任务(fe_fristen_lauf()),其各部分相互独立运行:如果某一部分失败,其他部分继续运行,错误会记录在错误日志中。
任务正在运行的证据:开发系统的备份状态显示,2026年十月11日03:00有一次成功的备份;备份是在同一代码块中紧接删除之后创建的。该任务仅将每个被删除数据表的日志写入标准输出,而crontab会丢弃这些输出;因此没有关于何时删除了什么的永久记录(第10节)。
以占位符形式出现的存储期限在管理区域的存储期限设置中设定。删除任务读取相同的设置;因此文本中显示的始终是数据实际被删除的期限。
6.1 每日任务涵盖的内容
| 数据 | 存储期限和触发条件 | 代码位置 |
页面浏览日志(access_logs) | 60天 | srv/cron_status.php |
活动日志(audit_logs) | 365天 | srv/cron_status.php |
错误日志(error_logs) | 90天 | srv/cron_status.php |
发件箱(mail_outbox) | 30天 | srv/cron_status.php |
“保持登录”令牌(remember_tokens) | 到期后(30天) | srv/cron_status.php |
未接受的邀请(workspace_invites) | 到期后(14天) | srv/cron_status.php |
登录尝试(login_attempts);尝试计数器(auth_attempt_buckets) | 7天;计数器在其时间窗口到期时删除(目前为15分钟,密码重置和注册为一小时),下次访问时也会删除 | srv/cron_status.php |
无账户检查的请求日志(check_throttle) | 7天 | srv/cron_status.php |
用于连接插件的一次性代码(plugin_connect_tokens) | 到期后1天 | srv/cron_status.php |
已解决的异常(abuse_flags) | 解决后90天 | srv/cron_status.php |
| 过期报告,连同检查结果、表单、发现项、图片和任务(仅限不属于任何账户中域名的情况) | 匿名30天,潜在客户90天 | fe_reports_aufraeumen() |
提醒送达日志(alert_log) | 90天 | fe_alert_log_aufraeumen() |
状态记录(system_status_logs) | 400天 | srv/cron_status.php |
已删除账户的同意记录(legal_consents) | 账户已删除且同意已满4年时 | srv/cron_status.php |
| 已删除域名的遗留数据:检查结果、任务、提醒数据、事件、Telegram代码、送达记录、脉搏检查、漏洞、证明、脚本清单和脚本变更 | 下次运行时立即删除 | fe_fristen_lauf(),“orphan_scans”、“orphan_rows”部分 |
| 无域名主机的插件数据;无账户的插件记录 | 立即删除;记录在90天未联系后删除 | “orphan_hosts”部分 |
安全响应头工具结果(header_checks) | 目前为90天 | “header_checks”部分 |
| 某域名的检查结果,连同表单、发现项、图片、报告、任务 | 13个月;每个域名保留最后一次完成的结果 | “old_scans”部分 |
浏览器运行记录、已完成的浏览器任务、时间序列(form_browser_runs、scan_jobs、form_performance) | 13个月 | “browser_runs”、“browser_jobs”、“form_performance”部分 |
表单计数器(form_metrics)、插件每日数据和变更通知(plugin_stats、plugin_changes) | 13个月 | “form_metrics”、“plugin_stats”部分 |
已登录设备(login_sessions) | 最后一次使用或撤销后90天 | “sessions”部分 |
| 已接受的邀请 | 接受后30天 | “invites”部分 |
支持请求(support_requests) | 24个月 | “support”部分 |
对报告的反馈(report_feedback) | 24个月;IP地址的校验值2天 | “report_feedback”和“report_feedback_ip”部分 |
缓存中的报告PDF版本(var/pdf) | 7天 | “pdf_cache”部分 |
域名排除(opt-out)中的IP地址、国家/地区和浏览器标识(blocklist) | 12个月;排除本身保留 | “optout_ip”部分 |
门户订阅者(client_subscribers) | 未确认的30天;已退订的3年 | “subscribers”部分 |
| 从未确认的账户,连同工作区 | 30天未登录,除非还关联有其他成员 | “pending_accounts”部分 |
| 无账户的API密钥(遗留数据) | 立即 | “api_keys”部分 |
6.2 03:00时间窗口之外
| 数据 | 存储期限和触发条件 | 代码位置 |
| 送达检查控制邮箱中的副本 | 处理后删除,每五分钟一次 | fe_zustellung_abholen() |
送达检查的归属记录(delivery_log) | 180天,每次取回时执行 | fe_zustellung_abholen() |
任务中的测试账户密文(scan_jobs) | 运行结束后,最迟一小时后 | 扫描服务器;fe_login_aufraeumen() |
事件(alert_incidents)及其升级通知发送尝试 | 未解决期间保留;解决后180天 | fe_vorfaelle_aufraeumen(),位于cfg/vorfall_lib.php |
已发送的汇总通知(alert_queue) | 送达后30天 | cfg/kanal_lib.php |
群体防护信号(swarm_signals) | 30天,每日04:00起 | cfg/swarm_lib.php |
潜在客户检查(prospect_checks) | 90天,每日04:00起 | srv/cron_status.php |
Telegram关联代码(telegram_links) | 1天,在创建新代码时 | cfg/kanal_lib.php |
API调用计数器(api_usage) | 1天,偶尔在调用时 | cfg/agentur_lib.php |
已解决的服务商故障(provider_incidents)、漏洞缓存(vuln_cache) | 分别为90天和30天;不含个人数据 | cfg/anbieter_lib.php、cfg/luecken_lib.php |
| 研究原始数据 | 发布时 | fe_studie_veroeffentlichen() |
| 备份 | 14天,在新备份成功后 | cfg/backup_lib.php |
| Web服务器日志 | 14天 | 系统日志轮转 |
6.3 客户删除时
- 删除域名(
fe_domain_loeschen()):检查结果及表单、发现项和图片文件、报告、任务、提醒目标、送达日志、汇总队列、事件、Telegram代码、送达记录、脉搏检查、漏洞、证据日志、从采用固定选择的客户门户中移除该域名;通过外键删除受监控的表单及浏览器运行记录、观察记录和时间序列、测试账户、表单计数器;如无其他域名引用该主机,则删除该主机的插件数据。该域名的脚本清单和脚本变更也会随之删除;它们没有单独的存储期限(第6.4节和第10节)。2026年九月27日之前遗留的、没有关联域名的数据由夜间任务清除(“orphan_scans”、“orphan_rows”部分)。
- 删除工作区(
fe_arbeitsbereich_daten_loeschen()):此外还删除品牌信息(包括徽标)、客户门户(包括订阅者)、批量部署代码、潜在客户检查;以及邀请和成员关系。
- 删除账户:立即在Stripe终止正在进行的付费订阅,不予退款;转移或删除持有人自己的工作区;删除成员关系、保持登录令牌、设备、API密钥及其计数器、未使用的Telegram代码以及账户记录。
- 删除测试账户(
fe_login_loeschen()):覆盖密文、删除记录、清除等待中的任务。
6.4 删除任务未涵盖的内容
这份清单更为重要。它列出了没有自动存储期限或在删除后仍然保留的数据。
| 数据 | 适用规则 | 评估 |
账户数据,包括最近一次IP地址(users) | 保留至账户持有人删除;不删除不活跃账户 | 合同数据;尚缺少针对长期不活跃且无订阅账户的规则 |
| 已删除账户的活动日志、页面浏览记录、错误日志 | 连同账户ID和IP地址保留至其存储期限届满 | 有意为之(终止后仍可证明操作);该ID不再指向任何账户 |
| 已删除账户的支持请求 | 连同旧账户ID保留最多24个月 | 有意为之;该ID不会被清除 |
| 已删除账户的同意记录 | 保留至同意满4年(从同意时起算,而非从账户删除时起算) | 有意为之(B.12节) |
含IP地址的未解决异常(abuse_flags) | 保留至有人解决 | 未决事项(第10节) |
含未经修改示例消息的错误类型(error_kinds) | 无存储期限 | 未决事项(第10节) |
脚本清单和脚本变更(script_inventory、script_changes) | 没有单独的存储期限;在域名存在期间保留,并随域名一并删除 | 未决事项(第10节) |
| 已撤销客户门户的订阅者 | 保留至工作区被删除 | 未决事项(第10节) |
| 已撤销的API密钥和批量部署代码 | 保留至账户或工作区被删除 | 仅哈希值、前缀和标签;影响轻微 |
研究主机列表(study_domains)、从未发布的研究 | 无存储期限 | 未决事项(第10节) |
| 既无域名也无报告的内部检查(检查结果、表单、发现项、截图) | 无存储期限;没有任何删除途径涵盖它们 | 未决事项(第10节) |
| 佣金、代码兑换记录、Stripe事件 | 无存储期限 | 与会计相关;期限须依据税法确定 |
缓存的域名注册时长(domain_age_cache) | 无存储期限 | 仅域名和注册日期 |
| 表单电子邮件的认证结果及发件人域名 | 随域名保留;每次接收时覆盖 | 见A.1 |
| 域名排除(opt-out)条目 | 永久 | 有意为之;不永久保留就无法使排除生效 |
| 报告渠道邮箱和通用邮箱中的电子邮件 | 无技术性存储期限 | 未决事项(第10节) |
6.5 数据库之外
- 截图以文件形式保存在Web目录之外,并随其检查结果一并删除(上述所有删除途径也会删除这些文件)。
- 品牌徽标文件在被替换时以及随工作区一并删除。
- 在扫描服务器上,每个任务都会创建一个包含结果和图片的临时目录;每次运行结束后都会删除该目录,即使发生错误也是如此。
- 备份保存在Web服务器上(B.27)。
- 含完整IP地址的Web服务器日志保留14天(B.1)。
7. 自动化决策、用户画像和评估
formexposed评估的是网站,而不是人。据我们评估,本服务不会作出对个人产生法律效力或以类似方式对其产生重大影响的决策(GDPR第22条第1款)。不过,确实存在自动化评估和自动屏蔽。我们将其列出,以便核查这一定性。
| 机制 | 作用 | 影响对象 |
| 检查的分数和结论 | 缺失防护层(CAPTCHA、陷阱、令牌、时间检查、无效的CAPTCHA、已知的暴露配置)的加权总和,取值0至100;据此得出“暴露”、“部分防护”或“已防护”。网站的结论取决于被规则(而非语言模型)识别为联系表单的表单中最差的一个;没有联系表单则没有结论。权重可在管理区域中设置。 | 网站运营者;对于个体经营者,间接涉及个人。该结论不产生法律后果;它是附有证据和操作说明的检查结果。 |
| 表单类型分类 | 先使用规则,仅当规则返回“未知”时才使用本地语言模型。决定是否允许主动测试提交(仅限被规则可靠识别的联系表单)。由语言模型分类的表单绝不会被提交,也不计入分数和结论。 | 客户及其表单电子邮件的接收者;保护作用:有疑问时不提交任何内容。 |
| 付费报告中按优先级排列的行动计划 | 本地语言模型将选定的未通过或不明确的检测结果和扫描元数据汇总为简短的编号步骤。其文本会标明是 AI 摘要;各项检测结果仍是判断依据。它不会更改扫描评分、结论或网站配置。 | 客户或其他获授权的报告读者,由其决定采取哪些步骤。 |
| 徽章 | 仅在固定条件下显示“已防护”(B.18),否则为中性显示。 | 客户;对访客无影响。 |
| 免费检查、安全响应头工具和域名排除(opt-out)的限制和屏蔽 | 如果达到按地址、会话、域名或系统设定的限制,如果域名注册时间过短或注册时长未知,或者域名在黑名单上,则拒绝请求。 | 请求者;影响:在数小时至数天内无法使用某项免费服务。管理员可以放行某个地址;通过联系页面提出的咨询由人工处理。 |
| 异常 | 记录并报告各类模式(同一地址的大量域名、请求突增、大量拒绝、来自同一国家/地区的大量域名排除、达到每日上限)。它们本身不会造成屏蔽;屏蔽源于限制。 | 请求者。 |
| 登录锁定 | 同一地址在15分钟内登录失败达到目前设定的八次后,来自该地址的登录将被暂时拒绝。此外,在15分钟内,所有登录尝试(包括成功的尝试)都会按账户和IP地址组合计数(目前为八次)、按账户跨所有地址计数(次数高得多,用于防御分布式猜测)以及按IP地址计数(目前为80次),第二因素代码亦同样计数(每个账户15分钟内十次);超出后尝试将被拒绝。因此,来自其他地址的失败尝试不会再将账户所有者锁定在外。密码确认(每个账户15分钟内五次)、重置邮件(每个地址每小时三次,响应不变)、注册(每个IP地址每小时十次)以及客户门户密码尝试(每个门户和IP地址十次,每个门户15分钟内50次)也以同样方式受到限制。 | 登录、注册或打开客户门户的人员;影响有时间限制,仍可重置密码。 |
| reCAPTCHA阈值 | 拒绝低于Google分数的提交;阈值按使用位置设定(检查和域名排除目前为0.7)。针对不同操作的响应以及Google未在三秒内响应的提交也会被拒绝。 | 提交我们表单的人员;影响:重新尝试或改用联系页面。 |
| 群体防护 | 达到最低阈值时自动将链接域名列入名单;已连接网站的防护层会将含有此类链接的消息移入隔离区。 | 向客户页面发送消息的发送者。影响:消息被暂扣而非删除,网站运营者可将其放行。关于消息的决定由运营者网站上的运营者插件作出,而非由我们作出。 |
| 对比值 | “防护水平优于X%的已检查网站”,仅基于至少20个主机的汇总数据。 | 网站运营者;无影响。 |
最接近第22条的是插件在客户页面上的防护层,它会自动暂扣提交内容。这是网站运营者在其自有服务器上进行的处理(A.10)。它不删除任何内容,只是将消息移入隔离区,运营者可以放行任何消息。无论在那里还是在我们这里,都不会对访客进行用户画像;不存在将一条消息与另一条消息关联起来的访客标识。
8. 技术和组织措施(第32条)——总体描述
本节是依据GDPR第30条第1款(g)项和第2款(d)项所作的总体描述。详细版本见技术和组织措施页面。以下每项措施都在代码或配置中有据可查。尚未实施的措施也列在同一节中(8.1),以确保描述完整。
| 领域 | 已生效的措施 |
| 传输加密 | 网站、应用程序和接口均使用HTTPS;HSTS;会话Cookie和保持登录令牌Cookie仅通过HTTPS传输,HttpOnly,SameSite=Lax。 |
| 访问控制(身份验证) | 密码仅以哈希值形式存储,新密码至少十个字符、最多72字节;多次失败尝试后锁定登录,并按账户和IP地址组合、按账户以及按IP地址设定尝试上限,使来自其他地址的失败尝试不会将所有者锁定在外;密码确认、密码重置(响应内容和响应时间相同)、注册和门户密码也设有尝试上限;双因素登录(TOTP),密钥加密存储,防止代码重复使用,恢复代码以哈希值形式存储;每次登录都会生成新的会话标识,不接受非服务器签发的标识;超级管理员不可使用“保持登录”,每个令牌仅可使用一次;更改电子邮件地址会使未使用的重置链接失效;设备可单独撤销或全部撤销;设备列表仅保存会话标识的哈希值。 |
| 访问控制(授权) | 按工作区划分角色(所有者、管理员、只读者);权限针对对象进行检查,绝不依据表单中的标识;测试账户、“Fix it for me”和主动检查仅限所有者和管理员;“以客户身份查看”有时间限制,且禁止更改账户的操作,结束时完全登出,只有使用密码和第二因素才能返回管理区域;邀请仅在邀请人仍是所有者或管理员期间有效;Webhook和聊天频道的地址对只读者仅显示缩短至主机名的形式;已验证域名的主机名不可更改。 |
| 应用安全 | CSRF令牌;预处理数据库语句;我们自己的表单防护(陷阱、带签名的时间检查);公开表单使用reCAPTCHA;对支持、检查和接口进行速率限制;每个工作区同一时间只允许一次“Fix it for me”调用,使配额在并发请求时同样有效;带有防框架嵌入保护的内容安全策略(Content Security Policy),只允许运行带有相应响应放行标记(nonce)的脚本;仅从我们自己的代理获取转发标头中的IP地址,且只取其追加的条目;页面浏览日志中的访问令牌经过遮蔽处理。 |
| 密钥与机密 | API密钥、批量部署代码、插件连接密钥、一次性代码和门户密码仅以哈希值形式存储;测试账户的访问凭据采用非对称加密,私钥仅存放在扫描服务器上;Webhook带签名;仅接受带有效签名的Stripe事件。 |
| 数据最小化 | 送达检查不存储内容,也不存储完整的发件人地址;表单中的收件人地址仅以域名形式存储;脚本地址中的账户ID会被替换;插件数据仅来自固定列表;电子邮件发送错误文本仅以类别形式存储;Telegram信号不含变量;浏览器检查图片中的输入内容经过遮盖;登录后的页面不截图。 |
| 扫描器隔离 | 每次检查都在独立容器中运行:移除所有Linux capabilities,禁止权限提升,只读文件系统,内存和进程限制,独立网络;在受理前和扫描器中(包括重定向之后)检查目标是否指向私有和本地网络;阻止Service Worker,关闭WebSocket连接。Web服务器发出的请求(控制权证明、安全响应头工具、文件搜索、脉搏检查、RDAP、证书、Webhook和聊天提醒)仅使用常用Web端口,且仅发往经过检查的确切地址,Webhook和聊天提醒仅通过HTTPS发送。 |
| 存储 | 截图存放在Web目录之外,仅可通过报告调取;报告位于随机地址,并带有noindex;备份目录仅服务本身可读。 |
| 可用性和恢复 | 带内容检查的夜间备份、每周恢复测试、失败时提醒;每五分钟进行组件检查,并发出信号和电子邮件;外部心跳;匿名检查的紧急停止;积压时进行反压控制。 |
| 可追溯性 | 记录登录、更改、删除、支持访问和批准的活动日志;带提醒的错误日志。 |
| 删除 | 存储期限集中在代码中的一处,与文本使用相同的设置(第6节);域名、工作区和账户的删除链,例外情况见第6.4节。 |
| 数据主体权利 | 一键将所有账户数据导出为文件,基于字段允许列表,不含机密信息。 |
| 组织 | 管理区域仅对拥有超级管理员权限的账户开放,在“以客户身份查看”期间被锁定;开发系统与生产系统相互分离,开发系统另设访问屏障;法律文本经批准后通过一个拒绝草稿和占位符的工具进行传输。 |
8.1 尚未实施的措施
- 数据库未进行静态加密(于2026年十月11日测定)。例外是测试账户的访问凭据和双因素密钥,它们在字段级别加密。
- 内部连接未全面加密。我们内部网络中的连接未全面加密。测试账户的访问凭据在其中仅以密文形式传输。
- 没有在第二个地点的备份。备份目前与数据库存放在同一地点,且未单独加密;计划在第二个地点存放一份加密副本。在此之前,备份可以防范错误的删除命令,但无法防范该地点的损失。
- 服务器管理的加固尚未完成。对我们服务器的管理访问的安全性尚未达到我们为运营所设定的标准;加固工作仍在进行。我们不公开细节,因为细节会帮助攻击者;如监管机构提出要求,我们将向其提供。
- 管理区域没有可用的读取日志。写入操作会记录在活动日志中;谁仅仅查看了哪个支持请求或哪份报告,只能通过页面浏览日志(60天)来确定。
- 没有永久的删除日志。夜间任务删除了什么不会被记录(第6节)。
- 没有独立的第二检查点。位于第二个地点的探针尚未设置(A.6)。
9. 数据保护官——依据GDPR第37条的评估
结论:据我们评估,不存在指定数据保护官的义务。该评估属于法律审查的一部分,一旦下列任何情况发生变化,将重新进行评估。
第37条第1款规定在三种情况下须指定数据保护官。
- (a)项(公共机关或公共机构)不适用。
- (b)项(核心活动需要对数据主体进行大规模的定期和系统性监控):我们的核心活动是定期、系统地检查网站和表单,而不是观察人。我们不创建访客画像,不使用跟踪,也不将任何消息与其他消息关联。送达检查(A.1)会让真实的访客消息经过我们的邮箱,但仅评估邮件标头和前8 KB以确定归属,不存储内容;它观察的是送达路径,而不是人。客户账户和日志是业务活动的附属部分。
- (c)项(核心活动包括大规模处理第9条所述特殊类别数据或第10条所述与刑事犯罪相关的数据):不满足。特殊类别数据可能偶然出现在表单电子邮件的副本中(A.1)、登录后的页面上(A.5)或粘贴的代码中(A.7);偶然获取不属于核心活动。
第37条第4款允许成员国法律增加其他情形。我们正在请律师确认波兰法律是否要求我们指定数据保护官。
触发重新评估的情形:启用含IP网段的群体防护;能够跨多条消息或多个网站识别访客的功能;存储送达检查中的内容;某客户的表单主要涉及特殊类别数据(健康、求职申请)且大规模开启了送达检查;首位能够访问客户数据的员工。自愿指定仍然可行;届时第37条至第39条将全面适用。
另外:对于各项处理活动是否需要依据第35条进行数据保护影响评估,由数据保护影响评估页面予以回答。其门槛评估的结论是:群体防护(B.21)和预定规模的研究(B.7)需要进行数据保护影响评估(DPIA),并由我们执行;而对于送达检查(A.1),在典型情形下需要进行,这是客户的义务,我们会为此提供支持。
10. 未决事项和计划措施
以下事项均在代码、数据结构或配置中有据可查,而非推测。它们描述的是截至本版本日期的状况;定性由我们自行作出,不预判任何法律评价。它们按对数据主体的影响程度排序,而不是按修复的难易程度排序。计划措施及其优先级载于数据保护影响评估。
| 未决事项 | 已查证的情况 | 意义 |
| 邮件服务提供商的合同尚未记录 | 对于Namecheap, Inc. (Private Email), Phoenix, Arizona, USA,合同、处理地点和传输依据均未记录。账户电子邮件、提醒以及含有真实访客消息的控制邮箱都经过该服务提供商。 | 相关规定为GDPR第28条第2款和第4款以及第五章。计划在上线前签订合同并予以记录。 |
| 聊天服务和reCAPTCHA的依据尚未确定 | 发送到Telegram(无充分性决定)、Slack、Discord、Microsoft Teams和Google Chat的提醒;reCAPTCHA未征求同意。 | 有待法律审查的未决问题;在此之前,告知内容和依据并非最终版本。 |
| 控制邮箱在故障期间可能留存消息 | 删除在成功处理后进行;如果取回失败,副本将保留至下一次成功运行。邮箱中长时间积压时没有警告。 | 这些副本包含真实的访客咨询。 |
| 没有在第二个地点的备份,数据库未进行静态加密 | 第8.1节。计划在第二个地点存放一份加密的备份副本。 | 该地点发生单一事件就会同时影响数据和备份;被盗的存储介质将可被读取。 |
| 未解决的异常没有存储期限 | 以完整IP地址为键的异常仅在解决后90天才会删除;从未解决的异常将一直保留。 | 涉及存储限制原则(第5条第1款(e)项);删除取决于人工解决。计划设定固定的存储期限(数据保护影响评估中的措施)。 |
| 含示例消息的错误类型没有存储期限 | 示例消息以未经修改的形式存储,最多2,000个字符;经过清理的模式会去除地址和数字,而示例不会。 | 错误消息可能包含电子邮件地址、主机名或IP地址。 |
| 脚本清单没有单独的存储期限 | 脚本清单和脚本变更随域名一并删除(FE_DOMAIN_TABELLEN),包括删除工作区或账户时以及夜间清理遗留数据的任务中;它们没有单独的存储期限。其中包含脚本地址、页面地址,以及批准时的批准人和自由文本形式的理由。 | 涉及存储限制原则(第5条第1款(e)项);只要域名存在,含批准记录的变更日志就会不断增长。 |
| 已撤销门户的订阅者 | 已撤销的门户会被锁定而非删除;其订阅者将保留至工作区被删除。 | 目的(发送报告)已随撤销而终止。 |
| 研究列表没有存储期限 | 发布后,主机和分组仍然保留;从未发布的研究也保留其原始数据。 | “原始数据将被删除”的承诺仅适用于已发布的研究。 |
| 内部检查没有删除途径 | 信任级别为“内部”、既无域名也无报告的检查(研究以及运营者通过命令行创建的检查)不在任何删除途径的涵盖范围内;随之保留的还有第三方网站的表单、发现项和截图。 | 涉及存储限制原则(第5条第1款(e)项);影响对检查毫不知情的人。在数据保护影响评估中被评为高风险。 |
| 控制权证明不会更新 | 控制权证明只检查一次;代码中不存在让域名再次失去证明的途径。 | 在所有者或委托关系变更后,主动测试提交、文件搜索和登录后扫描仍会继续。 |
| 登录后扫描:到客户页面的传输 | 登录地址允许使用http以及https,且客户页面上的证书错误不会阻止登录。 | 测试账户的访问凭据可能在传往客户页面的途中被截获。 |
| 删除取决于时间窗口 | 只有当某次状态任务在03:00至03:04之间启动时,每日代码块才会运行。如果这一次运行失败(数据库无法访问、服务器重启),当天的删除和备份就不会进行;也没有补做机制。删除了什么不会被永久记录。 | 此时存储期限会被悄然延长一天。错过时间窗口不会触发提醒;只有已运行但失败的备份才会被报告。管理区域中的设置清单会显示最近一次成功备份的日期。 |
| 部分删除取决于监控 | 清空送达检查的控制邮箱、删除事件、已发送的汇总通知、群体防护信号和潜在客户检查,以及清除任务中遗留的测试账户副本,都在状态任务的调度部分中运行,而该部分只有在管理区域中开启监控时才会工作;送达检查的归属记录仅在设置了控制邮箱时才会被删除。 | 如果集中关闭监控或移除邮箱,这些存储期限就会在无人察觉的情况下停止执行。 |
| 报告渠道和邮箱没有存储期限 | 漏洞报告和其他收到的电子邮件保存在应用程序之外;尚未设定存储期限。 | 报告可能包含第三方的证据。 |
| 检查期间会读取隐藏字段的值 | 扫描器会读取隐藏表单字段最多24个字符的值以及最多60个字符的data属性,以识别时间戳和令牌。进入字段映射和发现项的仅为字段名称、类型、标签和识别结果,而不是值。 | 不存在存储方面的缺口;该值仅在检查期间保存在扫描容器的内存中。预先填写的值(例如客户编号)会在此过程中被读取,但不会被存储。 |
| 认证结果中推导出的发件人域名 | A.1。 | 对于访客的个人域名,这是源自真实消息的个人数据。 |
| 服务器管理的加固尚未完成;内部连接未全面加密 | 第8.1节。加固工作仍在进行;我们不公开说明细节。 | 服务器层面的安全事件将同时影响应用程序、数据库和备份。 |
| 在开发系统上测定 | 数据结构、代码和设置是在开发系统上测定的。 | 代码和数据结构与生产系统一致;设置可能有所不同,必须在上线前于生产系统上再次检查。 |
11. 本记录的维护
第30条要求以书面形式保存记录,并应要求向监管机构提供。这需要有专人负责,并按一定周期将记录与系统本身(而非与其上一版本)进行核对。
- 责任人:Lukas Wójcik,所有者。每年审查一次,并在任何处理活动发生变化时审查。
- 需要更新的事件:新增或变更次级处理者,特别是选定邮件服务提供商;包含个人数据的新数据表或新字段;对
cfg/fristen_lib.php或srv/cron_status.php中存储期限或删除链的更改;新的提醒渠道或向第三方发出的新请求;开启默认关闭的功能(含IP网段的群体防护、探针、自有域名、合作伙伴计划、发票付款、Spamhaus或Google Web Risk);迁移到其他服务器。
- 程序:此处的每一项陈述都来自代码、数据结构或测定。只阅读文本的审查等于什么也没审查:数据结构和删除链要重新测定,占位符仍保持为占位符,未决事项要么关闭,要么附理由继续保留。
- 与其他文件的关系:本记录不取代隐私政策、数据处理协议、技术和组织措施或次级处理者列表。如果这些文件与本记录存在差异,该差异本身即为一项发现。
- 本文件的变更列于合同文件变更页面。