用途:这是一个路由与辨析型技能,只负责为“站点能否被加载”选择正确的保护层,不负责实现应用内登录。它先区分三类常被混称为“auth”的机制:Netlify Identity(应用内用户身份,签发 nf_jwt,属于 netlify-identity 技能范围);密码保护/项目可见性(平台边界,决定请求能否加载站点,本技能范围);团队/组织 SAML SSO(登录 Netlify 后台)。同一提供商(如 Google)可能同时作为应用用户的 Identity OAuth 提供商和团队成员的 SAML IdP,二者互不相关。
主要能力:按目标给出选层建议,例如限制为团队访问用 Private 项目或团队登录保护;共享密码用基础密码保护或 Password 可见性(Pro);仅保护预览用“仅非生产部署/仅预览”;要求 SSO 查看站点用组织/团队 SSO 加“仅允许 SSO(严格)”加团队登录保护;应用内登录转 netlify-identity;全公司应用级单点登录且避免双重登录推荐 Auth0 扩展。同时说明不同套餐下 UI 命名差异(Credit-based 用 Project visibility,Enterprise/开源/旧版用 Password Protection)及对应仪表盘路径。
使用方式:这些设置没有公开 API、CLI 命令或 MCP 工具,不要 curl api.netlify.com 或读取本地令牌,应把仪表盘路径和清单交给用户。技能提供设置密码、配置密码保护、要求 SSO 查看站点的操作清单,并说明 SSO 令牌 1 小时过期、站点返回 401 的“会话中途登出”症状,可读取 Netlify-Site-Protection-Expires-In 响应头在到期前重新认证。
适用场景与限制:适用于 Netlify 站点访问保护选型与排障。限制包括:密码保护/团队登录会话与 Identity 应用会话之间无共享 cookie、无头转发、无 JWT 交换,双重登录真实存在;高级 Web 安全(防火墙、WAF、限流)先于密码/登录提示执行;团队登录不含 Git Contributors;基础密码保护会提示包括管理成员在内的所有人;Private 项目无法接收第三方 webhook;仅预览的密码范围在密码保护路径下为 Enterprise 专属;套餐与权限限制较多。跨客户端可在 GitHub Copilot、Claude Code、Codex 使用,Codex 需同步到 $CODEX_HOME/skills/netlify-access-control 并重启。