Bekannte Probleme mit Zertifikaten in BizTalk Server
In diesem Abschnitt werden bekannte Probleme bei der Verwaltung digitaler Zertifikate beschrieben, die mit BizTalk Server verwendet werden.
Allgemeine Zertifikatprobleme
Fehlende Konnektivität mit der Zertifikatsperrliste führt dazu, dass ein Zertifikat abgelehnt wird.
Dieses Problem beinhaltet den folgenden Fehler: "Es ist ein Authentifizierungsfehler aufgetreten. Die status der Zertifizierungsstelle , die das zertifikat ausgestellt hat, das zum Signieren der Nachricht verwendet wurde, ist unbekannt." Dieser Fehler kann auch auftreten, wenn das Signaturzertifikat gültig ist, wenn es unter MMC (mithilfe des BizTalk Server Benutzers) auf dem BizTalk Server angezeigt wird.
Diese Bedingung kann auftreten, wenn die Eigenschaft "Zertifikatsperrung überprüfen" für die S/MIME-Decoderkomponente in der Empfangspipeline aktiviert ist. Wenn diese Eigenschaft auf true festgelegt ist, versucht BizTalk Server, die Zertifikatsperrliste (Certificate Revocation List, CRL) abzufragen, um festzustellen, ob das eingehende Zertifikat widerrufen wurde. Es spielt keine Rolle, ob das Zertifikat selbst nicht widerrufen wird. Wenn BizTalk Server die entsprechende Zertifikatsperrliste aufgrund von Konnektivitätsproblemen nicht abfragen kann, akzeptiert sie das Zertifikat nicht. Um diesen Fehler zu beheben, zeigen Sie die Eigenschaften des Zertifikats an, indem Sie auf das verwendete Zertifikat doppelklicken. Auf der Registerkarte Details wird das Attribut "CRL-Verteilungspunkt" in der Feldliste angezeigt. Dieses Attribut sollte mehrere URLs enthalten, die auf die Zertifikatsperrliste auf ihrem Zertifizierungsstellenserver verweisen. Der BizTalk-Server muss auf eine dieser URLs zugreifen können, um die CRL abzurufen. Andernfalls schlägt die Sperrüberprüfung fehl, und der obige Fehler wird gepostet.
Der Zertifikatspeicher für andere Personen wird erst initialisiert, wenn darauf zugegriffen wird.
Dieses Problem betrifft den folgenden Zertifikatspeicherfehler, wenn Sie versuchen, Sende-/Empfangsports/-speicherorte mithilfe der BizTalk Server Administratorkonsole remote hinzuzufügen oder zu ändern: "Zertifikatspeicher konnte nicht geöffnet werden." und "Das System kann die angegebene Datei nicht finden. (System)".
Hinweis
Sie können diese Artefakte mithilfe der Verwaltungskonsole ändern, wenn Sie sich direkt beim BizTalk Server anmelden.
Auf einem neu installierten Computer wird der Zertifikatspeicher für andere Personen nur dann initialisiert, wenn Sie einmal darauf zugreifen. Während der Gruppenkonfiguration können Sie diesen Anderen Personen Zertifikatspeicher initialisieren, sodass dieser Fehler auf einem Computer, auf dem die Gruppenkonfiguration durchgeführt wurde, nicht angezeigt wird.
BizTalk Server unterstützt nur ein persönliches Zertifikat für jede BizTalk-Gruppe.
Das persönliche Zertifikat, das von der BizTalk-Gruppe verwendet wird, wird durch Festlegen des Fingerabdrucks des persönlichen Zertifikats in den BizTalk-Gruppeneigenschaften angegeben. Eine BizTalk-Gruppe kann ein Unternehmen, eine Abteilung, einen Hub oder eine andere Geschäftseinheit darstellen.
AS2-Zertifikatprobleme
Der AS2-Decoder überprüft nicht, ob ein Zertifikat auf dem Host oder für die Zielpartei konfiguriert ist.
Eine Nachricht wird vom AS2-Decoder entschlüsselt, sofern das private Zertifikat für diese Nachricht im Zertifikatspeicher konfiguriert ist. Vom AS2-Decoder wird jedoch nicht überprüft, ob das Entschlüsselungszertifikat dem auf dem Host konfigurierten Zertifikat entspricht. Die empfangene Nachricht kann mit mehreren Zertifikaten verschlüsselt werden.
BizTalk Server kann eine im Wire-Format gespeicherte Nachricht nicht entschlüsseln, wenn das Zertifikat ungültig ist.
Symptom
BizTalk Server kann eine eingehende AS2-Nachricht, die in der Nichtabstreitbarkeits-Datenbank im Sendeformat gespeichert wurde, nicht entschlüsseln.
Mögliche Ursache
Das zum Entschlüsseln der Nachricht erforderliche Zertifikat ist abgelaufen oder wurde gesperrt. Die Wahrscheinlichkeit, dass dies zutrifft, erhöht sich, wenn seit dem letzten Speichern der AS2-Nachricht in der Nichtabstreitbarkeits-Datenbank bereits eine bestimmte Zeit verstrichen ist. In diesem Fall können Sie möglicherweise nicht sofort auf ein für die Nachricht gültiges Zertifikat zugreifen.
Lösung
Rufen Sie ein gültiges Zertifikat zum Entschlüsseln der Nachricht ab.
Wenn eine AS2-Nachricht nicht entschlüsselt werden kann, kann das Problem durch erneutes Importieren des Zertifikats behoben werden.
Symptom
Der AS2-Decoder tritt bei dem Versuch, eine AS2-Nachricht zu entschlüsseln, eine Ausnahme auf, wodurch der folgende Fehler ausgelöst wird:
"The AS2 Decoder encountered an exception during processing. Details of the message and exception are as follows:
AS2-From:"PARTNER" AS2-To:"HOME" MessageID:"<137706.1178060412333@servername>"
MessageType: "unknown" Exception:"An error occurred when decrypting an AS2 message."
System.ArgumentNullException: Value cannot be null.
Parameter name: PayloadContentType
at Microsoft.BizTalk.Edi.Reporting.Common.Utilities.ValidateArgument(Object o,
String parameterName, Boolean isEmptyStringValidationRequired)
at Microsoft.BizTalk.EdiInt.Reporting.AS2MessageActivity.ValidateParameters()
at Microsoft.BizTalk.EdiInt.Reporting.AS2MessageActivity.Create()"
Mögliche Ursache
Das Zertifikat, das zum Entschlüsseln der AS2-Nachricht verwendet wird, muss in den persönlichen Speicher neu geladen werden.
Auflösung
Löschen Sie das vorhandene Zertifikat aus dem persönlichen Speicher, und importieren Sie das Zertifikat dann mithilfe des Zertifikatimport-Assistenten erneut in den persönlichen Speicher. Klicken Sie dazu mit der rechten Maustaste auf den Ordner Zertifikat unter dem persönlichen Speicher, zeigen Sie auf Alle Aufgaben, und klicken Sie dann auf Importieren.
Verwenden Sie die gleiche Anmeldung für den prozessinternen Host instance und den isolierten Host instance, um sicherzustellen, dass der persönliche Speicher erkannt wird.
Der persönliche Zertifikatspeicher ist nur für die Nachrichtenverarbeitung verfügbar, wenn das Benutzerprofil für den Benutzer geladen wird, dessen Anmeldeinformationen der Hostinstanz zugeordnet sind. Der persönliche Speicher wird für Signatur- und Entschlüsselungszertifikate verwendet (der private Schlüssel des Benutzers). Das Benutzerprofil wird standardmäßig für die gerade verarbeitete Hostinstanz geladen. Das Benutzerprofil wird jedoch nicht standardmäßig für die isolierte Hostinstanz geladen. Sie können das Benutzerprofil für den isolierten Host durch eine Anwendung laden lassen. Alternativ können Sie dieses Problem umgehen, indem Sie dieselben Anmeldedaten für die gerade verarbeitete Hostinstanz und die isolierte Hostinstanz verwenden.
Statt zu veranlassen, dass das Benutzerprofil von einer Anwendung geladen wird, können Sie auch einen leeren Dienst erstellen, um das Profil zu laden. Weitere Informationen zum Erstellen eines leeren Diensts finden Sie unter Vorgehensweise: Erstellen von Windows-Diensten (https://go.microsoft.com/fwlink/?LinkId=155149) in der Visual Studio-Hilfe.
Nachdem Sie den leeren Dienst zum Laden des Profils erstellt haben, fahren Sie wie folgt fort:
Klicken Sie auf Start und dann auf Ausführen , um das Dialogfeld Ausführen zu öffnen.
Geben Sie im Dialogfeld Ausführen den Namen service.msc ein, und drücken Sie die EINGABETASTE , um das MmC-Snap-In Dienste zu öffnen.
Öffnen Sie das Dialogfeld Eigenschaften für den von Ihnen erstellten Dienst. Klicken Sie mit der rechten Maustaste auf den Dienst, und wählen Sie Eigenschaften aus.
Klicken Sie auf die Registerkarte Anmelden, wählen Sie Dieses Konto aus, und geben Sie dann den Anmeldenamen ein, der für den isolierten Host instance verwendet wird.
Klicken Sie auf OK.
Starten Sie den Dienst manuell, um das Benutzerprofil für diesen Anmeldebenutzer zu laden.
Das Attribut "Schlüsselverwendung" eines Zertifikats muss der Zertifikatverwendung entsprechen
Die für den AS2-Transport verwendeten Zertifikate müssen über die erforderlichen Attribute für die gewünschte Verwendung verfügen. Für Signiervorgänge und für die Signaturüberprüfung muss das Attribut Schlüsselverwendung des Zertifikats Digitale Signatur lauten. Für die Ver- und Entschlüsselung muss das Attribut Schlüsselverwendung des Zertifikats entweder Datenverschlüsselung oder Schlüsselverschlüsselung lauten. Sie können das Attribut Schlüsselverwendung überprüfen, indem Sie auf das Zertifikat doppelklicken, im Dialogfeld Zertifikat auf die Registerkarte Details klicken und das Feld Schlüsselverwendung überprüfen.
Die Liste zum Auflösen von Zertifikaten wird für eine ausgehende MDN überprüft, wenn die Eigenschaft "AS2-To" für die Partei nicht festgelegt ist.
Die Überprüfung der Liste zum Auflösen von Zertifikaten wird in der Standardvereinbarung für eine ausgehende MDN ausgeführt. Wenn diese Überprüfung nicht ausgeführt werden soll, müssen Sie sicherstellen, dass die richtige "AS2-To"-Parteieigenschaft festgelegt ist, damit die empfangende Partei aufgelöst werden kann und die Parteieigenschaften ermittelt werden können. In diesem Fall wird die Standardvereinbarung, mit der die Überprüfung der Liste zum Auflösen von Zertifikaten ausgeführt wird, nicht verwendet. Außerdem müssen Sie in den AS2-Parteieigenschaften auf der Seite "Allgemein" die Eigenschaft "Zertifikatsperrliste überprüfen" deaktivieren.