클라이언트 인증
인증은 호출자가 실제로 자신이 누구인지 확인하는 프로세스입니다. 즉, ID 클레임의 신뢰성을 확인합니다. 일반적으로 서버와 클라이언트 둘 다에서 이 작업을 수행할 수 있으며 각각 다른 서버와 클라이언트를 인증합니다. 그러나 역할 기반 보안과 마찬가지로 클라이언트에 권한을 부여하는 서버 애플리케이션에서도 인증을 수행하는 것이 특히 중요합니다. 클라이언트 인증은 의미 있는 권한 부여 정책의 필수 구성 요소입니다. 원하는 모든 역할 확인을 수행할 수 있지만 확인 중인 클라이언트 ID가 정품인지 확실하지 않은 경우 애플리케이션은 기본적으로 명예 시스템에 의존합니다.
COM+ 애플리케이션의 경우 인증은 관리적으로 켜고 구성할 수 있으며, 그 후에는 애플리케이션에 투명하게 작동합니다. 구성 요소 서비스 관리 도구 또는 관리 함수를 사용하여 인증 수준을 관리적으로 지정합니다. 인증 설정에 대한 자세한 내용은 서버 애플리케이션에 대한 인증 수준 설정 및 라이브러리 애플리케이션 에 대한 인증 사용을 참조하세요.
인증 설정은 애플리케이션 유형이 서버 또는 라이브러리 애플리케이션인지에 따라 다른 것을 의미합니다.
COM+ 서버 애플리케이션에 대한 인증 설정
COM+ 서버 애플리케이션의 경우 클라이언트가 애플리케이션 내의 구성 요소를 호출할 때 인증을 수행하는 방법을 결정하는 인증 수준을 설정합니다. 인증 없음에서 모든 패킷 및 모든 메서드 호출 매개 변수의 암호화에 이르기까지 다양한 수준의 보안을 제공하는 여러 인증 수준 중에서 선택할 수 있습니다. 자세한 내용은 서버 애플리케이션에 대한 인증 수준 설정을 참조하세요.
그러나 보안이 향상되면 일부 성능 비용이 발생하므로 애플리케이션을 구성할 때 고려해야 합니다. COM+는 클라이언트와 서버에서 지정한 인증 수준 간에 협상합니다. 이 협상이 수행되는 방식은 서버 쪽에서만 인증을 관리적으로 제어할 수 있는 이점이 있습니다. 자세한 내용은 인증 수준 협상을 참조하세요.
참고
COM+ 애플리케이션 내에서 CoInitializeSecurity 를 사용하여 프로그래밍 방식으로 인증 수준을 지정해서는 안 됩니다. COM+ 는 CoInitializeSecurity 를 호출하며 프로세스당 한 번만 호출할 수 있습니다.
기본 인증 서비스는 COM 및 Microsoft Windows에서 제공합니다. 인증 서비스에서 타사에서 사용자 ID의 신뢰성을 증명하여 사용자에 대한 인증서를 제공합니다. 이 인증은 인증 기관만큼 신뢰할 수 있으며, 운전 면허증이나 여권과 거의 동일한 방식으로 인증 문서로 사용되며 발급자의 권한에 따라 달라집니다. 인증 서비스에 대한 자세한 내용은 COM 설명서의 COM 및 보안 패키지를 참조하세요.
COM+ 라이브러리 애플리케이션에 대한 인증 설정
COM+ 라이브러리 애플리케이션의 경우 인증을 사용하거나 사용하지 않도록 설정하여 애플리케이션이 호스팅 프로세스에서 수행하는 인증의 적용을 받는지 여부를 결정합니다. COM+ 라이브러리 애플리케이션에 대한 인증은 호스팅 프로세스에 의해 주로 제어되지만 인증에 참여하지 않도록 라이브러리 애플리케이션을 구성할 수 있습니다. 즉, 애플리케이션에 대한 호출은 인증되거나 인증되지 않을 수 있으며, 후자의 경우 클라이언트의 "인증"이 항상 성공합니다. 자세한 내용은 라이브러리 애플리케이션에 인증 사용을 참조하세요.
또한 데이터베이스 또는 일부 다운스트림 애플리케이션에서 클라이언트를 인증하려고 하거나 요구될 수 있습니다. COM+ 애플리케이션에서만 클라이언트를 인증하는 것만으로는 충분하지 않을 수 있습니다. 이 경우 클라이언트의 ID가 다운스트림으로 전파되도록 클라이언트를 가장해야 합니다. 가장에 대한 자세한 내용은 클라이언트 가장 및 위임을 참조하세요. 데이터 계층에서 인증을 수행할지 여부를 결정하는 데 관련된 문제에 대한 자세한 내용은 다중 계층 애플리케이션 보안을 참조하세요.
관련 항목