iT邦幫忙

0

[問題] Gitlab CI 該如何避免用戶 cat Variables File 取得內容 ?

請問下,我在 Settings 的 Variables 放了建置部署相關金鑰(File)
因建置部署時,都需指定金鑰
例如
gcloud auth activate-service-account --key-file $GCP_KEY_FILE --project=$GCP_PROJECT

helm --install --kubeconfig="$K8S_KEY"
但其實大家開發維運時,都可以修改 .gitlab.yml 檔來 cat 取得金鑰內容,
那有什麼方式可以避免?感謝

目前要跟外包共同開發上線專案,因部署在我司環境,不希望對方因可看到專案下的 .gitlab.yml,進而修改內容拿到我司金鑰。其實對自家開發者也是啦,非管理人員拿到金鑰內容都不是好事

看更多先前的討論...收起先前的討論...
墨嗓 iT邦新手 3 級 ‧ 2021-06-24 23:15:12 檢舉
幫你轉發到 GitLab Taiwan 的 Telegram 群組上了,有興趣可以上去看: https://t.me/GitLabTaiwan

我也蠻好奇各家怎麼處理這問題的。
墨嗓 iT邦新手 3 級 ‧ 2021-06-24 23:27:10 檢舉
Facebook 上的 GitLab Taipei User Group 也貼了。

https://www.facebook.com/groups/GitLabTaipei
墨嗓 iT邦新手 3 級 ‧ 2021-06-25 00:35:44 檢舉
facebook 這邊的回應都還蠻值得參考的:

https://www.facebook.com/groups/GitLabTaipei/posts/538122940886417/
vicentli iT邦新手 2 級 ‧ 2021-06-25 09:18:48 檢舉
感謝,碼掉試過功能打勾會出現 This variable can not be masked.
fork 及 trigger another project pipeline (沒試過) 好辦法耶
謝謝墨嗓 前輩
墨嗓 iT邦新手 3 級 ‧ 2021-06-26 00:29:36 檢舉
This variable can not be masked <-- 通常是因為內容太短,必須超過8碼,或內含特殊字元,如 $% 之類的。

規格可參考:

https://docs.gitlab.com/ee/ci/variables/#mask-a-cicd-variable
vicentli iT邦新手 2 級 ‧ 2021-06-27 01:12:56 檢舉
謝謝墨嗓前輩,有大概看一下文件,是有特殊字元。
以下是我看完回應嘗試的作法,在部署專案建 2 個 submodule 分別對應開發專案的 QA 及RELEASE 分支。待外包的 Code 上到開發專案的 QA/RELEASE 後,會觸發部署專案 出現工作待執行,由我司人員進行觸發,更新 submodule 進行 Build & Deploy。

尚未有邦友回答

立即登入回答