Java操作Jenkins操作凭证(Credential)信息方式

Java 操作 Jenkins 操作凭证(Credential)信息方式

Jenkins的凭证(Credential)是一种安全机制,用于存储登录Jenkins服务器和与其他系统进行交互时所需的敏感信息,例如密码、API tokens等等。

使用Java操作Jenkins凭证可以让我们在Jenkins系统中实现更加安全的信息存储和交互,方便我们对Jenkins进行更加复杂的操作。下面是Java操作Jenkins凭证的详细攻略。

凭证的获取

首先需要获取Jenkins的凭证信息。我们可以通过Jenkins的API获取凭证信息。

获取全部凭证

可以使用Jenkins Credentials Plugin提供的API获取Jenkins中所有的凭证信息。

GET /credentials/store/system/domain/_/api/json?depth=3

其中,/credentials/store/system/domain/_/表示获取Jenkins中所有凭证的URL,api/json?depth=3表示API返回的凭证信息的详细程度。

获取特定凭证

使用凭证ID可以获取特定的凭证信息。

GET /credentials/store/system/domain/_/credential/{credentialId}/api/json?depth=1

其中,/credentials/store/system/domain/_/credential/{credentialId}表示获取ID为{credentialId}的凭证信息。

更新凭证

使用凭证更新API,可以更新一个已经存在的凭证。

POST /credentials/store/system/domain/{domain}/credential/{credentialId}/updateByXml

其中,/credentials/store/system/domain/{domain}/credential/{credentialId}表示根据特定的域名和凭证ID更新凭证信息。

删除凭证

使用凭证删除API可以删除一个已经存在的凭证。

DELETE /credentials/store/system/domain/{domain}/credential/{credentialId}/

其中,/credentials/store/system/domain/{domain}/credential/{credentialId}表示根据特定的域名和凭证ID删除凭证信息。

示例

示例1:使用 Java 添加凭证

下面是添加凭证的Java代码示例:

import com.cloudbees.plugins.credentials.domains.Domain;
import com.cloudbees.plugins.credentials.CredentialsScope;
import org.jenkinsci.plugins.plaincredentials.impl.StringCredentialsImpl;
import com.cloudbees.plugins.credentials.CredentialsStore;
import com.cloudbees.plugins.credentials.SystemCredentialsProvider;
import hudson.util.Secret;

CredentialsStore store = new SystemCredentialsProvider.ProviderImpl().getStore();
Domain domain = Domain.global();
StringCredentialsImpl credential = new StringCredentialsImpl(CredentialsScope.SYSTEM, "myCredentialsId", "myDescription", Secret.fromString("mySecret"));
store.addCredentials(domain, credential);

其中,StringCredentialsImpl表示创建一个字符串类型的凭证信息,Secret.fromString("mySecret")表示将字符串类型的凭证信息加密存储,store.addCredentials(domain, credential)表示将凭证信息添加到全局凭证库中。

示例2:使用 Java 删除凭证

下面是删除凭证的Java代码示例:

import com.cloudbees.plugins.credentials.domains.Domain;
import com.cloudbees.plugins.credentials.CredentialsStore;
import com.cloudbees.plugins.credentials.SystemCredentialsProvider;
import hudson.util.Secret;

CredentialsStore store = new SystemCredentialsProvider.ProviderImpl().getStore();
Domain domain = Domain.global();
store.removeCredentials(domain, "myCredentialsId");

其中,store.removeCredentials(domain, "myCredentialsId")表示删除名字为myCredentialsId的凭证信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java操作Jenkins操作凭证(Credential)信息方式 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • 详解如何探测小程序返回到webview页面

    探测小程序返回到webview页面主要有两个部分:小程序侧的操作和webview侧的操作。 小程序侧的操作 步骤一:调用小程序JSAPI 小程序提供了navigateBackMiniProgram的JSAPI,可以在小程序内部调用,从而返回webview页面。 wx.navigateBackMiniProgram({ success: function() …

    Java 2023年5月23日
    00
  • Fixie.js 自动填充内容的插件

    Fixie.js 是一个用于自动填充表单内容的 JavaScript 插件,可以自动填充表单、日期、时间等多种类型的数据。下面是使用 Fixie.js 的详细攻略: 第一步:引入 Fixie.js 将 Fixie.js 文件下载到本地,并在 HTML 中引入该文件,代码如下: <script src="path/to/fixie.js&quo…

    Java 2023年6月15日
    00
  • 序列化实现对象的拷贝

    提到拷贝,大家第一时间想到的可能都是克隆模式的深克隆,因为这个模式在面试中出现的机率非常高,同时实现的方式也比较容易:对象的类实现Cloneable接口并且重写clone()方法即可。但是在实际情况中克隆模式有时候其实并不适合用来拷贝对象,因为如果有很多的实体类都需要拷贝,这个时候难道把这些实体类全都实现克隆模式?这是不提倡的,这个时候可以使用序列化方式来实…

    Java 2023年4月19日
    00
  • JSP使用MVC模式完成删除和修改功能实例详解

    我将详细讲解“JSP使用MVC模式完成删除和修改功能实例详解”的完整攻略。 什么是MVC? MVC是Model-View-Controller的缩写,它是一种设计模式,可用于在 Web 应用程序中实现代码和业务逻辑的分离。这样可以增强应用程序的可维护性、可拓展性和可重用性。 其中, Model(模型):存储应用程序的数据内容和业务逻辑。通常使用数据库实现。 …

    Java 2023年6月15日
    00
  • java根据开始时间结束时间计算中间间隔日期的实例代码

    以下是Java根据开始时间结束时间计算中间时间间隔的实例代码完整攻略。 标题 Java根据开始时间结束时间计算中间时间间隔的实例代码 描述 在Java中,我们经常需要在两个日期之间计算天数、小时数或分钟数。此时需要使用Java提供的时间类库。Java日期类库中的Date和Calendar类提供了很多用于处理日期和时间的方法。下面我们将演示如何使用Java代码…

    Java 2023年6月1日
    00
  • 解决ajax异步请求返回的是字符串问题

    在Web开发中,我们经常使用Ajax异步请求来获取数据。然而,有时我们会遇到返回的数据是字符串的问题。在本文中,我们将详细讲解如何解决这个问题,并提供两个示例来说明这个过程。 问题描述 当我们使用Ajax异步请求获取数据时,有时会遇到返回的数据是字符串的问题。例如,我们可能会编写以下代码: $.ajax({ url: "/getData"…

    Java 2023年5月18日
    00
  • Java读取一行空格隔开的数字字符串并求出这些数字的和方法

    要读取一行空格隔开的数字字符串,并求出这些数字的和,可以按照以下步骤进行: 1. 读取字符串 首先,需要获取用户输入的字符串。可以使用Scanner类来读取用户输入: Scanner scanner = new Scanner(System.in); // 创建Scanner对象 String numsStr = scanner.nextLine(); //…

    Java 2023年5月27日
    00
  • Spring+SpringMVC+MyBatis深入学习及搭建(一)之MyBatis的基础知识

    下面是关于“Spring+SpringMVC+MyBatis深入学习及搭建(一)之MyBatis的基础知识”的完整攻略,包含两个示例说明。 Spring+SpringMVC+MyBatis深入学习及搭建(一)之MyBatis的基础知识 在本文中,我们将介绍MyBatis的基础知识,包括配置文件、映射器和SQL语句等。 步骤1:添加依赖 首先,我们需要在pom…

    Java 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部