mcpField
R
roblox-oauth

roblox-oauth

github.com/tabooharmony安全138240 次安装2 周前更新
代码仓库

关于 roblox-oauth

供集成 Roblox Open Cloud 的开发者参考的 OAuth 2.0 技能,涵盖应用注册、PKCE 授权码流程、令牌生命周期、作用域与错误排查。它区分公共客户端和机密客户端的要求,并提供安全处理要点。

主要功能

  1. 01授权码与 PKCE 流程选择
  2. 02授权码和令牌交换说明
  3. 03访问令牌刷新与撤销
  4. 04最小权限作用域选择
  5. 05身份及令牌验证端点
  6. 06OAuth 错误排查要点

适用场景

  1. 01为 Roblox Open Cloud 应用配置授权
  2. 02实现公共客户端的 PKCE 授权流程
  3. 03维护令牌刷新、替换与撤销
  4. 04排查作用域或 OAuth 令牌问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/tabooharmony/roblox-brain --skill roblox-oauth

安装后在 Claude Code 中输入/roblox-oauth确认已加载。

附带文件references/full.md

详细介绍

roblox-oauth

何时加载

当任务涉及 Roblox Open Cloud 的 OAuth 2.0 委托授权时,加载此技能,例如应用注册、使用 PKCE 的授权码流程、令牌交换/刷新/撤销、范围选择或 OAuth 特定错误调试。对于 API 密钥自动化、体验内脚本或常规 Open Cloud 端点工作,请跳过此技能(改用 roblox-cloud)。

快速参考

流程选择
  • 授权码 + PKCE — 公共客户端(浏览器/移动端)必须使用,建议所有客户端使用。
  • 机密客户端 — 后端持有 client_secret;切勿在前端代码中公开。
  • 公共客户端 — 无密钥;必须使用 PKCE。
PKCE 要点
  • 生成 code_verifier(43–128 个字符的随机值)+ code_challenge(SHA-256,base64url)。
  • 在授权请求中发送 code_challenge + code_challenge_method=S256;在令牌交换中发送 code_verifier。
  • 每次授权尝试使用一个独立的验证值。
授权 URL

GET https://apis.roblox.com/oauth/v1/authorize 参数:client_id、redirect_uri、scope、response_type=code、code_challenge、code_challenge_method=S256、state、可选的 nonce。

令牌交换

POST /oauth/v1/token — application/x-www-form-urlencoded 参数:grant_type=authorization_code、code、client_id、code_verifier(公共客户端)或 client_secret(机密客户端)。

令牌生命周期
  • 授权码 — 有效期为数秒,且只能使用一次;应立即交换。
  • 访问令牌 — 约 15 分钟;以 Bearer 方式使用。
  • 刷新令牌 — 约 90 天;每次刷新只能使用一次。每次刷新后,以原子方式替换存储的令牌。
  • 撤销:断开连接时调用 POST /oauth/v1/token/revoke。
范围选择
  • 选择与实际端点需求相匹配的最小范围。
  • openid → ID 令牌;仅在需要个人资料声明时才使用 profile。
  • 中/高/严重风险 = 最小权限审查信号。
  • 更改范围需要重新授权。
验证端点
  • GET /oauth/v1/userinfo — 身份声明。
  • POST /oauth/v1/token/introspect — 令牌状态(不用于资源授权)。
  • POST /oauth/v1/token/resources — 资源级访问权限。
关键规则
  • 使用返回的授权码前,先验证 state。
  • 刷新令牌:仅限服务端使用。
  • 即使机密客户端也要使用 PKCE。
  • 不要混用 API 密钥和 OAuth。 需要更多细节? 加载 references/full.md,查看包含代码示例、API 表格和边缘情况的完整参考。

评论

支持 Markdown