Loading

Verwenden des in Ihrer Community-Domäne vorhandenen HTTPS-Zertifikats

Veröffentlichungsdatum: Jan 22, 2020
Beschreibung

Einführung

Salesforce Community Cloud unterstützt die Ausführung jeder Community in Ihrer Organisation unter einer benutzerdefinierten Domäne (z. B. "community.meinunternehmen.com" anstelle von "meinunternehmen.force.com"). Zum Gewährleisten der Sicherheit erfolgen Kommunikationen zwischen den Browsern Ihrer Benutzer und den Communities in Ihrer Organisation über HTTPS (z. B. HTTP über TLS). Wenn Sie Ihre Community unter einer benutzerdefinierten Domäne ausführen, müssen Sie ein HTTPS-Zertifikat hochladen, das mit der benutzerdefinierten Domäne Ihrer Community übereinstimmt. Mit HTTPS-Zertifikaten wird die Echtheit Ihrer Community-Domäne öffentlich bestätigt. Es ist zudem entscheidend, sich mit den Details Ihres Zertifikats vertraut zu machen, bevor Sie es hochladen.

 

Es ist möglich, ein neues HTTPS-Zertifikat anzufordern oder bestimmte vorhandene Zertifikate in der Domäne Ihrer Community erneut zu verwenden. Im Allgemeinen gibt es zwei Optionen:

Meine Community benötigt ein neues Zertifikat.

Ist für Ihre Community ein neues HTTPS-Zertifikat erforderlich, können Sie die in den Anweisungen zu Hilfe und Schulung beschriebenen Anweisungen durchführen, um eine neue Zertifikatssignieranforderung zu konfigurieren und herunterzuladen, um sie an ihre Zertifizierungsstelle zu übergeben.

Ich verfüge über ein vorhandenes Zertifikat für meine Community-Domäne.

Wenn Ihr Unternehmen bereits über ein Zertifikat verfügt, das mit der Domäne übereinstimmt, unter der Ihre Community ausgeführt wird, können Sie die unten aufgeführten Schritte durchführen, um dieses Zertifikat in eine JKS-Datei (Java Keystore) zu importieren, um sie für den Upload in Ihre Organisation vorzubereiten.
 

Sie müssen sicherstellen, dass Ihr Zertifikat mit der Domäne übereinstimmt, unter der Ihre Community ausgeführt wird. Beispiel:

COMMUNITY-DOMÄNE: community.meinunternehmen.com

PLATZHALTERZERTIFIKAT: *.meinunternehmen.com

NICHT-PLATZHALTERZERTIFIKAT: community.meinunternehmen.com


Sie sind nicht sicher, welche Option verwendet werden soll? Wenden Sie sich an Ihr IT-Team, um zu bestimmen, ob ein Zertifikat vorhanden ist oder ob Sie ein neues benötigen.

Wie können vorhandene Zertifikate und private Schlüssel mit einer JKS-Datei (Java Keystore) in Salesforce importiert werden?


Sie haben mehrere Möglichkeiten, um eine vorhandene Zertifikatskette und einen privaten Schlüssel in Salesforce zu importieren. Diese basieren auf den Formaten der Zertifikate und des privaten Schlüssels, die importiert werden sollen. Salesforce unterstützt das Java Keystore-Dateiformat, aber nicht alle Systeme exportieren dieses Dateiformat direkt. Zum Glück können Sie mit dem Befehl "keytool" im Java Development Kit allgemeine Zertifikatsdateiformate in Java Keystore-Dateien umwandeln.

Ein gängiges Format zum Speichern einer Zertifikatskette – das Server- oder Client-Zertifikat zusammen mit den zwischengeschalteten Zertifikaten in seiner Signaturkette – und des privaten Schlüssels ihres Server- oder Client-Zertifikats ist das PKCS#12-Format, das diese Elemente in einer Datei enthält. Ein weiteres mögliches Format ist eine Sammlung einzelner Zertifikatsdateien und eine separate Datei für private Schlüssel. In den folgenden Abschnitten werden diese zwei Konvertierungsszenarien beschrieben. Nachdem die Datei in eine Java Keystore-Datei umgewandelt wurde, kann sie in Salesforce importiert werden.
 

