Skip to main content
☘️ Septvean's Documents
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

GitLab 和 GitHub 创建 Token

创建适用于 Jenkins 的 Token


GitHub 创建 Token

GitHub 的 Fine-grained PATs 和 Classic tokens 主要区别在于权限颗粒度和安全性:Fine-grained 提供具体仓库的细粒度权限、自动审核和有效期限制,而 Classic 是旧版、通用的全局权限。Fine-grained 更安全,适用于精细控制,而 Classic 适用于旧系统和简单场景。

主要区别

权限范围 (Scope)

  • Fine-grained (细粒度令牌): 允许针对特定的存储库 (Repository) 设置特定的读/写权限,例如仅对某个项目提供代码读权限。
  • Classic (经典令牌): 提供对用户或组织下所有存储库的广发权限,范围较为宽泛。

安全性 (Security)

  • Fine-grained: 更符合“最小权限原则”,安全性更高,泄露风险较低。如果用于组织,可能需要组织管理员批准。
  • Classic: 如果泄露,攻击者可能拥有对所有账号资源的控制权。

有效期 (Expiration)

Fine-grained: 通常要求设置较短的有效期,提高安全性。 Classic: 可以设置较长或永久的有效期,但在安全合规上不推荐。

使用场景

Fine-grained: 适用于需要细致控制的 CI/CD、API 调用或集成场景。 Classic: 适用于需要广泛访问权限的旧应用程序或快速开发场景。

总结

为了更好的安全性,GitHub 推荐使用 Fine-grained tokens。

创建 Token

点击头像,选择 Settings

左侧菜单,最下边,选择 Developer settings

左侧菜单,选择 Personal access tokens -> Finer-grained tokens -> 点击 Generate new token

设置 Token name (Token名称) 和 Expiration (有效期)

设置权限

  • Repository access -> All repositories (所有仓库)
  • Permissions -> Contents、Metadata、Pull requests、Webhooks -> 权限 Read-only

确定并生成

查看并拷贝 Token


GitLab 创建 Token

点击头像,选择 Edit profile

左侧菜单,选择 Personal access tokens -> Add new token

设置 Token name (Token名称)、Expiration date (有效期) 和 Select scopes (权限)

查看并拷贝 Token


Jenkins 添加 GitLab/GitHub 账号的 Token

进入 Jenkins -> Manage Jenkins 点击 Credentials

Credentials 中点击 Global

Global credentials 中点击 adding some credentials

添加 GitLab 账号的 Token

添加 GitHub 账号的 Token

Global credentials 列表


Job 配置 Token

编辑 Credentials 选择对应的 Token