Skip to content
GitLab
Next
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • GitLab GitLab
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 44,761
    • Issues 44,761
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 1,330
    • Merge requests 1,330
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GitLab.orgGitLab.org
  • GitLabGitLab
  • Issues
  • #226006
Closed
Open
Issue created Jul 03, 2020 by Stan Hu@stanhuOwner

Support customer-provided keys (S3 SSE-C) for encrypted buckets in object storage

Overview

We have recently added support for server-side encryption keys on AWS to manage access to encrypted object storage. The support is limited to SSE-S3 and SSE-KMS encryption. However, we are starting to hear requests to support customer-provided keys, which give customers greater control over the management of the keys. So far the requests have been in relation to object storage on AWS and Azure.

Solution

Right now in https://docs.gitlab.com/ee/administration/object_storage.html#encrypted-s3-buckets, we say:

Note that customer master keys (CMKs) and SSE-C encryption are not yet supported since this requires supplying keys to the GitLab configuration

We would need to ensure a few things:

  1. The keys get passed to CarrierWave (https://github.com/fog/fog/issues/3168#issuecomment-62343203) and Fog
  2. The keys get passed to Workhorse

gitlab-org/charts/gitlab#1012 (comment 352161997) has more details.

Changes needed:

  1. CarrierWave: https://github.com/carrierwaveuploader/carrierwave/pull/2504/files
  2. Fog: https://github.com/fog/fog-aws/pull/572/files
Edited Aug 28, 2020 by Larissa Lane
Assignee
Assign to
Time tracking