Datenverkehr am Connectorendpunkt authentifizieren

Der gesamte Endpunktdatenverkehr wird standardmäßig verschlüsselt. Sie können eigene Zertifikate für die Endpunkte TLS oder HTTPS bereitstellen, um die Quell- und Zielauthentifizierung für eine oder beide Verbindungen zu implementieren.

Wenn Sie keine Endpunktauthentifizierungseinstellungen konfigurieren, wird der Endpunktverkehr zwar trotzdem verschlüsselt, Connector fungiert jedoch nur als Transitdienst. Dies gilt auch für Endpunkte, die das Protokoll TCP oder HTTP verwenden. Bei Endpunkten mit den Protokoll- TLS oder HTTPS wird der Datenverkehr über den Connector standardmäßig versuchen, eine einfache Authentifizierung zu verwenden, wobei auf die bekannten integrierten Zertifikate zurückgegriffen wird, die unter Umständen ausreichend sind oder auch nicht.

Sehen Sie sich die folgenden Authentifizierungsoptionen an.

Einfache Authentifizierung zwischen dem Connector-Dienst und dem Ziel
Der Zielserver authentifiziert sich beim Connector-Dienst. Um eine einfache Authentifizierung mit dem Ziel einzurichten, muss Ihr Endpunkt das Zielprotokoll TLS verwenden. Wenn das Serverzertifikat des Ziels nicht von einer bekannten Zertifizierungsstelle signiert ist oder nicht selbst signiert ist, müssen Sie ein vertrauenswürdiges CA-Zertifikat oder eine Kette konfigurieren, um das Serverzertifikat des Ziels zu validieren.
Einfache Authentifizierung mit dem Connector-Dienst
Der Connector-Server authentifiziert sich gegenüber der Quelle. Um eine einfache Authentifizierung mit dem Connector-Dienst einzurichten, müssen Sie das Quellprotokoll des Endpunkts auf TLS oder HTTPS festlegen. Die Zertifikatskonfiguration hängt dann vom Zieltyp des Endpunkts ab.
Für Endpunkte mit dem Zieltyp "Cloud" müssen Sie ein Serverzertifikat und einen Schlüssel bereitstellen, die der Connector-Dienst zur Authentifizierung bei der Quelle verwendet. Beachten Sie, dass Sie, wenn Ihr Serverzertifikat nicht von einer bekannten Signierstelle signiert ist, auch ein CA-Root-Zertifikat in Ihrer Quellumgebung installieren müssen.
Für Endpunkte mit dem Zieltyp „Standort“ müssen Sie keine Connector-Serverzertifikate konfigurieren, da Connector sein eigenes Zertifikat verwendet, das von DigiCert. DigiCert Zertifikate sind kompatibel mit allen modernen Browsern und Plattformen, aber wenn Ihre Quelle kein Stamm-CA-Zertifikat hat, müssen Sie herunterladen einer von DigiCert und installieren Sie es in Ihrer Quellumgebung.
Gegenseitige Authentifizierung zwischen dem Connector-Dienst und dem Ziel
Bei der gegenseitigen Authentifizierung authentifiziert sich der Zielserver gegenüber dem Connector-Dienst und der Connector-Dienst muss sich gegenüber dem Ziel authentifizieren. Um eine gegenseitige Authentifizierung zwischen dem Connector-Dienst und dem Zielserver einzurichten, müssen Sie die Authentifizierung des Connector-Dienstes auf die gleiche Weise konfigurieren wie bei der einfachen Zielauthentifizierung. Sie müssen jedoch auch ein Client-Zertifikat und einen Schlüssel bereitstellen, die der Connector-Dienst für die Authentifizierung beim Ziel verwendet.
Gegenseitige Authentifizierung zwischen dem Quell- und dem Verbindungsdienst
Bei der gegenseitigen Authentifizierung authentifiziert sich der Connector-Dienst gegenüber der Quelle und die Quelle muss sich gegenüber dem Connector-Dienst authentifizieren. Um eine gegenseitige Authentifizierung zwischen dem Quell- und dem Connector-Dienst einzurichten, müssen Sie die Connector-Server-Authentifizierung auf die gleiche Weise konfigurieren wie im Fall der einfachen Quellenauthentifizierung. Sie müssen jedoch auch ein CA-Zertifikat konfigurieren, das der Connector-Dienst zur Validierung des Client-Zertifikats der Quelle verwendet.
Gegenseitige Authentifizierung zwischen der Quelle und dem Connector-Dienst sowie dem Connector und dem Zielserver.
Anforderungen an den Connector-Service und den Zielserver werden authentifiziert. Zwei TLS-Handshakes müssen überprüft werden, bevor der Datenverkehr zugelassen wird. Erstellen Sie für diese Konfiguration einen Endpunkt mit dem Quellprotokoll TLS oder HTTPS und dem Zielprotokoll TLS. Geben Sie dann die Zertifikate an, die für die gegenseitige Authentifizierung von Quelle und Ziel benötigt werden.

