COAUTHINFO 구조체(wtypesbase.h)

클라이언트 컴퓨터에서 서버 컴퓨터로 원격 활성화 요청을 수행하는 동안 사용되는 인증 설정을 포함합니다.

구문

typedef struct _COAUTHINFO {
  DWORD          dwAuthnSvc;
  DWORD          dwAuthzSvc;
  LPWSTR         pwszServerPrincName;
  DWORD          dwAuthnLevel;
  DWORD          dwImpersonationLevel;
  COAUTHIDENTITY *pAuthIdentityData;
  DWORD          dwCapabilities;
} COAUTHINFO;

멤버

dwAuthnSvc

사용할 인증 서비스입니다. 값 목록은 인증 서비스 상수를 참조하세요. 인증이 필요하지 않은 경우 RPC_C_AUTHN_NONE 사용합니다. RPC_C_AUTHN_WINNT 기본값이며 RPC_C_AUTHN_GSS_KERBEROS 지원됩니다.

dwAuthzSvc

사용할 권한 부여 서비스입니다. 값 목록은 권한 부여 상수를 참조하세요. NT 인증 서비스를 사용하려면 RPC_C_AUTHZ_NONE 지정합니다.

pwszServerPrincName

인증 서비스와 함께 사용할 서버 보안 주체 이름입니다. RPC_C_AUTHN_WINNT 사용하는 경우 보안 주체 이름은 NULL이어야 합니다.

dwAuthnLevel

사용할 인증 수준입니다. 값 목록은 인증 수준 상수를 참조하세요.

Windows Server 2003을 기준으로 원격 활성화는 CoInitializeSecuritydwAuthnLevel 매개 변수에 지정된 기본 인증 수준을 사용합니다. 이전 버전의 Windows에서는 다른 수준을 명시적으로 지정하지 않는 한 RPC_C_AUTHN_LEVEL_CONNECT 항상 보안 수준에 사용되었습니다.

dwImpersonationLevel

사용할 가장 수준입니다. 값 목록은 가장 수준 상수를 참조하세요. 이 값은 RPC_C_IMP_LEVEL_IMPERSONATE 이상이어야 합니다.

pAuthIdentityData

기본이 아닌 클라이언트 ID를 설정하는 COAUTHIDENTITY 구조체에 대한 포인터입니다. 이 매개 변수가 NULL이면 클라이언트의 실제 ID가 사용됩니다. 구조체 멤버의 값은 인증 서비스별로 다릅니다. dwAuthnSvc가 NTLMSSP 또는 Kerberos 네트워크 인증 프로토콜을 인증 서비스로 사용하지 않는 경우 이 값은 NULL이어야 합니다.

dwCapabilities

이 프록시의 추가 기능을 나타냅니다. 현재 이 멤버는 EOAC_NONE(0x0) 또는 RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH(0x1)이어야 합니다. Kerberos가 필요한 경우 RPC_C_QOS_CAPABILITIES_MUTUAL_AUTH 사용합니다.

설명

COSERVERINFOpAuthInfoNULL로 설정된 경우 Snego는 클라이언트와 서버 간에 작동하는 인증 서비스를 협상하는 데 사용됩니다. 그러나 pAuthInfo대해 NULL이 아닌 COAUTHINFO 구조를 지정하여 다음 요구 사항 중 하나를 충족할 수 있습니다.

  • 컴퓨터 원격 활성화에 대해 다른 클라이언트 ID를 지정하려면 지정된 ID는 실제 클라이언트 ID가 아닌 서버의 시작 권한 검사 사용됩니다.
  • NTLMSSP가 아닌 Kerberos가 컴퓨터 원격 활성화에 사용되도록 지정합니다. 기본이 아닌 클라이언트 ID를 지정하거나 지정하지 않을 수 있습니다.
  • 안전하지 않은 활성화를 요청합니다.
  • 독점 인증 서비스를 지정하려면
COAUTHINFO 구조를 지정하면 DCOM 활성화가 NTLMSSP 이외의 보안 공급자와 올바르게 작동할 수 있습니다. DCOM의 대체 구현과 상호 운용성을 위해 원격 활성화 중에 사용되는 추가 보안 정보를 지정할 수도 있습니다.

dwAuthzSvc, pwszServerPrincName, dwImpersonationLevel 또는 dwCapabilities를 잘못된 값으로 설정하고 CoGetClassObject 또는 CoCreateInstanceEx를 호출하는 경우 이러한 함수는 E_INVALIDARG 또는 유사한 오류를 반환하지 않습니다. 기본값은 잘못된 값 대신 사용됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows 2000 Server [데스크톱 앱 | UWP 앱]
머리글 wtypesbase.h(WTypes.h 포함)

추가 정보

COSERVERINFO