1.2. OpenStack Key Manager 암호화 유형
인증서, API 키 및 암호와 같은 시크릿은 barbican 데이터베이스의 암호화된 Blob에 저장하거나 보안 스토리지 시스템에 직접 저장할 수 있습니다. 간단한 암호화 플러그인 또는 PKCS#11 암호화 플러그인을 사용하여 시크릿을 암호화할 수 있습니다.
시크릿을 barbican 데이터베이스에 암호화된 Blob으로 저장하려면 다음 옵션을 사용할 수 있습니다.
-
간단한 암호화 플러그인 - 간단한 암호화 플러그인은 기본적으로 활성화되어 있으며 단일 대칭 키를 사용하여 모든 시크릿 페이로드를 암호화합니다. 이 키는
barbican.conf
파일의 일반 텍스트에 저장되므로 이 파일에 대한 무단 액세스를 방지하는 것이 중요합니다. PKCS#11 암호화 플러그인 - PKCS#11 암호화 플러그인은 barbican 데이터베이스에 저장된 프로젝트별 키 암호화 키(pKEK)로 시크릿을 암호화합니다. 이러한 프로젝트별 pKEK는 HSM(하드웨어 보안 모듈)에 저장된 MKEK(키 암호화 키)로 암호화됩니다. 모든 암호화 및 암호 해독 작업은 프로세스 내 메모리가 아닌 HSM에서 수행됩니다. PKCS#11 플러그인은 PKCS#11 API를 통해 HSM과 통신합니다. 암호화는 보안 하드웨어에서 수행되며 프로젝트당 다른 pKEK가 사용되므로 이 옵션은 간단한 암호화 플러그인보다 안전합니다.
Red Hat은 다음 HSM과 함께 PKCS#11 백엔드를 지원합니다.
장치 릴리스에서 지원됨 HA(고가용성) 지원 ATOS Trustway Proteccio NetHSM
16.0+
16.1+
신뢰할 수 있는 nShield Connect HSM
16.0+
지원되지 않음
Thales Luna Network HSM
16.1+(기술 프리뷰)
16.1+(기술 프리뷰)
참고HA(고가용성) 옵션 관련: barbican 서비스는 Apache 내에서 실행되며 고가용성을 위해 HAProxy를 사용하도록 director에 의해 구성됩니다. 백엔드 계층의 HA 옵션은 사용 중인 백엔드에 따라 달라집니다. 예를 들어 간단한 암호화의 경우 모든 barbican 인스턴스에 config 파일에 동일한 암호화 키가 있어 간단한 HA 구성이 생성됩니다.
1.2.1. 여러 암호화 메커니즘 구성
두 개 이상의 백엔드를 사용하도록 Barbican의 단일 인스턴스를 구성할 수 있습니다. 이 작업이 완료되면 백엔드를 글로벌 기본
백엔드로 지정해야 합니다. 프로젝트당 기본 백엔드를 지정할 수도 있습니다. 프로젝트에 대한 매핑이 없는 경우 해당 프로젝트의 시크릿은 글로벌 기본 백엔드를 사용하여 저장됩니다.
예를 들어 Simple crypto 및 PKCS#11 플러그인을 모두 사용하도록 Barbican을 구성할 수 있습니다. Simple crypto를 글로벌 기본값으로 설정하면 모든 프로젝트에서 해당 백엔드를 사용합니다. 그런 다음 PKCS#11을 해당 프로젝트의 기본 백엔드로 설정하여 PKCS#11 백엔드를 사용하는 프로젝트를 지정할 수 있습니다.
새 백엔드로 마이그레이션하려면 새 백엔드를 글로벌 기본값으로 활성화하거나 프로젝트별 백엔드로 활성화하는 동안 원본을 계속 사용할 수 있습니다. 결과적으로 이전 백엔드를 통해 이전 시크릿을 사용할 수 있으며 새 시크릿은 새로운 글로벌 기본 백엔드에 저장됩니다.