首頁  >  文章  >  開發工具  >  如何在 github actions 中列印秘密

如何在 github actions 中列印秘密

Patricia Arquette
Patricia Arquette原創
2024-10-10 12:33:22994瀏覽

本文討論如何在 GitHub Actions 工作流程中安全地列印和處理機密。它介紹了不同的方法,例如使用 GitHub Actions 秘密管理器、安全環境變數和 SSH 金鑰。本文也重點介紹了最佳

如何在 github actions 中列印秘密

如何在 GitHub 操作中印表機密?

在 GitHub 作業中印表機密有多種方法。一種方法是使用 echo 指令。例如:

<code class="yaml">steps:
  - name: Print a secret
    run: echo "${{ secrets.MY_SECRET }}"</code>

印表機密的另一種方法是使用 env 指令。例如:

<code class="yaml">steps:
  - name: Print a secret
    run: env</code>

這將列印作業可用的所有環境變數的列表,包括已設定的任何機密。

如何安全地印表機密在我的 GitHub Actions 工作流程中?

您可以執行一些操作來安全地列印 GitHub Actions 工作流程中的機密。

  1. 使用機密管理器: 秘密管理器是一種幫助您安全地管理和儲存秘密的工具。 GitHub Actions 提供了一個內建的機密管理器,您可以使用它來儲存和檢索機密。若要使用 GitHub Actions 秘密管理器,您可以將 secrets 鍵新增至工作流程文件。例如:

    <code class="yaml">name: Print a secret
    on: push
    jobs:
      print-secret:
     runs-on: ubuntu-latest
     steps:
       - name: Print a secret
         run: echo "${{ secrets.MY_SECRET }}"</code>
  2. 使用秘密環境變數:秘密環境變數是僅對目前作業可用的變數。您可以使用機密環境變數來儲存作業中需要使用的機密。要設定秘密環境變量,可以使用 env 指令。例如:

    <code class="yaml">name: Print a secret
    on: push
    jobs:
      print-secret:
     runs-on: ubuntu-latest
     env:
       MY_SECRET: "${{ secrets.MY_SECRET }}"
     steps:
       - name: Print a secret
         run: echo "$MY_SECRET"</code>
  3. 使用安全 shell (SSH) 金鑰: 安全 shell (SSH) 金鑰是安全連接到遠端伺服器的一種方法。您可以使用 SSH 金鑰連線到執行 GitHub Actions 的伺服器。連接到伺服器後,您可以使用 printenv 命令列印秘密環境變數的值。例如:

    <code>ssh -i my-ssh-key ubuntu@github.com
    printenv MY_SECRET</code>

在 GitHub Actions 中處理機密的最佳實踐是什麼?

您可以遵循一些最佳實踐來安全地處理機密在 GitHub Actions 中。

  1. 使用秘密管理器:秘密管理器是一種幫助您安全地管理和儲存秘密的工具。 GitHub Actions 提供了一個內建的機密管理器,您可以使用它來儲存和檢索機密。
  2. 使用機密環境變數: 機密環境變數是只適用於目前的工作。您可以使用秘密環境變數來儲存您需要在作業中使用的秘密。
  3. 使用安全殼層 (SSH) 金鑰: 安全殼層 (SSH) 金鑰是安全連接到遠端伺服器的方法。您可以使用 SSH 金鑰連線到執行 GitHub Actions 的伺服器。
  4. 不要在工作流程文件中硬編碼機密:在工作流程文件中硬編碼機密是一種安全措施風險。有權存取您的工作流程文件的任何人都可以看到您硬編碼的機密。
  5. 使用 CI/CD 管道部署您的機密: CI/CD 管道是一個流程,可協助您建置、測試和部署程式碼。您可以使用 CI/CD 管道將您的金鑰部署到生產環境。

以上是如何在 github actions 中列印秘密的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn