Share via


ICertificateEnrollmentPolicyServerSetup::Install 메서드(casetup.h)

Install 메서드는 ICertificateEnrollmentPolicyServerSetup 개체로 구성된 CEP(인증서 등록 정책) 웹 서비스를 설치합니다.

구문

HRESULT Install();

반환 값

반환 코드 설명
E_UNEXPECTED
이벤트 추적 디렉터리 또는 애플리케이션 디렉터리에 대해 지정된 이름이 이미 있지만 디렉터리가 아닌 파일을 나타냅니다.
HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS)
CEP 애플리케이션이 이미 있습니다. 자세한 내용은 설명 부분을 참조하세요.
HRESULT_FROM_WIN32(ERROR_INVALID_STATE)
ICertificateEnrollmentPolicyServerSetup 개체가 초기화되지 않았습니다.

ErrorString 속성 값은 "설치 개체가 초기화되지 않았습니다. InitializeInstallDefaults 메서드를 사용하여 설치 개체를 초기화하세요."

설명

이 함수는 다음 작업을 수행합니다.

  • WMI(Windows Management Instrumentation)를 초기화합니다.
  • 이름이 같은 애플리케이션이 아직 없는지 확인하여 CEP 구성의 유효성을 검사합니다. 애플리케이션 이름은 URL이 "https:// computerDNSname/ADPolicyProvider_cep_AuthenticationType/service.svc/cep" 형식인 CEP URL의 일부입니다. 애플리케이션 이름은 AuthenticationType이 다음 중 하나일 수 있는 "ADPolicyProvider_cep_AuthenticationType"으로 구성됩니다.
    • Kerberos
    • usernamepassword
    • 인증서(certificate)
    참고 이름이 같은 애플리케이션이 있는 경우 ErrorString 속성은 "기본 웹 사이트에 이미 있기 때문에 설치 프로그램에서 이 역할 서비스를 추가할 수 없습니다. 기존 역할 서비스를 제거하거나 다른 CA(인증 기관) 또는 인증 유형을 선택하세요."
     
  • %windir%\systemdata\cep\ADPolicyProvider_cep_AuthenticationType 애플리케이션 디렉터리를 만듭니다.
    참고 지정한 이름이 디렉터리로 이미 있는 경우 이 메서드는 오류를 반환하지 않지만 지정된 이름이 파일로 존재하거나 다른 오류가 발생한 경우 메서드 는 오류 HRESULT 를 반환하고 ErrorString 속성을 "디렉터리 %1을(를) 만들지 못했습니다"로 설정합니다.
     
  • %windir%\systemdata\cep\ADPolicyProvider_cep_AuthenticationType\Traces 이벤트 추적 디렉터리를 만듭니다.
  • Web.config 및 Service.svc 파일을 만들고 애플리케이션 디렉터리에 씁니다. 파일이 이미 있는 경우 덮어씁니다.
  • IIS 애플리케이션 풀을 만듭니다. 기본적으로 풀은 ApplicationPoolIdentity 계정에서 실행됩니다.
  • 기본 웹 사이트에 애플리케이션을 만듭니다.
  • 포트 443에 대한 보안(https) 바인딩을 만들고 SetProperty 메서드를 호출하여 구성 중에 인증서 해시를 지정한 경우 인증서 해시를 설정합니다.
  • pPropertyValue 인수에서 SetProperty를 호출하고 X509AuthCertificate 또는 X509AuthUsername을 지정한 경우 IIS 인증을 익명으로 설정합니다. SetProperty를 호출하고 X509AuthKerberos를 지정한 경우 인증을 Windows로 설정합니다.
  • 구성 중에 선택한 인증 유형에 따라 SSL 플래그를 설정합니다. 모든 인증 유형의 기본 플래그는 SSL(보안 채널 필요) 및 SSL_128(128비트 암호화)입니다. 또한 X509AuthCertificate를 지정하면 SSL_REQUIRE_CERT 및 SSL_NEGOTIATE_CERT 플래그가 설정됩니다.
  • 이벤트 추적 디렉터리에 읽기 및 쓰기 액세스 권한을 추가합니다.
  • Active Directory에서 지운 개체 컨테이너의 보안 설명자를 업데이트 컴퓨터 및/또는 애플리케이션 풀의 액세스를 허용합니다. 이렇게 하면 관련 Active Directory 개체가 삭제되면 CEP 서비스가 인증 기관에 알릴 수 있습니다. Active Directory가 도메인 컨트롤러에 설치된 경우 컴퓨터와 애플리케이션 풀이 모두 지운 개체 컨테이너에 액세스할 수 있습니다. Active Directory가 도메인 컨트롤러에 설치되지 않은 경우 컴퓨터만 액세스할 수 있습니다.
    참고 삭제된 개체 컨테이너에 대한 액세스가 실패하면 메서드는 오류 HRESULT 를 반환하고 ErrorString 속성을 "설치 프로그램에서 "삭제된 개체" 컨테이너에 대한 인증서 등록 정책 웹 서비스 계정 목록 권한을 부여할 수 없음으로 설정합니다. 웹 서비스는 인증서 템플릿과 같은 Active Directory 개체의 삭제를 검색할 수 없습니다. 설치를 완료하려면 Domain Admins 그룹의 구성원이 수동으로 AD DS(Active Directory Domain Services)의 "삭제된 개체" 컨테이너에 대한 인증서 등록 정책 웹 서비스 계정 목록 권한을 부여해야 합니다.
     

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 casetup.h
DLL Certocm.dll

추가 정보

ICertificateEnrollmentPolicyServerSetup

SetProperty