PKCS#12-Datei (.p12, .pfx)

Das Dateiformat PKCS#12 speichert eine Zertifikatskette und einen privaten Schlüssel in einer Datei auf geeignete Weise und wird allgemein zum Sichern von Zertifikaten verwendet. Über die Zertifikatsverwaltung in Windows und Windows Server kann der Export in dieses Dateiformat erfolgen. Der private Schlüssel in einer PKCS#12-Datei wird mit einer Passphrase verschlüsselt. Hier finden Sie ein Referenzbild.

Bevor Sie den Vorgang fortsetzen, müssen Sie das Java Development Kit von Oracle installieren, falls Sie Java noch nicht installiert haben. Laden Sie die entsprechende Version für Ihr System herunter und installieren Sie sie. Stellen Sie sicher, dass in Ihrer PATH-Umgebungsvariable auf "keytool" oder "keytool.exe" verwiesen wird. Alternativ können Sie den Path zum Befehl "keytool" oder "keytool.exe" auch voll qualifizieren, wenn Sie die folgenden Befehle ausführen.

Wenn Sie eine PKCS#12-Datei in eine Java Keystore-Datei umwandeln möchten, muss der für das Zertifikat in der PKCS#12-Datei verwendete Quellalias abgerufen werden. Führen Sie zum Abrufen dieser Informationen den folgenden Befehl für Ihre PKCS#12-Datei aus. Ersetzen Sie dabei "pkcs12file.pfx" durch den Namen Ihrer PKCS#12-Datei. Sie werden aufgefordert, die Verschlüsselungspassphrase des privaten Schlüssels der PKCS#12-Datei einzugeben. Diese wurde bei der Erstellung der PKCS#12-Datei festgelegt.
 

keytool -list -keystore pkcs12file.pfx -storetype pkcs12


Die Ausgabe lautet wie folgt. Beachten Sie den Alias, der im Folgenden in Fettdruck hervorgehoben ist. Der Aliaswert in diesem Beispiel lautet: le-384927abc3839f-829278-ee12. Der in Ihrer Datei verwendete Wert kann anders und auch einfach die Zahl 1 sein.
 

Keystore type: PKCS12
Keystore provider: SunJSSE
 
Your keystore contains 1 entry
                                                                                                      
le-384927abc3839f-829278-ee12, Jan 29, 2016, PrivateKeyEntry,
Certificate fingerprint (SHA1): 99:68:C4:80:45:AF:9F:01:40:C5:BD:FB:0B:AB:CC:F0:99:9B:91:9D


Mit dem Alias kann die PKCS#12-Datei mit dem folgenden Befehl in eine Java Keystore-Datei umgewandelt werden. Ersetzen Sie "pkcs12file.p12" durch den Namen Ihrer PKCS#12-Datei. Ersetzen Sie "keystorefile.jks" durch den Namen, der für die Java Keystore-Datei verwendet werden soll. Ersetzen Sie "cert_dev_name_in_salesforce" durch den Entwicklernamen, der für das Zertifikat in Salesforce verwendet werden soll. Der Entwicklername ist der Name, der im Apex-Code oder in der Metadaten-API verwendet werden kann, um auf dieses Zertifikat zu verweisen. Der Entwicklername muss mit einem Buchstaben beginnen und darf nur aus alphanumerischen Zeichen oder nicht aufeinanderfolgenden Unterstrichen bestehen. Dieser Befehl fordert Sie zur Eingabe einer Passphrase auf, die zum Verschlüsseln des privaten Schlüssels in der Java Keystore-Datei verwendet werden soll, und fragt Sie nach der Passphrase der zu konvertierenden PKCS#12-Datei.
 

keytool -importkeystore -srckeystore pkcs12file.p12 -destkeystore
keystorefile.jks -srcstoretype pkcs12 -deststoretype jks -destalias
cert_dev_name_in_salesforce -srcalias le-384927abc3839f-829278-ee12


