📄 certsrv.h
字号:
// Values Under "CertSvc\Configuration\<CAName>\ExitModules\<ProgId>":
// LDAP based CRL and URL issuance
#define wszREGLDAPREVOCATIONDN TEXT("LDAPRevocationDN")
#define wszREGLDAPREVOCATIONDNTEMPLATE TEXT("LDAPRevocationDNTemplate")
#define wszCRLPUBLISHRETRYCOUNT TEXT("CRLPublishRetryCount")
#define wszREGCERTPUBLISHFLAGS TEXT("PublishCertFlags")
// wszREGCERTPUBLISHFLAGS Values:
#define EXITPUB_FILE 0x00000001
#define EXITPUB_ACTIVEDIRECTORY 0x00000002
#define EXITPUB_EMAILNOTIFYALL 0x00000004
#define EXITPUB_EMAILNOTIFYSMARTCARD 0x00000008
#define EXITPUB_REMOVEOLDCERTS 0x00000010
#define EXITPUB_DEFAULT_ENTERPRISE EXITPUB_ACTIVEDIRECTORY
#define EXITPUB_DEFAULT_STANDALONE EXITPUB_FILE
#define wszCLASS_CERTADMIN TEXT("CertificateAuthority.Admin")
#define wszCLASS_CERTCONFIG TEXT("CertificateAuthority.Config")
#define wszCLASS_CERTGETCONFIG TEXT("CertificateAuthority.GetConfig")
#define wszCLASS_CERTENCODE TEXT("CertificateAuthority.Encode")
#define wszCLASS_CERTREQUEST TEXT("CertificateAuthority.Request")
#define wszCLASS_CERTSERVEREXIT TEXT("CertificateAuthority.ServerExit")
#define wszCLASS_CERTSERVERPOLICY TEXT("CertificateAuthority.ServerPolicy")
#define wszCLASS_CERTVIEW TEXT("CertificateAuthority.View")
// class name templates
#define wszMICROSOFTCERTMODULE_PREFIX TEXT("CertificateAuthority_MicrosoftDefault")
#define wszCERTEXITMODULE_POSTFIX TEXT(".Exit")
#define wszCERTMANAGEEXIT_POSTFIX TEXT(".ExitManage")
#define wszCERTPOLICYMODULE_POSTFIX TEXT(".Policy")
#define wszCERTMANAGEPOLICY_POSTFIX TEXT(".PolicyManage")
// actual policy/exit manage class names
#define wszCLASS_CERTMANAGEEXITMODULE wszMICROSOFTCERTMODULE_PREFIX wszCERTMANAGEEXIT_POSTFIX
#define wszCLASS_CERTMANAGEPOLICYMODULE wszMICROSOFTCERTMODULE_PREFIX wszCERTMANAGEPOLICY_POSTFIX
// actual policy/exit class names
#define wszCLASS_CERTEXIT wszMICROSOFTCERTMODULE_PREFIX wszCERTEXITMODULE_POSTFIX
#define wszCLASS_CERTPOLICY wszMICROSOFTCERTMODULE_PREFIX wszCERTPOLICYMODULE_POSTFIX
//+--------------------------------------------------------------------------
// Name properties:
#define wszPROPDISTINGUISHEDNAME TEXT("DistinguishedName")
#define wszPROPRAWNAME TEXT("RawName")
#define wszPROPNAMETYPE TEXT("NameType")
#define wszPROPCOUNTRY TEXT("Country")
#define wszPROPORGANIZATION TEXT("Organization")
#define wszPROPORGUNIT TEXT("OrgUnit")
#define wszPROPCOMMONNAME TEXT("CommonName")
#define wszPROPLOCALITY TEXT("Locality")
#define wszPROPSTATE TEXT("State")
#define wszPROPTITLE TEXT("Title")
#define wszPROPGIVENNAME TEXT("GivenName")
#define wszPROPINITIALS TEXT("Initials")
#define wszPROPSURNAME TEXT("SurName")
#define wszPROPDOMAINCOMPONENT TEXT("DomainComponent")
#define wszPROPEMAIL TEXT("EMail")
#define wszPROPSTREETADDRESS TEXT("StreetAddress")
#define wszPROPUNSTRUCTUREDNAME TEXT("UnstructuredName")
#define wszPROPUNSTRUCTUREDADDRESS TEXT("UnstructuredAddress")
#define wszPROPDEVICESERIALNUMBER TEXT("DeviceSerialNumber")
//+--------------------------------------------------------------------------
// Subject Name properties:
#define wszPROPSUBJECTDOT TEXT("Subject.")
#define wszPROPSUBJECTDISTINGUISHEDNAME \
wszPROPSUBJECTDOT wszPROPDISTINGUISHEDNAME
#define wszPROPSUBJECTRAWNAME wszPROPSUBJECTDOT wszPROPRAWNAME
#define wszPROPSUBJECTNAMETYPE wszPROPSUBJECTDOT wszPROPNAMETYPE
#define wszPROPSUBJECTCOUNTRY wszPROPSUBJECTDOT wszPROPCOUNTRY
#define wszPROPSUBJECTORGANIZATION wszPROPSUBJECTDOT wszPROPORGANIZATION
#define wszPROPSUBJECTORGUNIT wszPROPSUBJECTDOT wszPROPORGUNIT
#define wszPROPSUBJECTCOMMONNAME wszPROPSUBJECTDOT wszPROPCOMMONNAME
#define wszPROPSUBJECTLOCALITY wszPROPSUBJECTDOT wszPROPLOCALITY
#define wszPROPSUBJECTSTATE wszPROPSUBJECTDOT wszPROPSTATE
#define wszPROPSUBJECTTITLE wszPROPSUBJECTDOT wszPROPTITLE
#define wszPROPSUBJECTGIVENNAME wszPROPSUBJECTDOT wszPROPGIVENNAME
#define wszPROPSUBJECTINITIALS wszPROPSUBJECTDOT wszPROPINITIALS
#define wszPROPSUBJECTSURNAME wszPROPSUBJECTDOT wszPROPSURNAME
#define wszPROPSUBJECTDOMAINCOMPONENT wszPROPSUBJECTDOT wszPROPDOMAINCOMPONENT
#define wszPROPSUBJECTEMAIL wszPROPSUBJECTDOT wszPROPEMAIL
#define wszPROPSUBJECTSTREETADDRESS wszPROPSUBJECTDOT wszPROPSTREETADDRESS
#define wszPROPSUBJECTUNSTRUCTUREDNAME wszPROPSUBJECTDOT wszPROPUNSTRUCTUREDNAME
#define wszPROPSUBJECTUNSTRUCTUREDADDRESS wszPROPSUBJECTDOT wszPROPUNSTRUCTUREDADDRESS
#define wszPROPSUBJECTDEVICESERIALNUMBER wszPROPSUBJECTDOT wszPROPDEVICESERIALNUMBER
#define wszPROPSUBJECTCOUNTRYOBJID \
wszPROPSUBJECTDOT TEXT(szOID_COUNTRY_NAME)
#define wszPROPSUBJECTORGANIZATIONOBJID \
wszPROPSUBJECTDOT TEXT(szOID_ORGANIZATION_NAME)
#define wszPROPSUBJECTORGUNITOBJID \
wszPROPSUBJECTDOT TEXT(szOID_ORGANIZATIONAL_UNIT_NAME)
#define wszPROPSUBJECTCOMMONNAMEOBJID \
wszPROPSUBJECTDOT TEXT(szOID_COMMON_NAME)
#define wszPROPSUBJECTLOCALITYOBJID \
wszPROPSUBJECTDOT TEXT(szOID_LOCALITY_NAME)
#define wszPROPSUBJECTSTATEOBJID \
wszPROPSUBJECTDOT TEXT(szOID_STATE_OR_PROVINCE_NAME)
#define wszPROPSUBJECTTITLEOBJID \
wszPROPSUBJECTDOT TEXT(szOID_TITLE)
#define wszPROPSUBJECTGIVENNAMEOBJID \
wszPROPSUBJECTDOT TEXT(szOID_GIVEN_NAME)
#define wszPROPSUBJECTINITIALSOBJID \
wszPROPSUBJECTDOT TEXT(szOID_INITIALS)
#define wszPROPSUBJECTSURNAMEOBJID \
wszPROPSUBJECTDOT TEXT(szOID_SUR_NAME)
#define wszPROPSUBJECTDOMAINCOMPONENTOBJID \
wszPROPSUBJECTDOT TEXT(szOID_DOMAIN_COMPONENT)
#define wszPROPSUBJECTEMAILOBJID \
wszPROPSUBJECTDOT TEXT(szOID_RSA_emailAddr)
#define wszPROPSUBJECTSTREETADDRESSOBJID \
wszPROPSUBJECTDOT TEXT(szOID_STREET_ADDRESS)
#define wszPROPSUBJECTUNSTRUCTUREDNAMEOBJID \
wszPROPSUBJECTDOT TEXT(szOID_RSA_unstructName)
#define wszPROPSUBJECTUNSTRUCTUREDADDRESSOBJID \
wszPROPSUBJECTDOT TEXT(szOID_RSA_unstructAddr)
#define wszPROPSUBJECTDEVICESERIALNUMBEROBJID \
wszPROPSUBJECTDOT TEXT(szOID_DEVICE_SERIAL_NUMBER)
//+--------------------------------------------------------------------------
// Request properties:
#define wszPROPREQUESTDOT TEXT("Request.")
#define wszPROPREQUESTREQUESTID TEXT("RequestID")
#define wszPROPREQUESTRAWREQUEST TEXT("RawRequest")
#define wszPROPREQUESTRAWOLDCERTIFICATE TEXT("RawOldCertificate")
#define wszPROPREQUESTATTRIBUTES TEXT("RequestAttributes")
#define wszPROPREQUESTTYPE TEXT("RequestType")
#define wszPROPREQUESTFLAGS TEXT("RequestFlags")
#define wszPROPREQUESTSTATUSCODE TEXT("StatusCode")
#define wszPROPREQUESTDISPOSITION TEXT("Disposition")
#define wszPROPREQUESTDISPOSITIONMESSAGE TEXT("DispositionMessage")
#define wszPROPREQUESTSUBMITTEDWHEN TEXT("SubmittedWhen")
#define wszPROPREQUESTRESOLVEDWHEN TEXT("ResolvedWhen")
#define wszPROPREQUESTREVOKEDWHEN TEXT("RevokedWhen")
#define wszPROPREQUESTREVOKEDEFFECTIVEWHEN TEXT("RevokedEffectiveWhen")
#define wszPROPREQUESTREVOKEDREASON TEXT("RevokedReason")
#define wszPROPREQUESTERNAME TEXT("RequesterName")
//+--------------------------------------------------------------------------
// Request attribute properties:
#define wszPROPCHALLENGE TEXT("Challenge")
#define wszPROPEXPECTEDCHALLENGE TEXT("ExpectedChallenge")
#define wszPROPDISPOSITION TEXT("Disposition")
#define wszPROPDISPOSITIONDENY TEXT("Deny")
#define wszPROPDISPOSITIONPENDING TEXT("Pending")
#define wszPROPVALIDITYPERIOD TEXT("ValidityPeriod")
#define wszPROPVALIDITYPERIODUNITS TEXT("ValidityPeriodUnits")
#define wszPROPCERTTYPE TEXT("CertType")
#define wszPROPCERTTEMPLATE TEXT("CertificateTemplate")
#define wszPROPREQUESTOSVERSION TEXT("RequestOSVersion")
#define wszPROPREQUESTCSPPROVIDER TEXT("RequestCSPProvider")
//+--------------------------------------------------------------------------
// Hardcoded properties
// ".#" means ".0", ".1", ".2" ... may be appended to the property name to
// collect context specific values. For some properties, the suffix selects
// the CA certificate context. For others, it selects the the CA CRL context.
#define wszPROPCATYPE TEXT("CAType")
#define wszPROPSANITIZEDCANAME TEXT("SanitizedCAName")
#define wszPROPSANITIZEDSHORTNAME TEXT("SanitizedShortName")
#define wszPROPMACHINEDNSNAME TEXT("MachineDNSName")
#define wszPROPMODULEREGLOC TEXT("ModuleRegistryLocation")
#define wszPROPREQUESTERCAACCESS TEXT("RequesterCAAccess")
#define wszPROPUSEDS TEXT("fUseDS")
// CA Certificate properties: (all ".#" extensible except wszPROPCERTCOUNT)
#define wszPROPCERTCOUNT TEXT("CertCount")
#define wszPROPRAWCACERTIFICATE TEXT("RawCACertificate")
#define wszPROPCERTSTATE TEXT("CertState")
#define wszPROPCERTSUFFIX TEXT("CertSuffix")
// CA CRL properties: (all ".#" extensible)
#define wszPROPRAWCRL TEXT("RawCRL")
#define wszPROPCRLINDEX TEXT("CRLIndex")
#define wszPROPCRLSTATE TEXT("CRLState")
#define wszPROPCRLSUFFIX TEXT("CRLSuffix")
// Values for wszPROPCERTSTATE (see certadm.h):
// CA_DISP_REVOKED // This Cert has been revoked.
// CA_DISP_VALID // This Cert is still valid
// CA_DISP_INVALID // This Cert has expired.
// CA_DISP_ERROR // Never returned.
// Values for wszPROPCRLSTATE (see certadm.h):
// CA_DISP_REVOKED // All unexpired certs using this Cert's CRL have been
// // revoked.
// CA_DISP_VALID // This Cert is still publishing CRLs as needed.
// CA_DISP_INVALID // All certs using this Cert's CRL are expired.
// CA_DISP_ERROR // This Cert's CRL is managed by another Cert.
//+--------------------------------------------------------------------------
// Certificate properties:
#define wszPROPCERTIFICATEREQUESTID TEXT("RequestID")
#define wszPROPRAWCERTIFICATE TEXT("RawCertificate")
#define wszPROPCERTIFICATEHASH TEXT("CertificateHash")
#define wszPROPCERTIFICATETYPE TEXT("CertificateType")
#define wszPROPCERTIFICATESERIALNUMBER TEXT("SerialNumber")
#define wszPROPCERTIFICATENOTBEFOREDATE TEXT("NotBefore")
#define wszPROPCERTIFICATENOTAFTERDATE TEXT("NotAfter")
#define wszPROPCERTIFICATERAWPUBLICKEY TEXT("RawPublicKey")
#define wszPROPCERTIFICATEPUBLICKEYALGORITHM TEXT("PublicKeyAlgorithm")
#define wszPROPCERTIFICATERAWPUBLICKEYALGORITHMPARAMETERS \
TEXT("RawPublicKeyAlgorithmParameters")
#define wszPROPCERTIFICATERAWSMIMECAPABILITIES TEXT("RawSMIMECapabilities")
//+--------------------------------------------------------------------------
// Certificate extension properties:
#define EXTENSION_CRITICAL_FLAG 0x00000001
#define EXTENSION_DISABLE_FLAG 0x00000002
#define EXTENSION_POLICY_MASK 0x0000ffff // Settable by admin+policy
#define EXTENSION_ORIGIN_REQUEST 0x00010000
#define EXTENSION_ORIGIN_POLICY 0x00020000
#define EXTENSION_ORIGIN_ADMIN 0x00030000
#define EXTENSION_ORIGIN_SERVER 0x00040000
#define EXTENSION_ORIGIN_RENEWALCERT 0x00050000
#define EXTENSION_ORIGIN_IMPORTEDCERT 0x00060000
#define EXTENSION_ORIGIN_PKCS7 0x00070000
#define EXTENSION_ORIGIN_MASK 0x000f0000
//+--------------------------------------------------------------------------
// GetProperty/SetProperty Flags:
//
// Choose one Type
#define PROPTYPE_LONG 0x00000001 // Signed long
#define PROPTYPE_DATE 0x00000002 // Date+Time
#define PROPTYPE_BINARY 0x00000003 // Binary data
#define PROPTYPE_STRING 0x00000004 // Unicode String
#define PROPTYPE_MASK 0x000000ff
// Choose one Caller:
#define PROPCALLER_SERVER 0x00000100
#define PROPCALLER_POLICY 0x00000200
#define PROPCALLER_EXIT 0x00000300
#define PROPCALLER_ADMIN 0x00000400
#define PROPCALLER_REQUEST 0x00000500
#define PROPCALLER_MASK 0x00000f00
// RequestFlags definitions:
#define CR_FLG_FORCETELETEX 0x00000001
#define CR_FLG_RENEWAL 0x00000002
#define CR_FLG_FORCEUTF8 0x00000004
// Disposition property values:
// Disposition values for requests in the queue:
#define DB_DISP_ACTIVE 8 // being processed
#define DB_DISP_PENDING 9 // taken under submission
#define DB_DISP_QUEUE_MAX 9 // max disposition value for queue view
#define DB_DISP_CA_CERT 15 // CA cert
#define DB_DISP_CA_CERT_CHAIN 16 // CA cert chain
// Disposition values for requests in the log:
#define DB_DISP_LOG_MIN 20 // min disposition value for log view
#define DB_DISP_ISSUED 20 // cert issued
#define DB_DISP_REVOKED 21 // issued and revoked
// Disposition values for failed requests in the log:
#define DB_DISP_LOG_FAILED_MIN 30 // min disposition value for log view
#define DB_DISP_ERROR 30 // request failed
#define DB_DISP_DENIED 31 // request denied
// VerifyRequest() return values
#define VR_PENDING 0 // request will be accepted or denied later
#define VR_INSTANT_OK 1 // request was accepted
#define VR_INSTANT_BAD 2 // request was rejected
//+--------------------------------------------------------------------------
// Known request Attribute names and Value strings
// RequestType attribute name:
#define wszCERT_TYPE L"RequestType" // attribute name
// RequestType attribute values:
// Not specified: // Non-specific certificate
#define wszCERT_TYPE_CLIENT L"Client" // Client authentication cert
#define wszCERT_TYPE_SERVER L"Server" // Server authentication cert
#define wszCERT_TYPE_CODESIGN L"CodeSign" // Code signing certificate
#define wszCERT_TYPE_CUSTOMER L"SetCustomer" // SET Customer certificate
#define wszCERT_TYPE_MERCHANT L"SetMerchant" // SET Merchant certificate
#define wszCERT_TYPE_PAYMENT L"SetPayment" // SET Payment certificate
// Version attribute name:
#define wszCERT_VERSION L"Version" // attribute name
// Version attribute values:
// Not specified: // Whetever is current
#define wszCERT_VERSION_1 L"1" // Version one certificate
#define wszCERT_VERSION_2 L"2" // Version two certificate
#define wszCERT_VERSION_3 L"3" // Version three certificate
#pragma option pop /*P_O_Pop*/
#endif // _CERTSRV_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -