본문 바로가기
과거자료/SUNAPI 1.0

[SUNAPI 1.0] 사용자인증 digest 인증방법

by Joo입니다 2014. 2. 28.

SUNAPI 1.0은 삼성 네트워크 카메라를 제어하기 위한 프로토콜


네트워크쪽 지식이 전혀 없는데, 카메라 제어한다고 힘들었다. ㅠㅠ


하고나니 별거 아닌것들. 이제 정리 시작! 


장비에 접속하기 위해서는 digest 인증 방법으로 접속해야한다.


하지만. 난 digest인증방법이 뭔지 모른다...............................................


- MSDN에서. -

Digest 인증은 Basic 인증을 대체하기 위한 시도/응답 스키마입니다. 서버에서는 nonce라고 하는 난수 데이터의 문자열을 시도로 클라이언트에 보냅니다. 클라이언트에서는 추가 정보 중에서 사용자 이름, 암호 및 nonce를 포함하는 해시를 사용하여 응답합니다. 이러한 교환 과정에서 발생하는 복잡성 및 데이터 해시 때문에 Digest 인증 스키마를 사용하는 사용자의 자격 증명을 도용하거나 재사용하기는 다른 경우보다 어렵습니다.

Digest 인증의 경우 Windows 도메인 계정을 사용해야 합니다. 다이제스트 영역은 Windows 도메인 이름입니다. 따라서 Windows XP Home Edition과 같이 Windows 도메인을 지원하지 않는 운영 체제에서 실행하는 서버를 다이제스트 인증과 함께 사용할 수 없습니다. 반대로 Windows 도메인을 지원하지 않는 운영 체제에서 클라이언트를 실행하는 경우 인증하는 동안 도메인 계정을 명시적으로 지정해야 합니다.


삼성테크윈에 문의결과 C# 코드 일부를 샘플로 줬는데. 난 C++로 구현해야해서........ 많이 슬펐지..


C# 코드


private WebRequest webRequest;


webRequest = WebRequest.Create(DataDefine.preURI + device.IpAddress + ":" + device.HttpPort.ToString() + query);


webRequest.Credentials = new NetworkCredential(device.UserName, device.Password);


((HttpWebRequest)webRequest).UserAgent = DataDefine.contentType;


webRequest.Method = DataDefine.getMethod;


webRequest.ContentType = DataDefine.contentType;


webRequest.ContentLength = 0;


webRequest.Timeout = 10000;


webRequest.Proxy = null; // first time delay

'과거자료 > SUNAPI 1.0' 카테고리의 다른 글

[SUNAPI 1.0] 사용자인증 digest 인증방법 C++  (0) 2014.03.02