버전 1.6. 이 버전은 완전히 지원되며 Anthos clusters on VMware에 영향을 미치는 보안 취약점, 노출, 문제에 대한 최신 패치와 업데이트를 제공합니다. 자세한 내용은 출시 노트를 참조하세요. 이 버전은 최신 버전입니다.

HSM 기반 보안 비밀 암호화 사용

HSM 기반 보안 비밀 암호화

Anthos clusters on VMware 버전 1.6 이상은 Thales Luna 네트워크 하드웨어 보안 모듈(HSM)을 사용하여 사용자 클러스터 보안 비밀의 저장 데이터 암호화를 지원합니다. 보안 비밀 암호화 키는 HSM 어플라이언스의 파티션에 저장됩니다. HSM 어플라이언스 인증은 상호 TLS(mTLS)를 사용하여 수행합니다.

기본 요건

HSM 기반 보안 비밀 암호화를 사용하려면 다음이 필요합니다.

  • 다음으로 구성된 Thales Luna 네트워크 HSM 어플라이언스:
    • 사용자 클러스터에서 네트워크 액세스
    • PKCS#11 드라이버 및 인증서
    • Luna HSM에서 사용 가능한 파티션
    • 암호화 책임자(CO)와 보안 책임자(SO) 역할을 초기화해야 합니다. 이러한 사용자는 PIN/비밀번호를 변경할 필요가 없습니다.
  • 다음의 사용 가능한 구성 항목:
    • Thales HSM 드라이버가 포함된 컨테이너 이미지. Thales 담당자에게 사본을 문의하세요. 이 이미지는 사용자 클러스터에서 액세스할 수 있는 컨테이너 저장소에서 호스팅해야 합니다.
    • Luna HSM 어플라이언스 주소 및 CA 인증서.
    • 인증서/키 쌍으로 프로비저닝된 클라이언트.

HSM 구성

HSM을 사용하도록 사용자 클러스터를 구성하려면 사용자 인증 정보 파일을 만든 다음 사용자 클러스터 구성 파일에 구성 세부정보를 추가합니다.

사용자 인증 정보 파일 만들기

YAML 구성 파일을 사용하여 Anthos clusters on VMware에 PKCS#11 사용자 인증 정보 위치를 제공합니다

  1. 다음 YAML 구성을 파일에 복사합니다.

    apiVersion: v1
    kind: CredentialFile
    # list of credentials
    items:
    - name: "CREDENTIALS_NAME"
      username: "PKCS_USER"
      password: "PKCS_PASSWORD"
    

    다음을 바꿉니다.

    • CREDENTIALS_NAME을 사용자 인증 정보를 참조하는 이름으로 바꿉니다. 예를 들면 pkcs-credentials입니다.
    • PKCS_USER을 해당 파티션에 대한 CO 역할이 있는 사용자의 사용자 이름으로 바꿉니다.
    • PKCS_PASSWORD를 사용자 비밀번호로 바꿉니다.
  2. 파일을 저장하고 다음 단계의 경로를 복사합니다.

사용자 클러스터 구성

  1. 사용자 클러스터를 만들기 전에 gkectl create-config cluster을 사용하여 사용자 클러스터 구성 파일을 생성합니다.

  2. secretsEncryption 객체를 추가하여 사용자 클러스터 구성 파일에서 HSM 기반 보안 비밀 암호화를 구성합니다. 텍스트 편집기에서 구성 파일을 열고 다음 섹션을 구성 파일에 복사합니다.

    secretsEncryption:
      mode: ThalesLunaHSM
      thaleslunahsm:
        pkcs11DriverImage: "DRIVER_IMAGE_LOCATION"
        server: "APPLIANCE_ADDRESS"
        caCertificate: "CA_CERTIFICATE_PEM_PATH"
        clientCertificate: "CLIENT_CERTIFICATE_PEM_PATH"
            clientKey: "CLIENT_KEY_PEM_PATH"
        pkcs11Label: PARTITION_LABEL
        pkcs11Pin:
          fileRef:
            path: "CREDENTIALS_YAML_PATH"
            entry: "CREDENTIALS_NAME"
    

    다음을 바꿉니다.

    • DRIVER_IMAGE_LOCATION를 Thales 담당자가 보낸 Thales HSM 드라이버 컨테이너 이미지의 위치로 바꿉니다. 예를 들면 gcr.io/my-project/hsm-driver:latest입니다.
    • APPLIANCE_ADDRESS를 어플라이언스의 IP 주소 또는 DNS 이름으로 바꿉니다.
    • CA_CERTIFICATE_PEM_PATH를 PEM 형식으로 된 어플라이언스의 CA 인증서 경로로 바꿉니다.
    • CLIENT_CERTIFICATE_PEM_PATH를 네트워크 트러스트 연결 서비스(NTLS) 클라이언트 인증서 경로로 바꿉니다.
    • CLIENT_KEY_PEM_PATH를 NTLS 클라이언트 키 경로로 바꿉니다.
    • PARTITION_LABEL을 키의 파티션에 적용된 PKCS#11 토큰 라벨로 바꿉니다.
    • CREDENTIALS_YAML_PATH를 이전 섹션에서 만든 사용자 인증 정보 파일 경로로 바꿉니다.
    • CREDENTIALS_NAME을 사용자 인증 정보 파일의 사용자 인증 정보 객체 이름으로 바꿉니다. 예를 들면 pkcs-credentials입니다.

다음 단계