入站邮件 Rake 任务

  • Tier: 基础版,专业版,旗舰版
  • Offering: 私有化部署
History
    • 引入于极狐GitLab 15.9。

以下是与传入电子邮件相关的 Rake 任务。

密钥#

极狐GitLab 可以使用从加密文件读取的 传入电子邮件 密钥,而不是将它们以明文存储在文件系统中。以下 Rake 任务用于更新加密文件的内容。

显示密钥#

显示当前传入电子邮件密钥的内容。

shell
sudo gitlab-rake gitlab:incoming_email:secret:show

示例输出#

plaintext
password: 'examplepassword' user: 'incoming-email@mail.example.com'

编辑密钥#

在编辑器中打开密钥内容,并在退出时将结果内容写入加密的密钥文件。

shell
sudo gitlab-rake gitlab:incoming_email:secret:edit EDITOR=vim

写入原始密钥#

通过在 STDIN 上提供来写入新的密钥内容。

shell
echo -e "password: 'examplepassword'" | sudo gitlab-rake gitlab:incoming_email:secret:write

密钥示例#

编辑器示例

写入任务可用于编辑命令无法与编辑器配合使用的情况:

shell
1# 将现有密钥写入明文文件 2sudo gitlab-rake gitlab:incoming_email:secret:show > incoming_email.yaml 3# 在编辑器中编辑 incoming_email 文件 4... 5# 重新加密文件 6cat incoming_email.yaml | sudo gitlab-rake gitlab:incoming_email:secret:write 7# 删除明文文件 8rm incoming_email.yaml

KMS 集成示例

它还可以用作使用 KMS 加密内容的接收应用程序:

shell
gcloud kms decrypt --key my-key --keyring my-test-kms --plaintext-file=- --ciphertext-file=my-file --location=us-west1 | sudo gitlab-rake gitlab:incoming_email:secret:write

Google Cloud 密钥集成示例

它也可以用作从 Google Cloud 获取密钥的接收应用程序:

shell
gcloud secrets versions access latest --secret="my-test-secret" > $1 | sudo gitlab-rake gitlab:incoming_email:secret:write