키 만들기 및 삭제

AO는 kubectl 명령어를 통해 키 관리 작업을 실행하여 관리 API 서버에 액세스합니다.

시작하기 전에

KMS 작업을 실행하기 전에 관리 API 서버에 액세스하도록 kubectl 명령어를 구성합니다. 이렇게 하려면 gdcloud CLI-line 인터페이스 (CLI)를 사용하여 kubeconfig 파일을 가져옵니다.

키를 만드는 데 필요한 권한을 얻으려면 조직 IAM 관리자에게 프로젝트에 대한 KMS 생성자 (kms-creator) 역할을 부여해 달라고 요청하세요. 키 삭제와 같은 추가 권한이 필요한 경우 KMS 관리자 (kms-admin) 역할을 요청하세요.

키 만들기

다음 단계를 완료합니다.

  1. 프로젝트 네임스페이스에 키를 만듭니다. 다음 예시에서는 AEAD 키를 만듭니다.

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
    apply -f - << EOF
    apiVersion: "kms.gdc.goog/v1"
    kind: AEADKey
    metadata:
      name: KEY_NAME
      namespace: PROJECT
    spec:
      algorithm: AES_256_GCM
    EOF
    

    다음 변수를 바꿉니다.

    • MANAGEMENT_API_SERVER: 관리 API 서버의 kubeconfig 파일입니다. kubeconfig 파일이 없는 경우 로그인하여 생성합니다.
    • KEY_NAME: 만들려는 키의 이름입니다(예: key-1).
    • PROJECT: 프로젝트 이름입니다(예: kms-test1).
  2. 키 생성을 확인합니다.

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get aeadkey KEY_NAME \
      --namespace=PROJECT -o yaml
    

    키 생성이 성공하면 READY 열에 True 값이 표시됩니다.

키 삭제

다음 단계를 완료합니다.

  1. 프로젝트 네임스페이스에서 키를 삭제합니다.

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      delete KEY_PRIMITIVE KEY_NAME \
      --namespace=PROJECT
    

    다음 변수를 바꿉니다.

    • MANAGEMENT_API_SERVER: 관리 API 서버의 kubeconfig 파일입니다. kubeconfig 파일이 없는 경우 로그인하여 생성합니다.
    • KEY_PRIMITIVE: 삭제하려는 키입니다(예: AEAD 키의 경우 aeadkey).
    • KEY_NAME: 삭제하려는 키의 이름입니다(예: key-1).
    • PROJECT: 프로젝트 이름입니다(예: kms-test1).
  2. 키 삭제를 확인하고 반환에 키가 표시되지 않는지 확인합니다.

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get KEY_PRIMITIVE  KEY_NAME \
      --namespace=PROJECT