애플리케이션 비밀
이 페이지는 애플리케이션 비밀에 대한 개발 가이드입니다.
비밀 항목
항목 | 설명 |
---|---|
secret_key_base
| 다양한 비밀을 생성하는 데 사용되는 기본 키 |
otp_key_base
| 일회용 비밀번호에 대한 기본 키로, 사용자 관리에 설명되어 있음 |
db_key_base
|
attr_encrypted 열의 데이터를 암호화하는 데 사용되는 기본 키
|
openid_connect_signing_key
| OpenID Connect의 서명 키 |
encrypted_settings_key_base
| 설정 파일을 암호화하는 데 사용되는 기본 키 |
비밀 저장 위치
설치 유형 | 위치 |
---|---|
Linux 패키지 | /etc/gitlab/gitlab-secrets.json
|
Cloud Native GitLab 차트 | Kubernetes Secrets |
직접 컴파일 |
<path-to-gitlab-rails>/config/secrets.yml (자동으로 01_secret_token.rb에 의해 생성됨)
|
경고: 애플리케이션 비밀에 새로운 비밀을 추가하기 전에
config/initializers/01_secret_token.rb
에 새로운 비밀을 추가하기 전에,
Omnibus GitLab을 업데이트하여 업데이트가 실패하지 않도록 합니다. Omnibus는 secrets.yml
파일을 작성하는 데 책임이 있습니다.
Omnibus가 비밀을 모르면 Rails는 파일에 쓰려고 시도하지만, 이는 Rails가 쓰기 액세스 권한이 없기 때문에 실패합니다.
Cloud Native GitLab 차트도 동일한 규칙이 적용되며, 먼저 차트를 업데이트해야 합니다.
노드별로 동일한 값을 가져야 하는 경우 (일반적으로 해당 경우입니다), 이 파일을 변경하기 전에 모든 GitLab.com 환경에 대해 해당 비밀이 구성되었는지 확인해야 합니다.
예시
추가적인 이터레이션
미래에 이 자동 비밀 생성 01_secret_token.rb
을 폐지하거나 제거할 수도 있습니다.
자세한 내용은 이슈 222690를 참조하세요.