Nachdem der Befehl erfolgreich ausgeführt wurde, kann die Datei "keystorefile.jks" über die auf der Setup-Seite "Zertifikat- und Schlüsselverwaltung" befindliche Schaltfläche "Aus Schlüsselspeicher importieren" in Salesforce importiert werden. Beim Importieren der Java Keystore-Datei sollte das importierte Zertifikat mit dem Zielaliasnamen in der Liste der Zertifikate angezeigt werden.

Navigieren Sie zu Setup | Sicherheitssteuerungen | Zertifikat- und Schlüsselverwaltung | Aus Schlüsselspeicher importieren, um die JKS-Datei in Salesforce zu importieren.
 
 

Einzelne PEM- oder DER-Dateien

Die PEM- und DER-Dateiformate speichern Zertifikate und private Schlüssel in der Regel in getrennten Dateien. Beim textbasierten PEM-Format können die Zertifikatskette und der private Schlüssel optional in einer verketteten Datei vorhanden sein. Daraus ergibt sich eine Vielzahl von möglichen Eingabekonfigurationen bei der Arbeit mit PEM- und DER-Dateien. Allgemein gilt, es ist am einfachsten mit PEM-Dateien zu arbeiten. Zudem ist es möglich, DER-Dateien in PEM-Dateien zu konvertieren, um sie weitergehend zu verarbeiten.

Bevor Sie den Vorgang fortsetzen, müssen Sie das Java Development Kit von Oracle installieren, falls Sie Java noch nicht installiert haben. Laden Sie die entsprechende Version für Ihr System herunter und installieren Sie sie. Stellen Sie sicher, dass in Ihrer PATH-Umgebungsvariable auf "keytool" oder "keytool.exe" verwiesen wird. Alternativ können Sie den Path zum Befehl "keytool" oder "keytool.exe" auch voll qualifizieren, wenn Sie die folgenden Befehle ausführen.

Wenn Sie OpenSSL nicht installiert haben, müssen Sie OpenSSL für diese Schritte installieren. OpenSSL ist in Mac OS X und Linux integriert, nicht aber in Windows. Bei Cygwin handelt es sich um eine der Möglichkeiten, wie Sie OpenSSL unter Windows installieren können.

Wenn mindestens eine der Eingabedateien das DER-Format verwendet, müssen Sie diese in das PEM-Format konvertieren. Es kann im Allgemeinen bestimmt werden, ob ein Eingabezertifikat oder eine Datei für private Schlüssel im DER-Format vorliegt. Versuchen Sie dazu, diese Datei in einem Texteditor zu öffnen. Wenn sie aus normalen Textzeichen besteht und die Ausdrücke "BEGIN CERTIFICATE" oder "PRIVATE KEY" enthält, liegt sie bereits im textbasierten PEM-Format vor. Wenn es ein scheinbar zufälliges Durcheinander von seltsamen Zeichen ist, liegt sie wahrscheinlich im DER-Format vor.

Führen Sie den folgenden OpenSSL-Befehl aus, um eine DER-Zertifikatsdatei in eine PEM-Datei umzuwandeln. Ersetzen Sie "der-certificate.crt" durch den Namen Ihrer DER-Zertifikatsdatei und "pem-certificate.crt" durch den Namen der gewünschten Ausgabedatei.
 

openssl x509 -in der-certificate.crt -out pem-certificate.crt -inform der -outform pem


Führen Sie den folgenden OpenSSL-Befehl aus, um eine DER-Datei für private Schlüssel in eine PEM-Datei umzuwandeln. Ersetzen Sie "der-privatekey.key" durch den Namen Ihrer DER-Datei für private Schlüssel und "pem-privatekey.key" durch den Namen der gewünschten Ausgabedatei.
 

openssl rsa -in der-privatekey.key -out pem-privatekey.key -inform der -outform pem


Wenn Sie über mehrere zwischengeschaltete Zertifikate verfügen, sollten Sie diese zwischengeschalteten PEM-Zertifikatsdateien mit einem Texteditor in einer textbasierten PEM-Datei miteinander verketten. In der folgenden Anweisung wird die Datei als "intermediate-chain.crt" bezeichnet.

