资讯详情

资讯详情

Wasp 官网隐私政策与数据收集实践:从 Cookie 同意机制到 PostHog 分析的完整解析

Wasp 官网隐私政策与数据收集实践从 Cookie 同意机制到 PostHog 分析的完整解析【免费下载链接】waspThe batteries-included full-stack framework for the AI era. Develop JS/TS web apps (React, Node.js, and Prisma) using declarative code that abstracts away complex full-stack features like auth, background jobs, RPC, email sending, end-to-end type safety, single-command deployment, and more.项目地址: https://gitcode.com/GitHub_Trending/wa/wasp导读本文以 Wasp 仓库中官网wasp.sh的 隐私政策文档 为骨架逐节解析 Wasp Inc. 收集哪些数据、如何收集、如何存储与保护并将政策条款与仓库内真实的实现源码Cookie 同意横幅、PostHog 分析脚本、脚本按需加载机制一一对应帮助你既理解这份 GDPR 风格隐私政策的法律语义也看清其背后「隐私条款 → 前端实现 → 数据链路」的工程全貌。一、隐私政策概览文档定位与适用前提该文档位于web/src/pages/privacy-policy.md是 Wasp Inc. 官网https://wasp.sh对外公开的正式隐私政策页面。其 frontmatter 声明了页面元信息title: Privacy Policydescription: Privacy Policy for Wasp Inc.hide_table_of_contents: true隐藏目录侧边栏保持页面简洁政策本身由 Wasp Inc.we/our/us发布最近更新时间为2026-01-13适用范围限定于访问 wasp.sh 网站的用户行为。文中明确写道「如果您不同意本隐私政策的条款请勿访问本网站」这是典型的 GDPR 合规文案结构政策末尾也注明其基于 GDPR.eu 提供的隐私通知模板撰写。从工程角度看这份政策并非孤立的法律文本——它描述的每一项数据实践Cookie、分析工具、第三方服务都能在仓库的web/站点源码中找到对应实现本文后续章节将逐项建立「条款 ↔ 代码」的对应关系。二、数据收集收集什么、如何收集2.1 收集的数据类型政策声明 Wasp Inc. 收集以下四类个人数据数据类型说明IP 地址用于定位访问来源与基本网络信息浏览器类型识别用户使用的浏览器与客户端环境访问页面记录用户访问了站点的哪些页面页面停留时间衡量用户在页面上的停留时长这四类数据共同构成了网站流量分析的基础指标属于典型的「访问分析型」数据集合不包含姓名、邮箱等主动提交的身份信息。2.2 收集方式政策指出用户通过浏览器 Cookie直接提供了大部分数据——当用户使用或浏览网站时数据经由 Cookie 被采集。也就是说该站点采用「默认被动埋点 用户主动访问触发」的方式采集上述匿名化程度较高的行为数据。三、数据的使用与第三方服务3.1 使用目的收集到的数据仅用于三个目的分析网站流量Analyze website traffic改进网站体验Improve our website理解访客如何使用站点Understand how visitors use our site3.2 第三方服务PostHog政策明确列出的第三方服务是PostHog产品分析平台。政策强调第三方服务商拥有各自的隐私政策用户应自行查阅Wasp Inc. 仅在「提供服务所必需」的范围内与第三方共享信息第三方有义务对信息保密并确保安全。源码印证PostHog 的实际接入位于 web/static/scripts/posthog.js。该文件是 PostHog 官方加载器的压缩版含posthog.init桩方法注册并在文件末尾以项目密钥完成初始化posthog.init(CdDd2A0jKTI2vFAsrI9JWm3MqpOcgHz1bMyogAcwsE4, { api_host: https://us.i.posthog.com, person_profiles: identified_only, });两个关键配置值得注意api_host指向 PostHog 的 US 数据节点us.i.posthog.com即采集数据发送到该地址person_profiles: identified_only意味着 PostHog只为已识别identified的用户创建人物档案匿名访客的页面浏览不会自动生成可关联的个人画像——这与政策中「仅收集 IP、浏览器类型、访问页面、停留时间」的轻量采集口径是自洽的。3.3 站点脚本加载的整体编排在 web/docusaurus.config.ts 中可以看到生产环境prodOnlyScripts的两类分析脚本及其不同的同意策略脚本来源requiresConsent原因Plausible 代理脚本/waspara/wasp/script.js经 Cloudflare Workers 代理false注释明确说明 Plausible 不使用 Cookie因此可立即加载PostHog 脚本/scripts/posthog.jstrue涉及 Cookie 采集须等待用户同意后才加载实现上mapToDocusaurusScripts会对需要同意的脚本设置自定义type属性text/javascriptrequires-consent使其默认不被浏览器自动执行// Scripts requiring consent shouldnt be loaded until the cookies are accepted, // so we use a custom type on the script _not to load it_ automatically. // Later, if cookies are accepted, the script will be loaded by the // src/components/CookieConsentBanner.tsx component. ...(requiresConsent ? { type: SCRIPT_WITH_CONSENT_TYPE } : {}),这也解释了隐私政策中「我们通过 Cookie 收集数据」的具体机制只有用户接受 Cookie 后PostHog 埋点脚本才会被真正加载并开始采集。四、Cookie 同意机制从条款到源码4.1 同意横幅组件政策要求用户知情同意其落地实现是 web/src/components/CookieConsentBanner.tsx。该组件基于react-cookie-consent库构建提供Accept all / Reject all两个按钮enableDeclineButton开启拒绝选项明确的说明文案We use cookies primarily for analytics to enhance your experience...并链接到/privacy-policy页面供用户进一步了解自定义 Cookie 名称wasp-cookies-consent。4.2 同意状态驱动的脚本加载组件核心逻辑是一个loadScripts函数与useEffect的组合const CONSENT_COOKIE_NAME wasp-cookies-consent; useEffect(() { if (Cookies.get(CONSENT_COOKIE_NAME) true) { loadScripts(); } }, []);当用户点击接受onAccept{loadScripts}或此前已同意Cookie 值为true时loadScripts会遍历页面中所有typetext/javascriptrequires-consent的脚本标签通过「移除节点 → 将 type 改为text/javascript→ 重新挂载」的方式触发浏览器执行function loadScripts() { document .querySelectorAll(script[type${SCRIPT_WITH_CONSENT_TYPE}]) .forEach((el) { // We need to reattach the element so that the browser picks up the new type. const parent el.parentNode; parent.removeChild(el); el.setAttribute(type, text/javascript); parent.appendChild(el); }); }自定义脚本类型常量定义在 web/src/lib/cookie-consent.tsexport const SCRIPT_WITH_CONSENT_TYPE text/javascriptrequires-consent;4.3 拒绝后的行为如果用户选择Reject all则wasp-cookies-consent不会被置为truePostHog 脚本始终保持text/javascriptrequires-consent类型而永不执行从而做到「零分析埋点」。这正对应政策中用户可管理 Cookie 偏好的承诺。五、数据存储与安全政策在「数据如何存储」一节声明了两层保障安全措施SSL/TLS 加密传输层加密保护数据在浏览器与服务器之间传输安全云基础设施托管层面的防护。数据保留个人数据仅保留「实现本政策所述目的所必需」的时长期限届满后数据将被安全删除。需要说明的是政策对具体的保留周期如多少天、多少个月未作硬性数字承诺而是以「目的达成即删除」的原则性表述为主——这也是 GDPR 框架下常见的做法。六、营销与选择退出政策声明 Wasp Inc. 希望向用户发送其可能感兴趣的产品与服务信息但强调用户有权在任何时候停止接收营销联系若用户此前同意接收营销可随时选择退出退出或咨询途径发送邮件至infowasp-lang.dev。这一节体现了「同意可撤销」原则即便营销沟通基于用户同意该同意也可以被随时撤回且撤回方式透明一个联系邮箱即可。七、数据保护权利GDPR 六大权利详解政策明确赋予每位用户以下六项数据保护权利全部源自 GDPR欧盟《通用数据保护条例》的框架权利内容访问权Access请求获取个人数据的副本服务方可能收取少量费用更正权Rectification请求纠正不准确的信息或补全不完整的信息删除权Erasure在特定条件下请求删除个人数据限制处理权Restrict processing在特定条件下请求限制对个人数据的处理反对处理权Object to processing在特定条件下反对对其个人数据的处理数据可携带权Data portability请求将已收集的数据转移给其他组织或直接转交给用户本人政策同时承诺用户提出请求后Wasp Inc. 将在一个月内作出回应。行使权利的途径包括邮箱infowasp-lang.dev地址2261 Market Street, San Francisco, CA 94114八、Cookie 详解与管理8.1 什么是 Cookie政策将 Cookie 定义为「放置在用户计算机上的文本文件」用于收集标准的互联网日志信息与访客行为信息。网站可能通过 Cookie 或类似技术自动收集信息。8.2 网站如何使用 CookieWasp Inc. 使用两类 Cookie 以改进网站体验功能性 CookieFunctional cookies保持登录状态、记住用户偏好分析型 CookieAnalytics cookies理解用户如何使用网站以改进服务。8.3 管理 Cookie用户可以通过浏览器设置拒绝接受 Cookie或清除浏览器中已有的 Cookie政策引用了第三方资源 allaboutcookies.org 的操作指引。政策同时给出诚实的前提提示在少数情况下部分网站功能可能因 Cookie 被禁用而无法正常工作。这与仓库实现中的两个事实相互印证拒绝 Cookie 会导致 PostHog 分析脚本不加载见第四章但网站核心功能如文档浏览不受影响因为核心脚本requiresConsent: false功能性 Cookie如记住偏好若被拒绝个性化体验会相应降级。九、第三方网站链接与政策变更第三方网站网站可能包含指向其他网站的链接但本隐私政策仅适用于 wasp.sh 自身用户点击外部链接后应查阅目标网站自己的隐私政策。政策变更Wasp Inc. 会定期审查本政策并将任何更新发布在当前页面最近一次更新日期为 2026-01-13。用户可通过查看页面顶部的日期戳确认最新版本。十、如何联系我们与投诉渠道政策提供了两级联系/救济渠道直接联系 Wasp Inc.对隐私政策、持有的个人数据或行使数据权利有任何疑问可发送邮件至infowasp-lang.dev或邮寄至 2261 Market Street, San Francisco, CA 94114联系监管机构若用户认为问题未得到满意解决可向其当地的数据保护监管机构data protection supervisory authority提交投诉——这是 GDPR 下的标准救济路径。附网站隐私与 Wasp CLI 遥测的边界值得一并厘清的是上述隐私政策仅覆盖wasp.sh 网站的数据采集而 Wasp 命令行工具waspCLI自身还有一套独立的、面向框架使用者的**遥测Telemetry**机制详见 web/docs/telemetry.md。两者是相互独立的体系维度网站隐私政策CLI 遥测数据来源wasp.sh 站点访问行为wasp命令执行采集内容IP、浏览器、页面、停留时间随机 UUIDdistinct_id、项目哈希project_hash、命令类型、wasp_version、OS、上下文发送方式PostHog 脚本需 Cookie 同意HTTPS 请求每 12 小时最多发送 3 次退出方式浏览器拒绝 Cookie / 拒绝按钮设置环境变量WASP_TELEMETRY_DISABLE1CLI 遥测明确声明其数据是匿名化anonymized且范围极有限的distinct_id为随机生成的、不可识别的 UUIDproject_hash为不可识别的项目哈希部署参数仅保留预定义关键词白名单fly、railway、setup、create-db、deploy、cmd、launch中的内容。这与网站隐私政策「轻量采集」的总体取向保持一致共同构成了 Wasp 在数据隐私层面的完整实践。参考文件索引隐私政策原文Cookie 同意横幅组件Cookie 同意脚本类型常量站点脚本加载配置PostHog 分析脚本Wasp CLI 遥测说明【免费下载链接】waspThe batteries-included full-stack framework for the AI era. Develop JS/TS web apps (React, Node.js, and Prisma) using declarative code that abstracts away complex full-stack features like auth, background jobs, RPC, email sending, end-to-end type safety, single-command deployment, and more.项目地址: https://gitcode.com/GitHub_Trending/wa/wasp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →