如何获取jenkins api token

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获取jenkins api token相关的知识,希望对你有一定的参考价值。

参考技术A

jenkins # [2.129+]版本之后,出于安全性考虑修改了API Token的规则,官方说明: Security Hardening: New API token system in Jenkins 2.129+

这个改变包括:

所以如果你的Jenkins版本大于2.129,那么除非你已经知道当前user的一个token,否则可以到user下的配置里去为你的应用生成新的api token:
比如我是admin user:
admin->configuration:
http://localhost:8080/user/admin/configure

有些人打开来可能看到的是下面这样的, 有个Legacy Token(旧版token) , 而且你还能点击Show Legacy API Token来查看旧版的token, 这个是jenkins系统为了让部分老系统度过这个迁移阶段特地存留的功能。建议删除legacy token,使用新版Token更为安全。

======参阅与摘取=======
https://www.jenkins.io/blog/2018/07/02/new-api-token-system/
关于API这个改动的官方解释:

关于SHA-256是个单向不可逆推反算的算法:
参考:

单向散列
单向散列算法,又称hash函数(杂凑函数,或者杂凑算法),就是把任意输入消息字符串变成固定长的输出串的一种函数,这个输出串称为该消息的杂凑值,一般使用产生消息摘要,密钥加密等。具体指的是根据输入消息计算后,输出固定长度数值的算法,输出数值也成为“散列值”或消息摘要,其长度通常在128~256位之间。

输入的长度可以是任意的
输出长度是固定的,根据目前的计算技术应至少取128bit长,以便抵抗生日攻击
对每一个给定的输入,计算输出(即杂凑值)是很容易的。
给定杂凑函数的描述,找到两个不同的输入消息杂凑到同一个值是计算上不可行的,或给定杂凑函数的描述和一个随机选择的消息,找到另一个与该消息不同的消息使得他们杂凑到同一个值是计算上不可行的。
所有的加密算法是公开的
具备单向性,不可以逆推反算

首先,如果你得到了同样的哈希值,或者说是数字指纹,就是因为你输入了完全相同的输入值,两个不同的输入值不会得出同一个输出值(数字指纹)。

那哈希值数量有多少呢——2的256次方。

另一个有趣的特点是蝴蝶效应,只要输入值改变一点点输出值就会变 。举个例子,我现在拍一张照片,像素:1000×1000.文件长度:2400万位,用SHA 256算法来运行一下,得出一个哈希值。现在来改变输入值中的某一个小单位,放大这个电线杆的像素,把绿色值的0改为1.重新用SHA 256算法运行一遍,就得到一个完全不同的输出值,这还只是改变了2400万单位中的一个。

以上是关于如何获取jenkins api token的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 中使用 Twitter API 1.1 获取 Token

OpenShift 如何获取bearer Token以便进行各种API调用

LARAVEL & VUE:如何通过 API 请求获取登录用户的 API_TOKEN?

如何获取accessToken

如何在没有用户交互的情况下获取 instagram access_token(新 api)?

如何在Woocommerce Rest API中获取Tokenization密钥?