Da die Zertifikatskette und der private Schlüssel als PEM-Dateien verfügbar sind, können Sie diese mittels OpenSSL in eine PKCS#12-Datei umwandeln. Führen Sie den folgenden Befehl aus, um diese in eine PKCS#12-Datei umzuwandeln. Ersetzen Sie "pem-certificate.crt" durch den Dateinamen des PEM-formatierten Server- oder Client-Zertifikats. Ersetzen Sie "pem-privatekey.key" durch den PEM-formatierten privaten Schlüssel dieses Server- oder Client-Zertifikats. Ersetzen Sie "intermediate-chain.crt" durch die PEM-formatierte Datei, die alle zwischengeschalteten Zertifikate in der Signaturkette im Client- oder Serverzertifikat enthält.

 
openssl pkcs12 -in pem-certificate.crt -inkey pem-privatekey.key -certfile intermediate-chain.crt -export -out pkcs12file.p12

Die ausgegebene Datei "pkcs12file.p12" kann nun mit dem folgenden Befehl in eine Java Keystore-Datei umgewandelt werden. Ersetzen Sie "pkcs12file.p12" durch den Namen Ihrer PKCS#12-Datei. Ersetzen Sie "keystorefile.jks" durch den Namen, der für die Java Keystore-Datei verwendet werden soll. Ersetzen Sie "cert_dev_name_in_salesforce" durch den Entwicklernamen, der für das Zertifikat in Salesforce verwendet werden soll. Der Entwicklername ist der Name, der im Apex-Code oder in der Metadaten-API verwendet werden kann, um auf dieses Zertifikat zu verweisen. Der Entwicklername muss mit einem Buchstaben beginnen und darf nur aus alphanumerischen Zeichen oder nicht aufeinanderfolgenden Unterstrichen bestehen. Dieser Befehl fordert Sie zur Eingabe einer Passphrase auf, die zum Verschlüsseln des privaten Schlüssels in der Java Keystore-Datei verwendet werden soll, und fragt Sie nach der Passphrase der zu konvertierenden PKCS#12-Datei.
keytool -importkeystore -srckeystore pkcs12file.p12 -destkeystore keystorefile.jks -srcstoretype pkcs12 -deststoretype jks -destalias cert_dev_name_in_salesforce -srcalias 1

Nachdem der Befehl erfolgreich ausgeführt wurde, kann die Datei "keystorefile.jks" über die auf der Setup-Seite "Zertifikat- und Schlüsselverwaltung" befindliche Schaltfläche "Aus Schlüsselspeicher importieren" in Salesforce importiert werden. Beim Importieren der Java Keystore-Datei sollte das importierte Zertifikat mit dem Zielaliasnamen in der Liste der Zertifikate angezeigt werden.

Weitere Informationen


Java Keystore-Datei

Eine Java Keystore-Datei wird möglicherweise unverändert importiert. Lediglich die "PrivateKeyEntry"-Einträge im Schlüsselspeicher werden importiert. Jeder Eintrag dieses Typs enthält eine Zertifikatskette und einen privaten Schlüssel. Andere Eintragstypen, etwa "trustedCertEntry", werden ignoriert.

Der Name eines "PrivateKeyEntry" wird zum Entwicklernamen des importierten Zertifikats und kann im Apex-Code oder in der Metadaten-API verwendet werden, um auf dieses Zertifikat zu verweisen. Der Entwicklername muss mit einem Buchstaben beginnen und darf nur aus alphanumerischen Zeichen oder nicht aufeinanderfolgenden Unterstrichen bestehen.

Navigieren Sie zu Setup | Sicherheitssteuerungen | Zertifikat- und Schlüsselverwaltung | Aus Schlüsselspeicher importieren, um die JKS-Datei in Salesforce zu importieren.

Lösung

GAA: Entwickler

 FA: API/Integration

Nummer des Knowledge-Artikels

000387916

 
Laden
Salesforce Help | Article