다음을 통해 공유


CA 인증서 체인을 사용한 클라이언트 인증

Azure Event Grid CA 인증서 체인을 사용하여 서비스에 연결하는 동안 클라이언트를 인증합니다.

이 가이드에서는 다음 작업을 수행합니다.

  1. 클라이언트 인증서의 직접 부모 인증서인 CA 인증서를 네임스페이스에 업로드합니다.
  2. 클라이언트 인증 설정을 구성합니다.
  3. 이전에 업로드한 CA 인증서로 서명된 클라이언트 인증서를 사용하여 클라이언트를 연결합니다.

필수 조건

  • Event Grid 네임스페이스가 이미 만들어져 있어야 합니다.
  • 클라이언트 인증서에 서명하는 데 사용된 클라이언트 인증서 및 부모 인증서(일반적으로 중간 인증서)라는 CA 인증서 체인이 필요합니다.

샘플 클라이언트 인증서 및 지문 생성

인증서가 아직 없는 경우 step CLI를 사용하여 샘플 인증서를 만들 수 있습니다. Windows용으로 수동으로 설치하는 것이 좋습니다.

  1. Step을 설치한 후 Windows PowerShell 명령을 실행하여 루트 및 중간 인증서를 만듭니다.
.\step ca init --deployment-type standalone --name MqttAppSamplesCA --dns localhost --address 127.0.0.1:443 --provisioner MqttAppSamplesCAProvisioner
  1. 생성된 CA 파일을 사용하여 클라이언트에 대한 인증서를 만듭니다.
.\step certificate create client1-authnID client1-authnID.pem client1-authnID.key --ca .step/certs/intermediate_ca.crt --ca-key .step/secrets/intermediate_ca_key --no-password --insecure --not-after 2400h
  1. 지문을 보려면 Step 명령을 실행합니다.
step certificate fingerprint client1-authn-ID.pem

네임스페이스에 CA 인증서 업로드

  1. Azure Portal Event Grid 네임스페이스로 이동합니다.
  2. 왼쪽 레일의 MQTT 브로커 섹션 아래에서 CA 인증서 메뉴로 이동합니다.
  3. + 인증서를 선택하여 인증서 업로드 페이지를 시작합니다.
  4. 인증서 이름을 추가하고 중간 인증서(.step/certs/intermediate_ca.crt)를 찾아 업로드를 선택합니다. .pem, .cer 또는 .crt 형식의 파일을 업로드할 수 있습니다.

CA 인증서 페이지에 나열된 추가된 CA 인증서를 보여 주는 스크린샷

참고 항목

  • CA 인증서 이름은 3~50자일 수 있습니다.
  • CA 인증서 이름에는 영숫자, 하이픈(-)이 포함될 수 있으며 공백은 포함될 수 없습니다.
  • 이 이름은 네임스페이스별로 고유해야 합니다.

클라이언트 인증 설정 구성

  1. 클라이언트 페이지로 이동합니다.
  2. + 클라이언트를 선택하여 새 클라이언트를 추가합니다. 기존 클라이언트를 업데이트하려면 클라이언트 이름을 선택하고 클라이언트 업데이트 페이지를 열 수 있습니다.
  3. 클라이언트 만들기 페이지에서 클라이언트 이름, 클라이언트 인증 이름 및 클라이언트 인증서 인증 유효성 검사 체계를 추가합니다. 일반적으로 클라이언트 인증 이름은 클라이언트 인증서의 주체 이름 필드에 있습니다.

주체를 사용하는 클라이언트 메타데이터가 인증 이름 옵션과 일치하는 것을 보여 주는 스크린샷

  1. 만들기 단추를 선택하여 함수를 만듭니다.

샘플 인증서 개체 스키마

{
    "properties": {
        "description": "CA certificate description",
        "encodedCertificate": "-----BEGIN CERTIFICATE-----`Base64 encoded Certificate`-----END CERTIFICATE-----"
    }
}

Azure CLI 구성

다음 명령을 사용하여 CA(인증 기관) 인증서를 서비스에 업로드/표시/삭제합니다.

인증 기관 루트 또는 중간 인증서 업로드

az eventgrid namespace ca-certificate create -g myRG --namespace-name myNS -n myCertName --certificate @./resources/ca-cert.json

인증서 정보 표시

az eventgrid namespace ca-certificate show -g myRG --namespace-name myNS -n myCertName

인증서 삭제

az eventgrid namespace ca-certificate delete -g myRG --namespace-name myNS -n myCertName

다음 단계