Wenn Sie Ihre eigenen Zertifikate für die Endpunktauthentifizierung bereitstellen möchten, sind Sie für die Rotation der Zertifikate und die Verwaltung des Ablaufdatums verantwortlich. Wenn Ihr Zertifikat abläuft, kommt es zu Störungen im Datenverkehr.

Authentifizierung in der Befehlszeilenschnittstelle einrichten

Die Optionen source beziehen sich auf den Handshake zwischen der Quelle und dem Connector-Dienst im Rahmen des TLS. Die Optionen dest beziehen sich auf den Handshake TLS zwischen dem Connector-Dienst und Ihrem Zielserver. Sie können Zertifikate für eine oder beide Verbindungen bereitstellen. Nicht angegebene Einstellungen werden auf ihre Standardwerte gesetzt.

Der ibmcloud sat endpoint authn Der Befehl wird nur zum Festlegen von Zertifikaten für den Connector-Dienst verwendet, der auf der Quellseite als Server und auf der Zielseite als Client fungiert. Möglicherweise müssen Sie auch Zertifikate für die Quelle (Client) und das Ziel (Server) in ihren jeweiligen Anwendungsumgebungen konfigurieren.

Sehen Sie sich die folgenden Beispielszenarien an.

Einfache Authentifizierung zwischen dem Connector-Service und dem Ziel

  1. Erstellen Sie einen HTTPS Endpunkt zu einem HTTPS Server.

    ibmcloud sat endpoint create
      --connector-id ID \
      --name myEndpoint \
      --dest-hostname example.com \
      --dest-port 443 \
      --source-protocol HTTPS \
      --dest-type location
    
  2. Konfigurieren Sie eine einfache TLS mit dem Zielserver.

    In diesem Beispiel wird das Zertifikat der anerkannten Zertifizierungsstelle zur Validierung des Zertifikats des Zielservers bereitgestellt.

    ibmcloud sat endpoint authn set \
      --connector-id ID \
      --endpoint myEndpoint \
      --dest-tls-mode simple \
      --dest-ca-cert-file /path/to/serverCACerts.pem
    
  3. Bevor Ihre Zertifikate ablaufen, müssen Sie sie turnusmäßig wechseln, indem Sie die vorhandenen Authentifizierungszertifikate durch neue ersetzen. Es werden nur die von Ihnen angegebenen Zertifikate ersetzt.

    ibmcloud sat endpoint authn rotate \
      --connector-id ID \
      --endpoint myEndpoint \
      --dest-ca-cert-file /path/to/serverCACerts.pem
    

Einfache Authentifizierung mit dem Connector-Dienst

Im Gegensatz zu den meisten Konfigurationen, die mit einem Endpunkt --dest-type von entweder location oder cloud arbeiten können, muss bei dieser Konfiguration --dest-type cloud verwendet werden, da das Festlegen von Quellzertifikaten für Standort-Ziel-Endpunkte nicht unterstützt wird.

  1. Erstellen Sie einen HTTPS Endpunkt zu einem HTTP Server.

    ibmcloud sat endpoint create \
      --connector-id ID \
      --name myEndpoint \
      --dest-hostname example.com \
      --dest-port 80 \
      --dest-protocol TCP \
      --source-protocol HTTPS \
      --dest-type cloud
    
  2. Konfigurieren Sie eine einfache TLS zwischen der Quelle und dem Connector-Dienst.

    In diesem Beispiel wird das Serverzertifikat für den Connector-Dienst zur Authentifizierung bei der Quelle bereitgestellt.

    ibmcloud sat endpoint authn set \
      --connector-id ID \
      --endpoint myEndpoint \
      --source-tls-mode simple \
      --source-cert-file /path/to/serverCertificate.pem \
      --source-key-file /path/to/serverKey.pem
    
  3. Bevor Ihre Zertifikate ablaufen, müssen Sie sie turnusmäßig wechseln, indem Sie die vorhandenen Authentifizierungszertifikate durch neue ersetzen. Es werden nur die von Ihnen angegebenen Zertifikate ersetzt.

    ibmcloud sat endpoint authn rotate \
      --connector-id ID \
      --endpoint myEndpoint \
      --source-cert-file /path/to/serverCertificate.pem \
      --source-key-file /path/to/serverKey.pem
    

