使用 IRONSECUREDOC

Docker 簽署 PDF(開發者教程)

在快速變化的軟體開發和部署環境中,安全性應該被列為優先考慮事項的首位。Docker 是一個容器化平台,因其為應用程式帶來的穩定性、可擴展性和隔離性而受到歡迎。 不過,正如往常一樣,任何技術一旦在操作過程中採用了不當的做法,都可能變得脆弱。 在 Docker 安全性方面,最重要的方面之一是保持乾淨且充滿信任的 Docker 映像檔。 這就是Docker Signer Add發揮作用的地方。 以下文章將探討什麼是 Docker Signer、為什麼它很重要,以及如何在開發管道中有效實施它。

什麼是 Docker Signer?

Docker Signer 是一種工具,旨在透過數位簽章增強 Docker 映像的安全性。 簽名用於對 Docker 映像進行身份驗證和完整性驗證,從而確保沒有發生任何形式的篡改或更改。

在數位簽章的情況下,生成 docker 映像的加密簽章後,它們即可使用,以證明自映像簽署以來未進行任何映像修改。 將 Docker 簽名程式嵌入到您的 CI/CD 管線中意味著您正在應用一種強大的安全模型,在這個模型中,您只部署受信任的映像。

為什麼 Docker Signer 很重要?

完整性驗證:Docker 映像本質上只是一個檔案和元數據的 tarball。 否則,無法保證您部署的事物是您的意圖。 Docker Signer 提供了確保完整性的方法,檢查映像是否未被更改或損壞。

驗證:數位簽章確保 Docker 映像檔的來源。 這意味著您有保證,它來自您信任的人,並且在傳輸過程中沒有發生更改。

合規與稽核:許多行業和企業在安全性與稽核方面有嚴格的合規要求。 Docker簽署器透過非常明確的映像真實性和完整性來協助確保合規性。

信任管理:這在任何多團隊或多組織設置中都是不言而喻的。Docker Signer 允許通過不使用未簽名的映像來進行信任管理——至少需有來源驗證。

Docker 簽署器的工作原理

Docker簽署工具使用一些加密技術來生成和驗證簽名。 步驟如下:

1. Docker 映像簽名:

生成簽名: 在建立 Docker 容器時,以密碼學方式使用先前使用過的根密鑰和創建的私鑰(作為公私密鑰對的一部分)為容器生成數位簽名。

在圖像中包含簽名: 這個輸出的簽名將通過相關的元數據或完全不同的簽名文件應用到 Docker 容器中。

2. Docker 映像驗證:

簽名驗證:Docker Signer 使用某些已部署或拉取的私有金鑰的公鑰 ID 檢查映像的簽名,而對應的私有金鑰已用於簽署其 Docker 映像。

完整性檢查: 驗證成功—證明自簽署以來圖像未被修改; 驗證失敗—可能的篡改或損壞。

使用 IronSecureDoc 實現 Docker 簽署者

若要有效實施 Docker Signer,請按照以下步驟操作:

設置 Docker Signer 添加的步驟

啟用 Docker 內容信任

Docker內容信任預設為關閉。 您可以透過將環境變數 DOCKER_CONTENT_TRUST 設定為 1 來開啟。


export DOCKER_CONTENT_TRUST=1

初始化公證存儲庫

在您實際簽署圖像之前,必須初始化一個公證伺服器儲存庫。 委派金鑰和您圖像的簽名將存儲在其中。


docker trust key generate <name>

它將生成一對新的密鑰,並在本地保存私鑰。

Docker Sign Pdf 1 related to 初始化公證存儲庫

載入已創建的金鑰

docker trust key load 用於將現有的私鑰載入 Docker 的信任管理系統。 該命令用於匯入新的儲存庫密鑰,例如,用戶生成的或從其他來源獲得的密鑰,以便在 Docker 內容信任下用於簽署 Docker 映像。


docker trust key load --name <name> <path-to-public/private-key>

下圖顯示了相應的公鑰文件。

Docker Sign Pdf 2 related to 載入已創建的金鑰

簽署 Docker 映像檔

只需將圖像推送到 Docker 註冊表即可對其進行簽名。 Docker內容信任:啟用後,推送將對映像進行簽名。


docker push <your-registry>/<your-image>:<tag>

如果啟用 Docker 內容信任,映像將由 Docker 使用您的私鑰進行簽名,並且簽名也會隨之發送。

驗證簽名圖像

我們可以使用命令 docker trust inspect 驗證已簽署的映像。


docker trust inspect --pretty <your-registry>/<your-image>:<tag>

此命令將返回附加在圖像上的簽名密鑰和簽名。

docker trust inspect 命令來驗證已簽署的映像

管理簽署金鑰

可以使用 docker trust signers key 和 docker trust signer 命令管理簽名金鑰。

例如,要添加簽名者:


docker trust signer add --key <path-to-key> <signer-name> <your-registry>/<your-image>

下圖顯示,我們需要在控制台中添加具有 ID 的存儲庫金鑰,然後證書將被添加到 docker 存儲庫中,並顯示成功添加簽名者的消息。

docker trust signer 命令以添加存儲庫密鑰

使用自定義憑證授權機構 (CA)

如果我們使用自訂 CA,您需要確保 Docker 信任此 CA。 通常,這將涉及配置 Docker 將您的 CA 設置為受信任,方法是將 CA 證書放置在 Docker 守護程序的受信任證書中。

