COM+ SOAP 서비스 보안 고려 사항
COM+ SOAP 서비스는 보안을 위해 IIS 웹 서버에 따라 달라집니다. 클라이언트 활성화 개체 모드에서도 COM+ RPC는 클라이언트 ID를 전송하지 않으므로 역할 기반 보안 또는 DCOM에서 제공하는 다른 보안 기능을 사용할 수 없습니다. XML 웹 서비스로부터 전송되는 데이터의 개인 정보를 보호하거나 XML 웹 서비스를 무단 액세스로부터 보호하려는 경우 클라이언트 IP 주소를 기반으로 XML 웹 서비스에 대한 액세스를 제한하거나 클라이언트가 ID를 확인하기 위해 디지털 인증서를 제공하도록 요구하도록 IIS를 구성할 수 있습니다. 액세스를 제한하지 않으면 웹 서버와 통신할 수 있는 모든 클라이언트가 XML 웹 서비스에 액세스할 수 있습니다.
공개 키 암호화 SSL 또는 TLS 프로토콜을 사용하여 클라이언트와의 XML 웹 서비스 통신을 암호화하도록 IIS를 구성할 수 있습니다. SOAP 통신을 암호화하지 않으면 SOAP 통신이 이동하는 모든 네트워크에 액세스할 수 있는 타사에서 클라이언트와 서버 간에 교환된 데이터를 관찰할 수 있습니다. 네트워크 토폴로지에 따라 작은 LAN이거나 인터넷일 수 있습니다.
기본적으로 암호화되지 않은 SOAP 통신은 HTTP 포트(80)에서 수신되고 암호화된 SOAP 통신은 HTTPS 포트(443)에서 수신됩니다. 클라이언트가 XML 웹 서비스에 성공적으로 액세스하려면 TCP SYN 패킷이 적절한 서버 포트에 도달할 수 있도록 클라이언트와 서버 간의 방화벽을 구성해야 합니다. 반대로, XML 웹 서비스에 대한 액세스를 제한하기 위해 방화벽 관리자가 이러한 포트를 닫도록 선택할 수 있습니다.
XML 웹 서비스로 노출되는 COM 구성 요소의 기본 보안 설정은 설치된 Microsoft .NET Framework 버전에 따라 다릅니다. 버전 1.0이 설치된 경우 XML 웹 서비스는 기본적으로 안전하지 않습니다. 모든 호출이 수락되고 암호화가 사용되지 않습니다. 버전 1.1 이상이 설치된 경우 XML 웹 서비스는 기본적으로 안전합니다. 호출자는 인증되어야 하며 암호화가 필요합니다.
보안 XML 웹 서비스는 WSDL을 통한 WKO 액세스를 지원하지 않습니다. 대신 .NET Framework 버전 1.1을 설치한 클라이언트는 CAO 모드에서 호출할 수 있습니다. 타사 클라이언트가 WSDL을 통해 XML 웹 서비스에 액세스해야 하는 경우 익명 액세스를 허용해야 합니다.
XML 웹 서비스로 노출되는 COM 구성 요소는 기본적으로 익명 사용자의 권한(호출자의 권한이 아님)으로 실행됩니다. 다른 사용자로 XML 웹 서비스를 실행하도록 IIS를 구성할 수 있습니다. 구성 요소가 익명 사용자가 액세스할 수 없는 파일 또는 기타 리소스를 사용하기 때문에 이 기능이 필요할 수 있습니다. 그럼에도 불구하고 항상 가능한 가장 적은 권한으로 구성 요소를 실행하여 악의적인 호출자가 발생할 수 있는 피해를 제한해야 합니다.
참고
XML 웹 서비스를 통해 노출한 메서드가 악의적인 호출자에게 노출될 수 있으므로 항상 종속된 입력 매개 변수의 유효성을 검사해야 합니다.
특정 XML 웹 서비스 보안 설정을 구성하는 방법에 대한 자세한 지침은 XML 웹 서비스 보안을 참조하세요.
보안 SOAP 애플리케이션을 비보안 SOAP 애플리케이션으로 변환하려면
- IIS(인터넷 정보 서비스) 관리 도구를 엽니다.
- 애플리케이션의 가상 디렉터리를 찾아 속성 대화 상자를 엽니다.
- 문서 탭에서 기본 콘텐츠 사용 페이지를 선택합니다.
- 디렉터리 보안 탭의 익명 액세스 및 인증 제어에서 편집을 클릭합니다.
- 익명 액세스를 확인하여 익명 액세스를 사용하도록 설정하고 확인을 클릭합니다.
- 보안 통신에서 편집을 클릭합니다.
- SSL(보안 채널 필요) 확인란의 선택을 취소합니다.
관련 항목