Gegenseitige Authentifizierung zwischen dem Connector-Service und dem Ziel

  1. Erstellen Sie einen HTTP Endpunkt zu einem HTTPS Server.

    ibmcloud sat endpoint create \
      --connector-id ID \
      --name myEndpoint \
      --dest-hostname example.com \
      --dest-port 443 \
      --dest-protocol TLS \
      --source-protocol HTTP \
      --dest-type location
    
  2. Richten Sie die gegenseitige TLS mit dem Zielserver ein.

    Ähnlich wie im Beispiel der einfachen Authentifizierung validiert --dest-ca-cert-file das Zertifikat des Zielservers. Zur Durchführung des gegenseitigen Handshakes TLS --dest-key-file werden --dest-cert-file und verwendet.

    ibmcloud sat endpoint authn set \
      --connector-id ID \
      --endpoint myEndpoint \
      --dest-tls-mode mutual \
      --dest-cert-file /path/to/clientCertificate.pem \
      --dest-key-file /path/to/clientKey.pem \
      --dest-ca-cert-file /path/to/serverCACerts.pem
    
  3. Bevor Ihre Zertifikate ablaufen, müssen Sie sie turnusmäßig wechseln, indem Sie die vorhandenen Authentifizierungszertifikate durch neue ersetzen. Es werden nur die von Ihnen angegebenen Zertifikate ersetzt.

    ibmcloud sat endpoint authn rotate \
      --connector-id ID \
      --endpoint myEndpoint \
      --dest-cert-file /path/to/clientCertificate.pem \
      --dest-key-file /path/to/clientKey.pem \
      --dest-ca-cert-file /path/to/serverCACerts.pem
    

Gegenseitige Authentifizierung zwischen der Quelle und dem Connector-Service

Im Gegensatz zu den meisten Konfigurationen, die mit einem Endpunkt --dest-type von entweder location oder cloud arbeiten können, muss bei dieser Konfiguration --dest-type cloud verwendet werden, da das Festlegen von Quellzertifikaten für Standort-Ziel-Endpunkte nicht unterstützt wird.

  1. Erstellen Sie einen HTTPS Endpunkt zu einem HTTP Server.

    ibmcloud sat endpoint create \
      --connector-id ID \
      --name myEndpoint \
      --dest-hostname example.com \
      --dest-port 80 \
      --dest-protocol TCP \
      --source-protocol HTTPS \
      --dest-type cloud
    
  2. Richten Sie die gegenseitige TLS zwischen der Quelle und dem Connector-Dienst ein.

    In diesem Beispiel wird das Serverzertifikat für den Connector-Dienst zur Authentifizierung bei der Quelle und das Zertifikat der vertrauenswürdigen CA zur Validierung des Client-Zertifikats der Quelle bereitgestellt.

    ibmcloud sat endpoint authn set \
      --connector-id ID \
      --endpoint myEndpoint \
      --source-tls-mode mutual \
      --source-cert-file /path/to/serverCertificate.pem \
      --source-key-file /path/to/serverKey.pem \
      --source-ca-cert-file /path/to/clientCACerts.pem
    
  3. Bevor Ihre Zertifikate ablaufen, müssen Sie sie turnusmäßig wechseln, indem Sie die vorhandenen Authentifizierungszertifikate durch neue ersetzen. Es werden nur die von Ihnen angegebenen Zertifikate ersetzt.

    ibmcloud sat endpoint authn rotate \
      --connector-id ID \
      --endpoint myEndpoint \
      --source-cert-file /path/to/serverCertificate.pem \
      --source-key-file /path/to/serverKey.pem \
      --source-ca-cert-file /path/to/clientCACerts.pem
    