我們需要將您的 CA 憑證粘貼到 Docker 主機上的 /etc/docker/certs.d//ca.crt 文件中。

使用 Docker 與 TLS

可以通過生成伺服器和用戶端證書,然後配置 Docker 用於通信,來使用 TLS 保護 Docker 後台程序本身。

生成憑證

使用 OpenSSL 生成所需的證書:


openssl genrsa -aes256 -out ca-key.pem 4096

openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem

現在,生成伺服器和客戶端的金鑰和證書:


openssl genrsa -out server-key.pem 4096

openssl req -subj "/CN=your-server" -sha256 -new -key server-key.pem -out server.csr

openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem

最後,配置 Docker 使用這些證書:將它們放置在正確的目錄中並調整 Docker 守護程序的配置。

配置 Docker 守护进程

修改 Docker 守護程序的配置以使用生成的證書:


{

「tls」:true,

"tlsverify": true,

"tlscacert": "/etc/docker/ca.pem",

"tlscert": "/etc/docker/server-cert.pem",

"tlskey": "/etc/docker/server-key.pem"

"hosts": ["tcp://0.0.0.0:2376", "unix:///var/run/docker.sock"]

}

重啟 Docker 守護程序以應用更改。

什麼是IronSecureDoc?

IronSecureDoc 是一個企業級的文件安全解決方案,能夠保護機密文件免受未經授權的訪問和資料洩漏。 這包括但不限於靜態和傳輸中的強大工業級加密,因此提供了充分的保證,確保您的文件被安全地存儲和傳輸。 它整合了超精細的訪問控制,組織可以實施以控制能夠查看和編輯文件的用戶的許可級別。 它還將提供更先進的數據操作工具,允許在共享之前提前模糊關鍵資訊。

IronSecureDoc:PDF 安全與合規伺服器

此外,IronSecureDoc提供實時追蹤和稽核功能,並保存文件所有操作的日誌。 此功能因此有助於符合GDPR和HIPAA的要求。 它與文件管理系統和協作平台整合,以確保在不干擾工作流程的情況下提升安全性。 這保護了組織的關鍵資訊免受可能的風險,並提供了合規的格式。 以保護為重的產業,如金融、健康和法律部門是理想的選擇。 要了解 Ironsecuredoc 的使用,請參閱教程頁面。

將簽署者添加到IronSecureDoc的優勢

在 IronSecureDoc 框架中簽署 Docker 映像繼承了 Docker 映像簽署的所有安全功能,並通過 IronSecureDoc 的專業能力對其進行增強。 以下是優點:

端到端安全與合規性

更自信的影像完整性:在 IronSecureDoc 中簽署 Docker 映像可確保從「構建」到「運行」的完整性。 創建的圖像不能被未經授權地篡改或更改。

法規遵循:IronSecureDoc 將目標對準了相當多的安全標準; 因此,使 Docker signer 符合這些嚴格的行業審計法規變得更加容易。

單窗格安全控制

整合安全管理:IronSecureDoc 專為全面管理和保護文件及圖像而設計。 此框架結合了 Docker 映像簽名,集中管理以在所有資產中一致執行安全政策。

無縫工作流程整合:將 Docker 簽署與 IronSecureDoc 結合,以便將映像簽署和驗證整合到您現有的安全工作流程中,從而減少複雜性和相關的安全漏洞。

更安全的供應鏈:

CI/CD 安全管道:IronSecureDoc 強制執行 CI/CD 管道中 Docker 映像的簽核,保證只有驗證過且受信任的映像被部署,從而增強您的軟體供應鏈的安全性。

安全部署:IronSecureDoc 映像經過簽名,以降低供應鏈攻擊的風險,並確保在生產環境中僅使用有效簽署者且受信任的映像。

結論

在您的容器化應用程式中,將 Docker 圖像簽名與IronSecureDoc整合,以實現非常高的安全性、合規性和運營效率。 這種組合確保 Docker 映像不能被篡改,符合監管標準,並最終在整個軟體供應鏈中維持可驗證的信任鏈。 將影像簽名納入IronSecureDoc的嚴格安全框架中,實現一個統一且自動化的過程,以一致可執行的政策保護所有數位資產。 這將簡化合規和審計,並通過保護您的品牌和在不同環境中的部署,與您的利益相關者建立更大的信任。

IronSecureDoc:許可信息

IronSecureDoc 提供免費試用許可證。 要了解有關企業授權的更多資訊,請查看授權頁面。 IronSecureDoc 也提供完善的文件來幫助您入門。 同樣地,Iron Software 提供各種軟體產品,例如 IronPDFIronXLIronOCR 等,協助開發者自動化和優化與 PDF 轉換、Excel 任務、OCR 處理等相關的解決方案。 要了解更多關於其他產品的資訊,請查看我們的網站

查克尼思·賓
軟體工程師
Chaknith 致力於 IronXL 和 IronBarcode。他在 C# 和 .NET 方面擁有豐富的專業知識,協助改進軟體並支持客戶。他從用戶互動中獲得的洞察力有助於提高產品、文檔和整體體驗。
< 上一頁
從映像啟動 Docker 容器(開發者教程)
下一個 >
PDF簽署伺服器(開發者教程)

準備開始了嗎? 版本: 2024.10 剛剛發布

查看許可證 >