Jenkins 中有一個選項可以添加一個名為“X.509 客戶端證書”的全域憑證“Kind”,我想在我的構建中安全地使用它,以使用 cURL 呼叫 RESTful API。

我將客戶端密鑰、客戶端證書、服務器 CA 鏈添加到相應的框中,添加 ID、描述并前往我的 Jenkins 管道。
現在我在這里查閱檔案以了解如何使用“withCredentials”系結來安全地實際使用我的密鑰和證書。我沒有看到對使用 X.509 客戶端證書的系結的任何參考?我看到“證書”,但這是一個不同的選項,例如不公開私鑰。
有人可以幫我理解什么時候在管道代碼中,我在 withCredentials 塊中使用什么來指定適當的型別,并為客戶端證書、客戶端密鑰和服務器鏈傳遞變數名稱。
withCredentials([WhatHere?(credentialsId: 'myClientCert', variable?: 'key',variable2?: 'cert')]) {
}
非常感謝
uj5u.com熱心網友回復:
X.509 客戶端證書選項是 docker 插件的一部分,最近更改了名稱,因為它曾經被命名為Docker 證書目錄(行為本身沒有改變),因此在withCredentials 檔案中找到它是否很棘手。
您正在尋找的選項被稱為dockerCert(以舊選項命名),它包括兩個引數輸入variable和credentialsId:
dockerCert
variable 要在構建期間設定的環境變數的名稱。
它的值將是創建 {ca,cert,key}.pem 檔案的目錄的絕對路徑。你可能想呼叫這個變數 DOCKER_CERT_PATH,它會被 docker 客戶端二進制檔案理解。
型別:字串
credentialsId 要設定為變數的適當型別的憑據。
型別:字串
管道使用示例:
withCredentials([dockerCert(credentialsId: 'myClientCert', variable: 'DOCKER_CERT_PATH')]) {
// code that uses the certificate files
}
uj5u.com熱心網友回復:
在我的 Jenkins 上,它是
withCredentials([certificate(aliasVariable: 'ALIAS_VAR',
credentialsId: 'myClientCert',
keystoreVariable: 'KEYSTORE_VAR',
passwordVariable: 'PASSWORD_VAR')]) {
...
}
提示:如果您添加/pipeline-syntax/到您的 Jenkins URL,它將帶您到一個片段生成器,該生成器將根據您的輸入為您生成一些片段。這就是我用來生成上述代碼段的內容。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/478367.html
