当前位置: 首页 > news >正文

极狐GitLab 安全文件管理功能介绍

极狐GitLab 是 GitLab 在中国的发行版,关于中文参考文档和资料有:

  • 极狐GitLab 中文文档
  • 极狐GitLab 中文论坛
  • 极狐GitLab 官网

安全文件管理 (BASIC SELF)

  • 在极狐GitLab 15.6 中 GA,功能标志 ci_secure_files 被移除。

您可以将最多 100 个文件安全地存储为安全文件,以便在 CI/CD 流水线 中使用。 这些文件安全地存储在您的项目库之外,并且不进行版本控制。在这些文件中存储敏感信息是安全的。安全文件支持纯文本和二进制文件类型,必须为 5 MB 或更小。
这些文件的存储位置可以使用下面描述的选项进行配置,但默认位置是:

  • /var/opt/gitlab/gitlab-rails/shared/ci_secure_files 用于使用 Linux 软件包的安装。

  • /home/git/gitlab/shared/ci_secure_files 用于自编译安装。

使用 外部对象存储 配置用于 极狐GitLab Helm chart 安装。

禁用安全文件

您可以禁用整个极狐GitLab 实例中的安全文件。您可能希望禁用安全文件以减少磁盘空间,或者删除对该功能的访问。

要禁用安全文件,请根据您的安装方式按照以下步骤操作。
先决条件:

  • 您必须是管理员。

对于 Linux 软件包安装

1.编辑 /etc/gitlab/gitlab.rb 并添加以下行:

gitlab_rails['ci_secure_files_enabled'] = false  

2.保存文件并 重新配置极狐GitLab。

对于自编译安装

1.编辑 /home/git/gitlab/config/gitlab.yml 并添加或修改以下行:

ci_secure_files:  enabled: false  

2.保存文件并 重启极狐GitLab 以使更改生效。

使用本地存储

默认配置使用本地存储。要更改安全文件的本地存储位置,请按照以下步骤操作。

对于 Linux 软件包安装

1.要更改存储路径,例如为 /mnt/storage/ci_secure_files,编辑
/etc/gitlab/gitlab.rb 并添加以下行:

gitlab_rails[‘ci_secure_files_storage_path’] = “/mnt/storage/ci_secure_files”

2.保存文件并 重新配置极狐GitLab。

对于自编译安装

1.要更改存储路径,例如为 /mnt/storage/ci_secure_files,编辑
/home/git/gitlab/config/gitlab.yml 并添加或修改以下行:

ci_secure_files:  enabled: true  storage_path: /mnt/storage/ci_secure_files  

2。保存文件并 重启极狐GitLab 以使更改生效。

使用对象存储 (BASIC SELF)

您应该使用 支持的对象存储选项之一,而不是在磁盘上存储安全文件。此配置依赖于已经配置的有效凭据。

  • 综合对象存储

支持综合对象存储是在极狐GitLab 17.0 中引入。

推荐使用 综合形式 的对象存储。

特定存储对象存储

以下设置是:

  • 在自编译安装中嵌套在 ci_secure_files: 和 object_store: 下。
  • 在 Linux 软件包安装中以 ci_secure_files_object_store_ 为前缀。
SettingDescriptionDefault
enabled启用/禁用对象存储false
remote_directory存储安全文件的桶名称
connection下文描述的各种连接选项

S3 兼容连接设置

请参阅 不同提供商的可用连接设置。
::Tabs
:::TabTitle Linux 软件包 (Omnibus)

1.编辑 /etc/gitlab/gitlab.rb 并添加以下行,使用您需要的值:

gitlab_rails['ci_secure_files_object_store_enabled'] = true  
gitlab_rails['ci_secure_files_object_store_remote_directory'] = "ci_secure_files"  
gitlab_rails['ci_secure_files_object_store_connection'] = {  'provider' => 'AWS',  'region' => 'eu-central-1',  'aws_access_key_id' => 'AWS_ACCESS_KEY_ID',  'aws_secret_access_key' => 'AWS_SECRET_ACCESS_KEY'  
}  

NOTE:
如果您使用 AWS IAM 配置文件,请确保省略 AWS 访问密钥和值对:

gitlab_rails['ci_secure_files_object_store_connection'] = {  'provider' => 'AWS',  'region' => 'eu-central-1',  'use_iam_profile' => true  
}  

2.保存文件并重新配置极狐GitLab:

sudo gitlab-ctl reconfigure  

3.迁移任何现有的本地状态到对象存储。

:::TabTitle 自编译 (source)

1.编辑 /home/git/gitlab/config/gitlab.yml 并添加或修改以下行:

ci_secure_files:  enabled: true  object_store:  enabled: true  remote_directory: "ci_secure_files"  # 桶名称  connection:  provider: AWS  # 目前仅支持 AWS  aws_access_key_id: AWS_ACCESS_KEY_ID  aws_secret_access_key: AWS_SECRET_ACCESS_KEY  region: eu-central-1  

2.保存文件并重启极狐GitLab:

# 对于运行 systemd 的系统  
sudo systemctl restart gitlab.target  # 对于运行 SysV init 的系统  
sudo service gitlab restart  

3.迁移任何现有的本地状态到对象存储。

::EndTabs

迁移到对象存储

  • 引入于极狐GitLab 16.1。

WARNING:
不能将安全文件从对象存储迁移回本地存储,因此请谨慎操作。

要将安全文件迁移到对象存储,请按照以下说明操作。

  • 对于 Linux 软件包安装:
sudo gitlab-rake gitlab:ci_secure_files:migrate  
  • 对于自编译安装:
sudo -u git -H bundle exec rake gitlab:ci_secure_files:migrate RAILS_ENV=production  

相关文章:

  • C++纯虚函数
  • 05-libVLC的视频播放器:设置倍速播放
  • C# 数据类型||C# 类型转换
  • 【Rust基础】使用Rocket构建基于SSE的流式回复
  • 借源网荷储之力,开启低碳园区 “绿色蝶变”
  • 优选算法系列(7.BFS 解决最短路问题)
  • RMSIN论文阅读
  • 日本留学常用的学习软件:开启你的国际化学术之旅
  • 判断一个整数是否为素数
  • 如何深入理解引用监视器,安全标识以及访问控制模型与资产安全之间的关系
  • 安全可靠+操作简捷——安科瑞预付费电表的用户体验升级
  • 《前端性能优化秘籍:打造极致用户体验》
  • Unity ShaderLab引用HLSL文件找不到其中函数
  • 国产三维CAD皇冠CAD(CrownCAD)在「电力电子制造业」建模教程:蘑菇台灯
  • c#清理释放内存
  • 【Unity】JSON数据的存取
  • hutool 工具类
  • 刷题 | 牛客 - js中等10题(更ing)1/54知识点解答
  • 【Python Cookbook】迭代器与生成器(一)
  • 【源码】30个Python小游戏
  • 新华时评:防范安全事故须臾不可放松
  • 水利部将联合最高检开展黄河流域水生态保护专项行动
  • 4月译著联合书单|心爱之物:热爱如何联结并塑造我们
  • 中使馆:奉劝菲方有关人士不要在台湾问题上挑衅,玩火者必自焚
  • 解读|特朗普“助攻”下加拿大自由党“惨胜”,卡尼仍需克服“特鲁多阴影”
  • 10台核电新机组获核准,上海核电厂商独揽超500亿元订单