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 계정 대해 인증서의 상태를 검증합니다. 그런 다음 인증서에 포함된 퍼블릭 키에 해당하는 프라이빗 키의 소유권 증명을 위해 클라이언트에 문제를 제기합니다. 는 클라이언트가 서버 이름 표시(SNI) 확장을 전송 계층 보안(TLS) 프로토콜로 전송하도록 AWS IoT 요구합니다. 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일 자정(2049-12-31T23:59:59Z)UTC에 AWS IoT 만료됩니다.

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

공식 AWS 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 사용하여 연결을 올바른 AWS IoT 계정으로 host_name 라우팅합니다. 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 IoT API

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

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

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

를 사용하여 인증서를 생성하려면 지원되는 키 알고리즘을 사용하여 에 대한 퍼블릭 키를 생성할 CreateCertificateFromCSR수 있습니다CSR. RegisterCertificate 또는 RegisterCertificateWithoutCA 를 사용하여 자체 인증서를 등록하려면 지원되는 키 알고리즘을 사용하여 인증서에 대한 퍼블릭 키를 생성할 수 있습니다.

자세한 내용은 보안 정책 섹션을 참조하세요.