Secret와 ConfigMap의 차이가 궁금합니다!
보안적으로 민감한 변수를 저장하기 위해 활용한다고 배웠습니다.
그러나 Secret의 작성 방법이 별다른 암복호화 로직없이 configMap과 99% 동일한 것 같아서요.
같은 repository에서 Secret과 ConfigMap가 함께 위치하는 경우
ConfigMap에 접근할 수 있는 사용자는 Secret에도 손쉽게 접근할 수 있을것 같다는 생각이 듭니다.
Secret이 ConfigMap보다 어떠한 측면에서 보안상의 이점이 있는지 궁금합니다.
답변 2
1
안녕하세요 하나님! 좋은 질문 주셨네요:)
'노출되면 안 되는 설정 값(Secret)'과 '노출돼도 상관없는 설정값'을 분리했다는 점에서 이점이 있습니다.
이렇게 분리를 했기 때문에 Repository에서 Secret에 관련된 파일만
.gitignore처리를 해서 관리를 할 수 있게 됩니다.
그러면 사용자는 Secret에 대한 값만 접근할 수 없게 관리를 할 수 있습니다.
이 외로 궁금한 점 생기시면 또 질문 남겨주세요~~~~
0
안녕하세요, 인프런 AI 인턴입니다. 하나님!
Kubernetes에서 ConfigMap과 Secret은 모두 환경 설정 데이터를 저장하고 관리하는 데 사용됩니다. 하지만 둘 사이의 주요 차이점은 보안과 관련된 사항입니다.
암호화 여부:
- ConfigMap: 일반 텍스트 형식으로 저장되기 때문에, 보호된 데이터(예: 비밀번호, API 키 등)를 저장하는 데는 적합하지 않습니다.
- Secret: 기본적으로 Base64 인코딩된 형식으로 저장되며, Kubernetes 클러스터에서 보다 안전하게 민감한 데이터를 보호할 수 있도록 설계되었습니다. Kubernetes 1.13 버전 이후부터는
encryption at rest기능을 지원하여, API 서버에 연결된 백엔드 데이터베이스에 저장된 Secret 데이터를 암호화할 수 있습니다.
- ConfigMap: 일반 텍스트 형식으로 저장되기 때문에, 보호된 데이터(예: 비밀번호, API 키 등)를 저장하는 데는 적합하지 않습니다.
액세스 제어:
- 기본적으로 Secret은 ConfigMap보다 더 제한적인 액세스 제어 정책을 통해 보호될 수 있도록 설계되었습니다. 이를 통해 특정 Pod에만 Secret 정보를 노출하는 방식으로 운영할 수 있습니다.
- 기본적으로 Secret은 ConfigMap보다 더 제한적인 액세스 제어 정책을 통해 보호될 수 있도록 설계되었습니다. 이를 통해 특정 Pod에만 Secret 정보를 노출하는 방식으로 운영할 수 있습니다.
사용 시나리오:
- ConfigMap은 주로 환경 설정 파일, 명령줄 인수 등과 같이 비보안성을 요구하는 데이터를 저장하는 데 쓰입니다.
- Secret은 비밀번호, OAuth 토큰, SSH 키 등 보안이 중요한 데이터를 저장하는 목적에 사용됩니다.
- ConfigMap은 주로 환경 설정 파일, 명령줄 인수 등과 같이 비보안성을 요구하는 데이터를 저장하는 데 쓰입니다.
관련하여 더 구체적인 설명을 확인하고 싶으시다면 기존의 유사한 질문을 참고해 보세요:
- ConfigMap, Secret 매니패스트 파일을 변경했을 때 꼭 Deployment를 restart 해야 하나요?
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
실습을 가상환경에서 해도 따라하는데 지장이 없나요?
0
57
2
쿠버네티스 학습
0
56
1
Docker Desktop 설치 관련 질문드립니다!
0
73
2
섹션 3 (14강) 04:52 분경 yaml 파일 작성에 대한 질문드립니다.
0
89
2
쿠버네티스 다음 강의
0
78
2
html 적용이 되지 않음
0
69
1
ERROR [internal] load metadata for docker.io/library/openjdk:17-jdk
0
135
2
이미지가 없다고 에러가 계속 떠요
0
87
2
Deployment-service 연결 과정에서 오류..?
0
71
2
Secret이 외부 노출을 어떤 식으로 피할 수 있게 하는지
0
72
2
Secret을 활용한 환경변수 분리 강의자료 문의
0
69
2
도커 쿠버네티스 기다림 오류 문제..
0
137
2
쿠버네티스 고급편은 언제 나오나요?
0
89
1
질문있습니다.
0
70
2
pdf 자료에 섹션3 누락
0
72
3
pvc CrashLoopBackOff 문제
0
133
6
AMI 유형
0
67
2
마스터 노드 vs 워커 노드
0
122
2
aws eks --region ap-northeast-2 update-kubeconfig --name kube-practice 권한 거부
0
118
2
30000 Port로 접속이 안됩니다 ㅠㅠ
0
149
3
안녕하세요. 실습 환경 질문드립니다.
0
80
1
50강 빌드파일
0
64
2
빌드(jar 패키징) 오류 공유
0
76
2
Secret 질문
0
115
3





