Gewusst wie: Zuweisen ein S/MIME-Zertifikats zu ein MAPI-Profil für die Verwendung mit Outlook

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 312900 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Zusammenfassung

Dieser Artikel beschreibt wie ein MAPI-Profil mit Microsoft Outlook für das digitale Signieren und Verschlüsseln von E-mail verwenden programmgesteuert ein digitales Zertifikat zuweisen. In diesem Artikel behandelt den MAPI-Teil dieser Aufgabe und nimmt eine Kenntnisse im Umgang mit der Secure Multipurpose Internet Messaging Extensions (S/MIME).

Weitere Informationen

Gehen Sie folgendermaßen vor um ein Zertifikat ein MAPI-Profil zuzuweisen,
  1. Rufen Sie die Hashes für Ihr Signaturzertifikat und das Verschlüsselungszertifikat. Diese Hashes sind im binären Format und kann mithilfe der Funktion CertGetCertificateContextProperty der Cryptography Application programming Interface (API) abgerufen werden:
    CertGetCertificateContextProperty(pCert, CERT_HASH_PROP_ID, *lpbHash, cbHash);
    					
  2. Generieren Sie eine ASN1-codierte S/MIME-Funktionen binary large Object (BLOB) für Ihre Zertifikate. Weitere Informationen finden Sie die Request for Comments (RFC) für S/MIME.
  3. Erstellen Sie ein BLOB, Ihre Sicherheitseinstellungen enthalten soll. Jede Einstellung oder der Eigenschaft eine Kombination von TAG, Länge/Daten wie folgt besteht aus:

    Tabelle minimierenTabelle vergrößern
    TAGGibt die Eigenschaft (siehe unten).2 bytes
    LÄNGEGibt insgesamt Länge der Eigenschaft, einschließlich Tag und die Länge Bytes.2 bytes
    DATENEnthält die Daten.Variabler Länge

    Hier ist ein Beispiel:
    0100 0800 01000000
    Translated:
    TAG = 1
    LENGTH = 8 bytes
    DATA = 1
    						
    hier sind die Eigenschaften, die Sie in den BLOB enthalten muss:

    Tabelle minimierenTabelle vergrößern
    -EigenschaftNumerischer WertLängeBeschreibung
    PR_CERT_PROP_VERSION0 x 00018Reserviert, immer 1.
    PR_CERT_MESSAGE_ENCODING0 x 00068Art der Codierung (S/MIME = 1).
    PR_CERT_DEFAULTS0 x 00208Bitmaske:
    0 x 1 = Standardzertifikat für S/MIME.
    0 x 2 = Standard-Zertifikat für alle Formate.
    0 x 4 = Zertifikat mit Nachricht senden.
    PR_CERT_DISPLAY_NAME_A0x000BVariableAnzeigename der Einstellung in Outlook-Benutzeroberfläche (z. B. "Meine S/MIME-Einstellungen").
    PR_CERT_KEYEX_SHA1_HASH0x0022VariableBinäre Hash für Verschlüsselungszertifikat. Wenn Sie nur anmelden ermöglichen möchten, kann diese Eigenschaft weggelassen werden.
    PR_CERT_SIGN_SHA1_HASH0 x 0009VariableBinäre Hash für Signaturzertifikat.
    PR_CERT_ASYMETRIC_CAPS0 x 0002VariableASN1-codierte S/MIME-Funktionen BLOB.

    Beachten Sie, dass die Eigenschaften alle in einem fortlaufenden Datenstrom gespeichert werden.
  4. Verwenden Sie die IProfAdmin -Schnittstelle, um das MAPI-Profil zu öffnen.
  5. Öffnen Sie den GUID_Dilkie Profil Abschnitt, in dem die Sicherheitseinstellungen gespeichert werden. Definieren Sie GUID_Dilkie wie folgt:
    const GUID CDECL GUID_Dilkie = {  0x53bc2ec0, 0xd953, 0x11cd, {0x97, 0x52, 0x00, 0xaa, 0x00, 0x4a, 0xe4, 0x0e}  };
    					
  6. Schritt 5 können Sie eine IProfSect -Schnittstelle. Auf dieser Schnittstelle legen Sie die folgende Eigenschaft:
    #define PR_SECURITY_PROFILES PROP_TAG(PT_MV_BINARY, 0x355)
    						
    diese Eigenschaft ist eine mehrwertige binäre Eigenschaft. Setzen Sie den ersten binary-Wert auf die Eigenschaft mit dem BLOB, das Sie im Schritt 3 erstellt haben.
    LPPROFSECT          lpProfSect = NULL;
    SPropValue          SecProp;
    LPSPropValue        lpSecProp = &SecProp;
    SBinary             sbCert;
    LPBYTE              lpbCertBlob = NULL;
    ULONG               cbCertBlob = 0;
    
    // Do the work to generate lpbCertBlob (step 3) and open GUID_Dilkie profile section.
    
    // Set up property tag structure for PR_SECURITY_PROFILES.
    SecProp.ulPropTag = PR_SECURITY_PROFILES;
    SecProp.Value.MVbin.cValues = 1;
    SecProp.Value.MVbin.lpbin = &sbCert;
    SecProp.Value.MVbin.lpbin[0].cb = cbCertBlob;
    SecProp.Value.MVbin.lpbin[0].lpb = lpbCertBlob;
    
    // Set properties on the profile section.
    if (FAILED(hRes = lpProfSect->SetProps(1, lpSecProp, NULL)))
    {
        printf("Error setting property on profile.\n");
        goto error;
    }
    					

Eigenschaften

Artikel-ID: 312900 - Geändert am: Donnerstag, 25. August 2005 - Version: 2.5
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Outlook 2000
  • Microsoft Outlook 2002 Standard Edition
  • Microsoft Messaging Application Programming Interface
Keywords: 
kbmt kbhowto kbmsg KB312900 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 312900
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com