다음을 통해 공유


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

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

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

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

필수 조건

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

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

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

Step을 설치한 후 Windows PowerShell 명령을 실행하여 루트 및 중간 인증서를 만듭니다.

.\step ca init --deployment-type standalone --name MqttAppSamplesCA --dns localhost --address 127.0.0.1:443 --provisioner MqttAppSamplesCAProvisioner

생성된 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

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

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

Screenshot showing the added CA certificate listed in the CA certificates page.

참고 항목

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

클라이언트 인증 설정 구성

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

Screenshot showing the client metadata using the subject matches the authentication name option.

  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

다음 단계