Azure IoT Hub는 IoT 애플리케이션과 관리하는 디바이스 간의 양방향 통신을 위한 중앙 메시지 허브를 제공합니다. 이 서비스를 배포할 때는 보안 모범 사례를 따라 데이터, 구성 및 인프라를 보호하는 것이 중요합니다.
이 문서에서는 Azure IoT Hub 배포를 가장 안전하게 보호하는 방법에 대한 지침을 제공합니다. 다른 Azure IoT 서비스도 사용하는 경우 IoT 솔루션 보안을 참조하세요.
네트워크 보안
IoT Hub에 대한 네트워크 액세스를 보호하는 것은 무단 액세스를 방지하고 디바이스와 클라우드 간에 흐르는 데이터를 보호하는 데 중요합니다.
프라이빗 엔드포인트 사용: Azure Private Link를 사용하여 가상 네트워크를 통해 트래픽을 라우팅하여 공용 인터넷 노출을 제거하여 디바이스가 공용 인터넷에 노출하지 않고 IoT Hub에 연결할 수 있도록 합니다. Azure Private Link를 사용하는 가상 네트워크에 대한 IoT Hub 지원을 참조하세요.
공용 네트워크 액세스 사용 안 함: 프라이빗 엔드포인트를 대신 사용할 수 있는 경우 공용 엔드포인트를 사용하지 않도록 설정하여 공용 인터넷에서 직접 액세스를 방지합니다. IoT Hub에 대한 공용 네트워크 액세스 관리를 참조하세요.
IP 필터링 구성: 특정 IP 주소 또는 범위만 허용하고 잠재적인 공격에 대한 노출을 제한하여 IoT Hub에 대한 연결을 제한합니다. IoT Hub IP 필터링을 참조하세요.
TLS 1.2 및 강력한 암호 그룹 적용: 모든 디바이스 및 서비스 연결에 대해 TLS 1.2 및 권장 암호 그룹을 사용하도록 적용하여 연결 보안을 강화합니다. IoT Hub의 TLS(전송 계층 보안) 지원을 참조하세요.
ID 및 액세스 관리
적절한 ID 및 액세스 관리는 IoT Hub를 관리할 수 있는 사용자와 디바이스가 인증하는 방법을 제어하는 데 필수적입니다.
Microsoft Entra ID 인증 사용: 서비스 API 요청을 인증하고 권한을 부여하기 위해 Microsoft Entra ID(이전의 Azure AD)를 구현하여 공유 액세스 정책보다 더 세부적인 액세스 제어를 사용하도록 설정합니다. Azure Active Directory를 사용하여 IoT Hub에 대한 액세스 제어를 참조하세요.
세분화된 권한에 대한 Azure RBAC 구현: IoT Hub 관리 API에 액세스하는 사용자 및 애플리케이션에 최소 권한 역할 기반 액세스 제어를 할당하여 권한 없는 작업의 위험을 줄입니다. Azure RBAC 역할 할당을 사용하여 IoT Hub에 대한 액세스 관리를 참조하세요.
디바이스 인증에 X.509 인증서 사용: 보안을 강화하고 자격 증명 관리를 향상하기 위해 프로덕션 환경에 대한 SAS 토큰 대신 X.509 인증서 기반 인증을 구현합니다. X.509 인증서를 사용하여 ID 인증을 참조하세요.
디바이스 간에 공유 대칭 키 방지: 단일 키가 유출될 경우 광범위한 손상을 방지하기 위해 각 디바이스에 고유 자격 증명을 할당하여 잠재적인 자격 증명 노출의 영향을 제한합니다. 디바이스 제조업체에 대한 보안 사례를 참조하세요.
필요하지 않은 경우 공유 액세스 정책 사용 안 함: 인증에 Microsoft Entra ID를 사용할 때 공유 액세스 정책 및 토큰을 사용하지 않도록 설정하여 공격 노출 영역을 줄입니다. Microsoft Entra 인증 적용을 참조하세요.
데이터 보호
전송 중 및 미사용 데이터 보호는 IoT 솔루션의 기밀성과 무결성을 유지하는 데 매우 중요합니다.
디바이스 비밀에 하드웨어 보안 모듈 사용: HSM(하드웨어 보안 모듈)에 디바이스 인증서 및 프라이빗 키를 저장하여 추출 및 변조로부터 보호하고 인증 자격 증명의 보안을 강화합니다. 하드웨어 보안 모듈을 참조하세요.
디바이스 수준 데이터 암호화 구현: IoT Hub로 전송하기 전에 디바이스에서 중요한 데이터를 암호화하여 특히 매우 중요한 정보에 대해 TLS 이외의 추가 보호 계층을 추가합니다. IoT Hub로 전송하기 전에 디바이스에서 중요한 데이터를 암호화하는 것 외에도 디바이스 쌍과 같은 Azure IoT의 상태 저장 구성 요소에 저장된 데이터도 암호화되었는지 확인합니다. 이는 디바이스-클라우드 및 클라우드-디바이스 통신 모두에 적용됩니다. 표준 암호화 알고리즘을 통해 미사용 데이터 보호를 참조하세요.
최신 SDK 버전 사용: 암호화 및 인증을 비롯한 다양한 보안 기능을 구현하는 최신 IoT Hub 디바이스 SDK를 사용하고 있는지 확인합니다. Azure IoT SDK를 참조하세요.
루트 CA 인증서 업데이트 유지: 디바이스에서 신뢰할 수 있는 루트 인증서를 정기적으로 업데이트하여 보안 TLS 연결을 유지하여 만료되거나 해지된 인증서로 인한 연결 오류를 방지합니다. IoT Hub TLS 지원을 참조하세요.
로깅 및 모니터링
포괄적인 로깅 및 모니터링은 IoT 솔루션의 잠재적인 보안 문제를 감지하고 대응하는 데 필수적입니다.
연결 및 디바이스 원격 분석에 대한 리소스 로그 사용: IoT Hub 리소스 로그를 Azure Monitor 로그로 보내 보안 조사를 위한 연결 시도, 오류 및 작업을 추적하도록 진단 설정을 구성합니다. IoT Hub의 모니터링 및 진단 문제를 참조하세요.
연결 문제에 대한 경고 설정: 메트릭 및 로그를 기반으로 경고를 만들어 반복되는 인증 실패 또는 보안 문제를 나타낼 수 있는 예기치 않은 연결 끊김과 같은 비정상적인 패턴을 검색합니다. Azure IoT Hub 디바이스 연결 모니터링, 진단 및 문제 해결을 참조하세요.
Microsoft Defender for IoT 사용: IoT Hub에서 Microsoft Defender for IoT를 활성화하여 IoT 솔루션을 대상으로 하는 잠재적 위협에 대한 실시간 보안 모니터링, 권장 사항 및 경고를 얻습니다. 빠른 시작: Azure IoT Hub에서 Microsoft Defender for IoT를 사용하도록 설정합니다.
디바이스 SDK 버전 모니터링: 디바이스를 연결하는 데 사용되는 SDK 버전을 추적하여 최신 보안 패치가 포함된 안전하고 up-to날짜 버전을 사용하고 있는지 확인합니다. Azure IoT Hub 모니터링을 참조하세요.
규정 준수 및 거버넌스
적절한 거버넌스를 수립하고 보안 표준을 준수하도록 하는 것은 보안 IoT 솔루션 유지 관리의 주요 측면입니다.
IoT Hub용 Azure Policy 적용: Azure Policy를 구현하여 IoT Hub에서 보안 구성을 적용하고 감사하여 일관된 보안 표준이 유지되도록 합니다. Azure IoT Hub에 대한 Azure Policy 기본 제공 정의를 참조하세요.
정기적으로 액세스 권한 감사: 사용자, 애플리케이션 및 디바이스에 부여된 액세스 권한을 정기적으로 검토하고 유효성을 검사하여 최소 권한 원칙을 준수하는지 확인합니다. ID 관리 모범 사례를 참조하세요.
감사에 대한 진단 설정 사용: 보안 조사 및 규정 준수 요구 사항을 지원하도록 IoT Hub에 대한 감사 로그를 캡처하고 보관하도록 진단 설정을 구성합니다. IoT Hub에서 리소스 로그를 사용하도록 설정해야 합니다.
네트워크 마이크로 세분화 구현: 네트워크 마이크로 분할을 구현하여 IoT 디바이스를 다른 조직 리소스와 논리적으로 분리하여 보안 인시던트의 잠재적인 폭발 반경을 제한합니다. 네트워크 구분을 참조하세요.
디바이스 보안
IoT Hub에 연결하는 디바이스를 보호하는 것은 IoT 솔루션의 전반적인 보안에 중요합니다.
재생 가능한 디바이스 자격 증명 사용: 손상된 인증의 영향을 제한하기 위해 X.509 인증서 롤링과 같은 디바이스 자격 증명을 정기적으로 업데이트하는 프로세스를 구현합니다. X.509 디바이스 인증서를 롤하는 방법을 참조하세요.
디바이스에 업데이트 에이전트 배포: 디바이스에 보안 업데이트를 수신 및 적용하기 위한 업데이트 에이전트가 있는지 확인하고 디바이스 수명 주기 내내 펌웨어 및 소프트웨어를 안전하게 유지합니다. IoT Hub에 대한 디바이스 업데이트를 참조하세요.
보안 디바이스 프로비저닝 구현: 적절한 인증 메커니즘을 사용하여 대규모로 디바이스를 안전하고 제로 터치 프로비전하기 위해 Azure IoT Hub DPS(Device Provisioning Service)를 사용합니다. IoT Hub Device Provisioning Service를 참조하세요.
신뢰할 수 있는 플랫폼 모듈 사용: TPM(신뢰할 수 있는 플랫폼 모듈)과 같은 하드웨어 기반 보안 기능이 있는 디바이스를 배포하여 암호화 키에 대한 보안 스토리지를 제공하고 물리적 변조로부터 보호합니다. TPM 증명을 참조하세요.
손상된 디바이스에 대한 액세스 취소: 손상의 징후를 보이는 디바이스에 대한 액세스를 신속하게 취소하여 IoT Hub에 연결하지 못하게 하고 다른 디바이스에 영향을 줄 수 있는 절차를 구현합니다. 디바이스 액세스를 취소하는 방법을 참조하세요.