Azure IoT Hub .NET: RegistryManager HTTP 프록시 설정
관련 없는 장치 전송에 의존하지 말고 서비스 SDK의 HttpTransportSettings.Proxy로 Azure IoT Hub RegistryManager를 만드세요.
Microsoft.Azure.Devices 1.38.1은 서비스 측 HttpTransportSettings를 통해 HTTP 프록시를 노출합니다. RegistryManager를 만들 때 이를 지정하세요:
var proxy = new System.Net.WebProxy("http://proxy.example:8080");
var settings = new Microsoft.Azure.Devices.HttpTransportSettings
{
Proxy = proxy
};
var registry = Microsoft.Azure.Devices.RegistryManager
.CreateFromConnectionString(iotHubConnectionString, settings);
이 registry 인스턴스를 의도한 작업에 사용하고 워크로드 수명 동안 유지하세요. 실제 IoT Hub 연결 문자열은 그대로 두세요. 프록시 주소는 전송 설정에 속합니다. HTTP 프록시 목록은 이 RegistryManager가 사용하는 공용 HTTP 경로의 후보를 제공합니다.
프록시에 로그인이 필요하면 클라이언트를 만들기 전에 proxy.Credentials를 설정하세요. IoT Hub 연결 문자열은 서비스 요청을 인증하며 그 중간 계정을 제공하지 않습니다.
이 HttpTransportSettings는 서비스 패키지 Microsoft.Azure.Devices에 속합니다. 장치 클라이언트의 MQTT 및 AMQP 연결은 다른 설정을 사용하므로, registry 작업 성공은 HTTP 서비스 경로가 동작했음만 증명합니다.