Gegenseitige Authentifizierung an Quelle und Ziel

  1. Erstellen Sie einen HTTPS Endpunkt zu einem HTTPS Server.

    ibmcloud sat endpoint create \
      --connector-id ID \
      --name myEndpoint \
      --dest-hostname example.com \
      --dest-port 443 \
      --source-protocol HTTPS \
      --dest-type location
    
  2. Konfigurieren Sie die gegenseitige TLS-Authentifizierung sowohl auf dem Quell- als auch auf dem Zielserver.

    Dieses Beispiel ermöglicht die gegenseitige Authentifizierung zwischen der Quelle und dem Connector-Service sowie zwischen dem Connector-Service und dem Zielserver.

    ibmcloud sat endpoint authn set \
      --connector-id ID \
      --endpoint myEndpoint \
      --source-tls-mode mutual \
      --source-ca-cert-file /path/to/clientCACerts.pem \
      --dest-tls-mode mutual \
      --dest-cert-file /path/to/clientCertificate.pem \
      --dest-key-file /path/to/clientKey.pem \
      --dest-ca-cert-file /path/to/serverCACerts.pem
    
  3. Bevor Ihre Zertifikate ablaufen, müssen Sie sie turnusmäßig wechseln, indem Sie die vorhandenen Authentifizierungszertifikate durch neue ersetzen. Es werden nur die von Ihnen angegebenen Zertifikate ersetzt.

    ibmcloud sat endpoint authn rotate \
      --connector-id ID \
      --endpoint myEndpoint \
      --source-ca-cert-file /path/to/clientCACerts.pem \
      --dest-cert-file /path/to/clientCertificate.pem \
      --dest-key-file /path/to/clientKey.pem \
      --dest-ca-cert-file /path/to/serverCACerts.pem
    

Anzeige der Authentifizierungseinstellungen

Der Befehl ibmcloud sat endpoint authn get kann verwendet werden, um die konfigurierten Authentifizierungseinstellungen für Ihren Endpunkt anzuzeigen. Beispielsweise kann der folgende Befehl verwendet werden, um die aktuell konfigurierten TLS-Modi und Zertifikate für den Endpunkt auszugeben myEndpoint.

ibmcloud sat endpoint authn get --connector-id ID --endpoint myEndpoint

Unter der Annahme, dass myEndpoint wie im Beispiel der gegenseitigen Authentifizierung von Quelle und Ziel konfiguriert ist, wird dieser Befehl eine Ausgabe ähnlich der folgenden erzeugen.

OK
Destination TLS Mode:          mutual
Destination Certificate:       /path/to/clientCertificate.pem
Destination Key:               /path/to/clientKey.pem
Destination CA Certificates:   /path/to/serverCACerts.pem
Source TLS Mode:               mutual
Source Certificate:            -
Source Key:                    -
Source CA Certificates:        /path/to/clientCACerts.pem

Zertifikate entfernen

Der Befehl ibmcloud sat endpoint authn set kann verwendet werden, um ein oder mehrere vorhandene Zertifikate zu entfernen. Mit dem Befehl set werden alle Zertifikate entfernt, die nicht in den Optionen des Befehls angegeben sind. Der folgende Befehl entfernt zum Beispiel alle derzeit konfigurierten Zertifikate für den Endpunkt myEndpoint.

ibmcloud sat endpoint authn set --connector-id ID --endpoint myEndpoint

Wenn Sie nur einige Zertifikate entfernen und andere unverändert lassen wollen, stellen Sie sicher, dass Sie Optionen mit den aktuellen Werten der anderen Zertifikate übergeben. Der folgende Befehl kann beispielsweise verwendet werden, um source Zertifikate zu entfernen, die derzeit eingestellt sind, wobei die dest Zertifikate unverändert bleiben.

ibmcloud sat endpoint authn set \
  --connector-id ID \
  --endpoint myEndpoint \
  --dest-tls-mode mutual \
  --dest-cert-file /path/to/current/clientCertificate.pem \
  --dest-key-file /path/to/current/clientKey.pem \
  --dest-ca-cert-file /path/to/current/serverCACerts.pem