首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Git插件Jenkins中使用github oAuth令牌

如何在Git插件Jenkins中使用github oAuth令牌
EN

Stack Overflow用户
提问于 2019-12-17 23:50:36
回答 4查看 4.7K关注 0票数 7

我一直在使用Jenkins中的Git插件从GitHub存储库中提取源代码。我一直在使用UserName和密码进行身份验证。

然而,GitHub有宣布

弃用通知: GitHub将停止对API的密码身份验证。现在必须使用API令牌对GitHub API进行身份验证,例如OAuth访问令牌、GitHub应用程序安装访问令牌或个人访问令牌,这取决于您需要对该令牌做什么。

因此,我需要更改身份验证,以使用oAuth令牌。

1>我在GitHub中创建了一个oAuth令牌

2>,然后在Jenkins,我创建了Secret Text作为全局凭据。(使用GitHub的oAuth令牌)

但是,当我进入作业配置时,Git插件在3>类型为secret text的DropDownList中不显示任何凭据(不过它显示了所有其他凭据)。

如何将Git配置为使用oAuth令牌?

EN

回答 4

Stack Overflow用户

发布于 2020-03-18 22:51:19

首先检查是否安装了github-oauth Jenkins插件,如沃克·罗中的"使用Jenkins OAuth插件安全地从GitHub中拔出“所述。

这将允许将您的Jenkins服务器注册为一个应用程序,然后该应用程序可以访问GitHub资源:

票数 1
EN

Stack Overflow用户

发布于 2020-03-22 21:14:47

坚持使用“带有密码的用户名”凭据类型,使用令牌(通常是个人访问令牌)代替密码创建。

链接到的GitHub文档特别提到了这种类型的用例:

curl -u username:token https://api.github.com/user 如果您的工具只支持基本身份验证,但希望利用OAuth访问令牌安全特性,则此方法非常有用。

Git插件不接受SecretText证书,因为它不知道该如何处理它。虽然它不局限于Basic (毕竟它支持SSH ),但它不知道如何处理OAuth令牌。

幸运的是,GitHub为这种精确的用例类型提供了一个工作,允许您使用传递一个令牌(实际上),否则你会使用密码。

使用这种方法可以让您利用令牌的安全特性,如每令牌范围,而不必追溯-适合您现有的工具。

票数 0
EN

Stack Overflow用户

发布于 2020-04-16 16:26:09

另一种方法是利用GitHub应用程序身份验证支持

它是在2020年4月与GitHub分支来源2.7.0-beta1一起发布的,詹金斯实验更新中心中有它。

为什么要作为GitHub应用程序进行身份验证?

  • 更大的速率限制了-- GitHub应用程序的速率限制与您的组织大小相同,而基于用户的令牌有5000的限制,不管您有多少存储库。
  • 用户独立身份验证-每个GitHub应用程序都有自己的用户独立身份验证。 不再需要“bot”用户,也不需要弄清楚谁应该是2FA或OAuth令牌的所有者。
  • 与服务用户及其个人访问令牌相比,改进了安全性和更严格的权限,- GitHub应用程序提供了更细粒度的权限。 这使得Jenkins GitHub应用程序需要一组小得多的特权才能正常运行。
  • 访问GitHub Checks API - GitHub应用程序可以访问GitHub检查API以创建来自Jenkins作业的检查运行和检查套件,并提供有关提交和代码注释的详细反馈。

和:

除了对多分支管道使用GitHub应用程序身份验证之外,还可以在管道中直接使用应用程序身份验证。 --您可以像往常一样通过加载“用户名/密码”凭证来访问GitHub API的Bearer令牌,插件将处理后台中的GitHub身份验证。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59383728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档