X.509 클라이언트 인증서 - AWS IoT Core

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

X.509 클라이언트 인증서

X.509 인증서는 클라이언트 및 디바이스 연결을 인증하는 기능을 제공합니다 AWS IoT . 클라이언트가 통신하려면 AWS IoT 먼저 클라이언트 인증서를 등록해야 합니다. AWS IoT동일한 지역에 있는 사용자 간에 장치를 쉽게 이동할 수 AWS 리전 있도록 클라이언트 인증서를 동일한 위치에 여러 AWS 계정 AWS 계정개 등록할 수 있습니다. 자세한 내용은 다중 계정 등록을 통해 여러 대의 AWS 계정 X.509 클라이언트 인증서 사용를 참조하세요.

인증서 취소를 포함하여 세부적인 클라이언트 관리 작업이 가능하도록 각 디바이스 또는 클라이언트에 고유한 인증서를 부여하는 것이 좋습니다. 인증서 만료 시 원활한 작동을 보장하기 위해 디바이스 및 클라이언트가 인증서 교체 및 대체를 지원해야 합니다.

X.509 인증서를 사용하여 몇 개 이상의 디바이스를 지원하는 방법에 대한 자세한 내용은 디바이스 프로비저닝 단원을 참조하여 AWS IoT 이(가) 지원하는 다양한 인증서 관리 및 프로비저닝 옵션을 검토하세요.

AWS IoT 다음과 같은 유형의 X.509 클라이언트 인증서를 지원합니다.
  • 에서 생성한 X.509 인증서 AWS IoT

  • 에 등록된 CA가 서명한 X.509 인증서 AWS IoT

  • AWS IoT에 등록되지 않은 CA에서 서명한 X.509 인증서입니다.

이 섹션에서는 AWS IoT에서 X.509 인증서를 관리하는 방법에 대해 설명합니다. AWS IoT 콘솔을 사용하거나 다음 인증서 작업을 수행할 수 있습니다. AWS CLI

이러한 작업을 수행하는 AWS CLI 명령에 대한 자세한 내용은 AWS IoT CLI 참조를 참조하십시오.

X.509 클라이언트 인증서 사용

X.509 인증서는 클라이언트 및 디바이스 연결을 인증합니다. AWS IoT X.509 인증서는 식별 및 인증 메커니즘보다 유용한 여러 가지 장점을 제공합니다. X.509 인증서가 있으면 디바이스에서 비대칭 키를 사용할 수 있습니다. 예를 들어 중요한 암호화 구성 요소가 디바이스를 벗어나지 않도록 프라이빗 키를 디바이스의 안전한 스토리지에 저장할 수 있습니다. 프라이빗 키가 디바이스를 전혀 벗어나지 않으므로 X.509 인증서는 사용자 이름 및 암호 또는 보유자 토큰과 같은 다른 체계보다 강력한 클라이언트 인증을 제공합니다.

AWS IoT TLS 프로토콜의 클라이언트 인증 모드를 사용하여 클라이언트 인증서를 인증합니다. TLS 지원은 다수의 프로그래밍 언어 및 운영 체제에서 제공되며 데이터 암호화에 흔히 사용됩니다. TLS 클라이언트 인증에서는 X.509 클라이언트 인증서를 AWS IoT 요청하고 인증서 상태와 인증서 레지스트리를 기준으로 인증서의 상태를 검증합니다. AWS 계정 그런 다음 클라이언트에게 인증서에 포함된 공개 키에 해당하는 개인 키의 소유권 증명을 요청합니다. AWS IoT 클라이언트가 전송 계층 보안 (TLS) 프로토콜에 서버 이름 표시 (SNI) 확장을 전송하도록 요구합니다. SNI 확장 구성에 대한 자세한 내용은 단원을 참조하세요전송 보안 AWS IoT Core

클라이언트를 AWS IoT 코어에 안전하고 일관되게 연결할 수 있도록 X.509 클라이언트 인증서에는 다음이 있어야 합니다.

Amazon Root CA를 사용하는 클라이언트 인증서를 생성하고 다른 인증 기관(CA)에서 서명한 자체 클라이언트 인증서를 사용할 수 있습니다. AWS IoT 콘솔을 사용하여 Amazon Root CA를 사용하는 인증서를 생성하는 방법에 대한 자세한 내용은 을 참조하십시오AWS IoT 클라이언트 인증서 생성. 자체 X.509 인증서 사용에 대한 자세한 내용은 자체 클라이언트 인증서 생성 단원을 참조하세요.

CA 인증서에서 서명한 인증서의 만료 날짜 및 시간은 인증서 생성 시 설정됩니다. 생성된 X.509 인증서는 2049년 12월 31일 자정 (UTC) 에 AWS IoT 만료됩니다 (2049-12-31T23:59:59 Z).

AWS IoT Device Defender 일반적인 IoT 보안 모범 사례를 지원하는 사용자 AWS 계정 및 장치에 대한 감사를 수행할 수 있습니다. 여기에는 CA 또는 Amazon Root CA에서 서명한 X.509 인증서의 만료 날짜 관리가 포함됩니다. 인증서 만료 날짜 관리에 대한 자세한 내용은 장치 인증서 만료 및 CA 인증서 만료를 참조하십시오.

