Node.js -Anwendung für den Zugriff auf eine Integrationsservice über SSL konfigurieren

Wenn Sie die JavaScript-Client-API mit einer Node.js -Anwendung verwenden, können Sie die Daten sichern, die zwischen einem Integrationsservice und der JavaScript-Anwendung gesendet werden.

Vorbereitungen

Führen Sie die folgenden Schritte aus:
  1. Definieren Sie Ihre PKI-Infrastruktur.
  2. Konfigurieren Sie Integrationsservice für die Verwendung von SSL.
Siehe Integrationsservice sichern, der eine JavaScript-Client-API verwendet.

Informationen zu dieser Task

Führen Sie die folgenden Schritte aus, um die Daten zu sichern, die zwischen einer Integrationsservice -und einer Node.js -Anwendung gesendet werden:

Verfahren

  1. Fügen Sie je nach Konfigurationsanforderungen die folgenden Codezeilen zu Ihrer JavaScript-Anwendung hinzu; hierbei gilt Folgendes:
    Servicename
    Gibt den Namen Ihrer Integrationsservicean
    CA-Zertifikat
    Gibt den Pfad zum CA-Zertifikat an.
    Clientschlüssel
    Gibt den Pfad zum Clientschlüssel an (privater Schlüssel für Ihren Node.js-Client).
    Clientzertifikat
    Gibt den Pfad zum Clientzertifikat an (Zertifikat des privaten Schlüssels für Ihren Node.js-Client).
    Clientzertifikat-Kennwort
    Gibt das Kennwort für das Clientzertifikat an.
    Bedingung Fügen Sie die folgenden Codezeilen hinzu, bevor Sie Integrationsservice aufrufen. Kommentare
    Alle HTTPS-Konfigurationen. IBMIntegration.service_name.IBMContext.protocol = "https";  
    Der Node.js-Client muss die Berechtigungsnachweise prüfen, die vom Server gesendet wurden. IBMIntegration.service_name.IBMContext.rejectUnauthorized = false; Diese Zeile ist ebenfalls erforderlich, wenn ein Server ein selbst signiertes Zertifikat oder ein CA-signiertes Serverzertifikat bereitstellt, bei dem der allgemeine Name des Zertifikats nicht mit dem Domänennamen oder Hostnamen des Servers übereinstimmt.
    Der Node.js-Client muss das vom Server gesendet CA-signierte Zertifikat validieren. IBMIntegration.service_name.IBMContext.rejectUnauthorized = true;

    IBMIntegration.service_name.IBMContext.cacert = "ca_cert";

    Der Node.js-Client validiert das CA-signierte Zertifikat, indem er es anhand des öffentlichen Zertifikats der Zertifizierungsstelle prüft.
    Die Serverkonfiguration erfordert eine Clientauthentifizierung. IBMIntegration.service_name.IBMContext.key = "client_key";

    IBMIntegration.service_name.IBMContext.cert = "client_cert";

     
    Das Clientzertifikat verwendet ein Kennwort. IBMIntegration.service_name.IBMContext.certpass = "client_cert_password";  
    Sie können beispielsweise die folgenden Eigenschaften in einer Node.js -Clientanwendung festlegen, die ein CA-signiertes Serverzertifikat und ein CA-signiertes Clientzertifikat mit einem Kennwort verwendet, um eine Integrationsservice mit dem NamenTestService1, wobei die Zertifikate und Schlüssel im Fenster -Ordner C:\Zertifikategespeichert werden.
      IBMIntegration.TestService1.IBMContext.protocol = "https";
      IBMIntegration.TestService1.IBMContext.rejectUnauthorized = true;  
      IBMIntegration.TestService1.IBMContext.cacert   = "C:\\certs\\ca.crt";
      IBMIntegration.TestService1.IBMContext.key      = "C:\\certs\\client.key";
      IBMIntegration.TestService1.IBMContext.cert     = "C:\\certs\\client.crt";
      IBMIntegration.TestService1.IBMContext.certpass = "secret";
    
  2. Ändern Sie die Ihrer Integrationsservice zugeordnete Portnummer in den HTTPS-Port.
    Der HTTPS-Standardport ist 7083 für den Integrationsknoten -Listener und 7843 für den eingebetteten Listener.
    Beispiel:
    IBMIntegration.TestService1.IBMContext.hostname = "localhost";
    IBMIntegration.TestService1.IBMContext.port = 7843;

Ergebnisse

Sie haben die Node.js -Clientanwendung für den Zugriff auf Integrationsservice über SSL konfiguriert.