공식 AWS IoT 블로그의 IoT 장치 인증서 교체 관리 및 보안 모범 사례에 대한 자세한 내용은 IoT 장치 인증서 교체를 사용하여 AWS IoT관리하는 방법을 참조하십시오.

다중 계정 등록을 통해 여러 대의 AWS 계정 X.509 클라이언트 인증서 사용

다중 계정 등록을 통해 동일한 리전 및 다른 리전의 AWS 계정사이에 디바이스를 이동할 수 있습니다. 프리 프로덕션 계정에 디바이스를 등록, 테스트 및 구성한 다음 프로덕션 계정에 동일한 디바이스 및 디바이스 인증서를 등록하고 사용할 수 있습니다. 등록된 CA 없이 디바이스에 클라이언트 인증서를 등록하거나 디바이스 인증서를 등록할 수도 있습니다. AWS IoT자세한 정보는 등록되지 않은 CA로 서명된 클라이언트 인증서 등록(CLI)을 참조하세요.

참고

다중 계정 등록에 사용되는 인증서는 iot:Data-ATS, iot:Data(레거시), iot:Jobsiot:CredentialProvider 엔드포인트 유형으로 지원됩니다. AWS IoT 디바이스 엔드포인트에 대한 자세한 내용은 을 참조하십시오AWS IoT 장치 데이터 및 서비스 엔드포인트.

다중 계정 등록을 사용하는 장치는 SNI (서버 이름 표시) 확장을 전송 계층 보안 (TLS) 프로토콜로 전송하고 연결할 때 host_name 필드에 전체 엔드포인트 주소를 제공해야 합니다. AWS IoT AWS IoT 의 엔드포인트 주소를 사용하여 연결을 host_name 올바른 계정으로 라우팅합니다. AWS IoT host_name에서 유효한 엔드포인트 주소를 전송하지 않는 기존 디바이스도 계속 작동하기는 하지만 이 정보가 필요한 기능은 사용할 수 없습니다. SNI 확장에 대한 자세한 내용과 host_name 필드의 엔드포인트 주소를 식별하는 방법은 전송 보안 AWS IoT Core 단원을 참조하세요.

다중 계정 등록을 사용하려면
  1. CA로 디바이스 인증서를 등록할 수 있습니다. SNI_ONLY 모드에서 여러 계정에 서명 CA를 등록하고 해당 CA를 사용하여 여러 계정에 동일한 클라이언트 인증서를 등록할 수 있습니다. 자세한 정보는 SNI_ONLY 모드에서 CA 인증서 등록(CLI) - 권장됨을 참조하세요.

  2. CA 없이 디바이스 인증서를 등록할 수 있습니다. 등록되지 않은 CA로 서명된 클라이언트 인증서 등록(CLI) 섹션을 참조하십시오. CA 등록은 선택 사항입니다. 장치 인증서를 서명한 CA를 등록할 필요는 없습니다 AWS IoT.

에서 지원하는 인증서 서명 알고리즘 AWS IoT

AWS IoT 다음과 같은 인증서 서명 알고리즘을 지원합니다.

  • SHA256WITHRSA

  • SHA384WITHRSA

  • SHA512WITHRSA

  • SHA256WITHRSAANDMGF1(RSASSA-PSS)

  • SHA384WITHRSAANDMGF1(RSASSA-PSS)

  • SHA512WITHRSAANDMGF1(RSASSA-PSS)

  • DSA_WITH_SHA256

  • ECDSA-WITH-SHA256

  • ECDSA-WITH-SHA384

  • ECDSA-WITH-SHA512

인증서 인증 및 보안에 대한 자세한 내용은 장치 인증서 키 품질을 참조하십시오.

참고

인증서 서명 요청(CSR)에는 퍼블릭 키가 포함되어야 합니다. 키는 길이가 2,048비트 이상인 RSA 키이거나 NIST P-256, NIST P-384, NIST P-521 곡선의 ECC 키일 수 있습니다. 자세한 내용은 CreateCertificateFromCsr AWS IoTAPI 참조 안내서를 참조하십시오.

에서 지원하는 주요 알고리즘 AWS IoT

아래 표는 주요 알고리즘이 지원되는 방식을 보여줍니다.

주요 알고리즘 인증서 서명 알고리즘 TLS 버전 지원? [Yes] 또는 [No]
키 크기가 2048비트 이상인 RSA 모두 TLS 1.2 TLS 1.3
ECC NIST P-256/P-384/P-521 모두 TLS 1.2 TLS 1.3
키 크기가 최소 2048비트인 RSA-PSS 모두 TLS 1.2 아니요
키 크기가 2048비트 이상인 RSA-PSS 모두 TLS 1.3

CSR을 사용하여 인증서를 만들려면 지원되는 키 알고리즘을 사용하여 CreateCertificateFromCSR용 공개 키를 생성할 수 있습니다. RegisterCertificate또는 RegisterCertificateWithoutCA를 사용하여 자체 인증서를 등록하려면 지원되는 키 알고리즘을 사용하여 인증서의 공개 키를 생성할 수 있습니다.

자세한 내용은 보안 정책을 참조하십시오.