Konfiguration des Serverzertifikats für OCSP-Heftung - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfiguration des Serverzertifikats für OCSP-Heftung

AWS IoT Core unterstützt das Online Certificate Status Protocol (OCSP) -Heften für Serverzertifikate, auch bekannt als Serverzertifikat-OCSP-Heftung oder OCSP-Heftung. Dabei handelt es sich um einen Sicherheitsmechanismus, der verwendet wird, um den Sperrstatus des Serverzertifikats in einem Transport Layer Security (TLS) -Handshake zu überprüfen. Mit OCSP-Stapling In AWS IoT Core können Sie die Gültigkeit des Serverzertifikats Ihrer benutzerdefinierten Domain um eine zusätzliche Überprüfungsebene erweitern.

Sie können das OCSP-Stapling in für Serverzertifikate aktivieren, um die Gültigkeit des Zertifikats AWS IoT Core zu überprüfen, indem Sie den OCSP-Responder regelmäßig abfragen. Die OCSP-Hefteinstellung ist Teil des Prozesses zum Erstellen oder Aktualisieren einer Domänenkonfiguration mit einer benutzerdefinierten Domäne. OCSP Stapling überprüft kontinuierlich den Sperrstatus des Serverzertifikats. Auf diese Weise können Sie überprüfen, ob alle Zertifikate, die von der Zertifizierungsstelle gesperrt wurden, von den Clients, die eine Verbindung zu Ihren benutzerdefinierten Domänen herstellen, nicht mehr als vertrauenswürdig eingestuft werden. Weitere Informationen finden Sie unter Aktivierung des Serverzertifikats OCSP in AWS IoT Core.

Das OCSP-Stapling von Serverzertifikaten ermöglicht die Überprüfung des Sperrstatus in Echtzeit, reduziert die mit der Überprüfung des Sperrstatus verbundene Latenz und verbessert den Datenschutz und die Zuverlässigkeit sicherer Verbindungen. Weitere Informationen zu den Vorteilen der Verwendung von OCSP Stapling finden Sie unter. Vorteile der Verwendung von OCSP-Stapling im Vergleich zu clientseitigen OCSP-Prüfungen

Anmerkung

Diese Funktion ist in nicht verfügbar. AWS GovCloud (US) Regions

Was ist OCSP?

Das Online Certificate Status Protocol (OCSP) hilft bei der Bereitstellung des Sperrstatus eines Serverzertifikats für einen Transport Layer Security (TLS) -Handshake.

Die wichtigsten Konzepte

Die folgenden Schlüsselkonzepte enthalten Einzelheiten zum Online Certificate Status Protocol (OCSP).

OCSP

OCSP wird verwendet, um den Zertifikatssperrstatus während des Transport Layer Security (TLS) -Handshakes zu überprüfen. OCSP ermöglicht die Validierung von Zertifikaten in Echtzeit. Dadurch wird bestätigt, dass das Zertifikat seit seiner Ausstellung nicht gesperrt wurde oder abgelaufen ist. OCSP ist im Vergleich zu herkömmlichen Zertifikatssperrlisten () CRLs auch besser skalierbar. OCSP-Antworten sind kleiner und können effizient generiert werden, wodurch sie sich besser für große private Schlüsselinfrastrukturen () PKIs eignen.

OCSP-Responder

Ein OCSP-Responder (auch bekannt als OCSP-Server) empfängt und beantwortet OCSP-Anfragen von Clients, die versuchen, den Sperrstatus von Zertifikaten zu überprüfen.

Clientseitiges OCSP

Beim clientseitigen OCSP verwendet der Client OCSP, um einen OCSP-Responder zu kontaktieren, um den Sperrstatus des Zertifikats während des TLS-Handshakes zu überprüfen.

Serverseitiges OCSP

Beim serverseitigen OCSP (auch bekannt als OCSP-Stapling) ist der Server (und nicht der Client) in der Lage, die Anfrage an den OCSP-Responder zu stellen. Der Server verknüpft die OCSP-Antwort mit dem Zertifikat und sendet sie während des TLS-Handshakes an den Client zurück.

OCSP-Diagramme

Das folgende Diagramm zeigt, wie clientseitiges OCSP und serverseitiges OCSP funktionieren.

Clientseitige OCSP- und serverseitige OCSP-Diagramme
Clientseitiges OCSP
  1. Der Client sendet eine ClientHello Nachricht, um den TLS-Handshake mit dem Server zu initiieren.

  2. Der Server empfängt die Nachricht und antwortet mit einer ServerHello Nachricht. Der Server sendet auch das Serverzertifikat an den Client.

  3. Der Client validiert das Serverzertifikat und extrahiert daraus einen OCSP-URI.

  4. Der Client sendet eine Anfrage zur Überprüfung des Zertifikatswiderrufs an den OCSP-Responder.

  5. Der OCSP-Responder sendet eine OCSP-Antwort.

  6. Der Client validiert den Zertifikatsstatus anhand der OCSP-Antwort.

  7. Der TLS-Handshake ist abgeschlossen.

Serverseitiges OCSP
  1. Der Client sendet eine ClientHello Nachricht, um den TLS-Handshake mit dem Server zu initiieren.

  2. Der Server empfängt die Nachricht und erhält die letzte zwischengespeicherte OCSP-Antwort. Wenn die zwischengespeicherte Antwort fehlt oder abgelaufen ist, ruft der Server den OCSP-Responder auf, um den Zertifikatsstatus abzufragen.

  3. Der OCSP-Responder sendet eine OCSP-Antwort an den Server.

  4. Der Server sendet eine Nachricht. ServerHello Der Server sendet auch das Serverzertifikat und den Zertifikatsstatus an den Client.

  5. Der Client validiert den Status des OCSP-Zertifikats.

  6. Der TLS-Handshake ist abgeschlossen.

Wie funktioniert OCSP Stapling

OCSP-Stapling wird während des TLS-Handshakes zwischen dem Client und dem Server verwendet, um den Sperrstatus des Serverzertifikats zu überprüfen. Der Server stellt die OCSP-Anfrage an den OCSP-Responder und heftet die OCSP-Antworten mit den an den Client zurückgegebenen Zertifikaten zusammen. Wenn der Server die Anfrage an den OCSP-Responder stellt, können die Antworten zwischengespeichert und dann für viele Clients mehrfach verwendet werden.

So funktioniert OCSP-Heftung in AWS IoT Core

Das folgende Diagramm zeigt, wie serverseitiges OCSP-Heften in funktioniert. AWS IoT Core

Dieses Diagramm zeigt, wie serverseitiges OCSP-Heften in funktioniert. AWS IoT Core
  1. Das Gerät muss bei benutzerdefinierten Domänen mit aktiviertem OCSP-Stapling registriert sein.

  2. AWS IoT Core ruft stündlich den OCSP-Responder auf, um den Status des Zertifikats abzurufen.

  3. Der OCSP-Responder empfängt die Anfrage, sendet die neueste OCSP-Antwort und speichert die zwischengespeicherte OCSP-Antwort.

  4. Das Gerät sendet eine ClientHello Nachricht, mit der der TLS-Handshake initiiert werden soll. AWS IoT Core

  5. AWS IoT Core ruft die neueste OCSP-Antwort aus dem Server-Cache ab, der mit einer OCSP-Antwort des Zertifikats antwortet.

  6. Der Server sendet eine ServerHello Nachricht an das Gerät. Der Server sendet auch das Serverzertifikat und den Zertifikatsstatus an den Client.

  7. Das Gerät validiert den Status des OCSP-Zertifikats.

  8. Der TLS-Handshake ist abgeschlossen.

Vorteile der Verwendung von OCSP-Stapling im Vergleich zu clientseitigen OCSP-Prüfungen

Zu den Vorteilen der Verwendung von OCSP Stapling für Serverzertifikate gehören:

Verbesserter Datenschutz

Ohne OCSP-Hefting kann das Gerät des Clients Informationen an OCSP-Responder von Drittanbietern weitergeben, wodurch möglicherweise die Privatsphäre der Benutzer gefährdet wird. Durch OCSP-Hefting wird dieses Problem dadurch behoben, dass der Server die OCSP-Antwort erhält und sie direkt an den Client weiterleitet.

Verbesserte Zuverlässigkeit

OCSP-Hefting kann die Zuverlässigkeit sicherer Verbindungen verbessern, da dadurch das Risiko von OCSP-Serverausfällen verringert wird. Wenn OCSP-Antworten geheftet werden, fügt der Server dem Zertifikat die neueste Antwort bei. Auf diese Weise haben Clients auch dann Zugriff auf den Sperrstatus, wenn der OCSP-Responder vorübergehend nicht verfügbar ist. OCSP-Hefting trägt zur Behebung dieser Probleme bei, da der Server in regelmäßigen Abständen OCSP-Antworten abruft und die zwischengespeicherten Antworten in den TLS-Handshake aufnimmt. Dadurch wird die Abhängigkeit von der Echtzeitverfügbarkeit von OCSP-Respondern verringert.

Geringere Serverlast

Mit OCSP-Hefting wird die Last, auf OCSP-Anfragen von OCSP-Respondern zu antworten, auf den Server verlagert. Dies kann dazu beitragen, die Last gleichmäßiger zu verteilen, wodurch der Prozess der Zertifikatsvalidierung effizienter und skalierbarer wird.

Geringere Latenz

OCSP-Hefting reduziert die Latenz, die mit der Überprüfung des Sperrstatus eines Zertifikats während des TLS-Handshakes verbunden ist. Anstatt dass der Client einen OCSP-Server separat abfragen muss, sendet der Server die Anfrage und hängt die OCSP-Antwort während des Handshakes an das Serverzertifikat an.

Aktivierung des Serverzertifikats OCSP in AWS IoT Core

Um das Einheften von Serverzertifikaten mit OCSP zu aktivieren AWS IoT Core, erstellen Sie eine Domänenkonfiguration für eine benutzerdefinierte Domäne oder aktualisieren Sie eine bestehende benutzerdefinierte Domänenkonfiguration. Allgemeine Informationen zum Erstellen einer Domänenkonfiguration mit einer benutzerdefinierten Domäne finden Sie unter. Vom Kunden verwaltete Domains erstellen und konfigurieren

Verwenden Sie die folgenden Anweisungen, um das OCSP-Serverstapling mithilfe von AWS Management Console oder zu aktivieren. AWS CLI

So aktivieren Sie das OCSP Stapling für Serverzertifikate mithilfe der Konsole: AWS IoT
  1. Wählen Sie im Navigationsmenü Einstellungen und dann Domainkonfiguration erstellen aus, oder wählen Sie eine bestehende Domainkonfiguration für eine benutzerdefinierte Domain aus.

  2. Wenn Sie sich im vorherigen Schritt dafür entschieden haben, eine neue Domain-Konfiguration zu erstellen, wird die Seite Domain-Konfiguration erstellen angezeigt. Wählen Sie im Abschnitt Eigenschaften der Domänenkonfiguration die Option Benutzerdefinierte Domäne aus. Geben Sie die Informationen ein, um eine Domänenkonfiguration zu erstellen.

    Wenn Sie eine bestehende Domainkonfiguration für eine benutzerdefinierte Domain aktualisieren möchten, wird die Seite mit den Details zur Domain-Konfiguration angezeigt. Wählen Sie Bearbeiten aus.

  3. Um das OCSP-Serverstapling zu aktivieren, wählen Sie im Unterabschnitt Serverzertifikatkonfigurationen die Option Serverzertifikat-OCSP-Stapling aktivieren aus.

  4. Wählen Sie Domänenkonfiguration erstellen oder Domänenkonfiguration aktualisieren aus.

Um das OCSP-Stapling von Serverzertifikaten zu aktivieren, verwenden Sie: AWS CLI
  1. Wenn Sie eine neue Domänenkonfiguration für eine benutzerdefinierte Domäne erstellen, kann der Befehl zum Aktivieren des OCSP-Serverstaplings wie folgt aussehen:

    aws iot create-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:us-east-1:123456789012:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3 \ --server-certificate-config "enableOCSPCheck=true|false"
  2. Wenn Sie eine bestehende Domänenkonfiguration für eine benutzerdefinierte Domain aktualisieren, kann der Befehl zum Aktivieren des OCSP-Serverstaplings wie folgt aussehen:

    aws iot update-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:us-east-1:123456789012:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3 \ --server-certificate-config "enableOCSPCheck=true|false"

Weitere Informationen finden Sie unter CreateDomainConfigurationund in UpdateDomainConfigurationder AWS IoT API-Referenz.

Konfiguration des Serverzertifikats OCSP für private Endpunkte in AWS IoT Core

Mit OCSP für private Endpoints können Sie Ihre privaten OCSP-Ressourcen innerhalb Ihrer Amazon Virtual Private Cloud (Amazon VPC) für den Betrieb nutzen. AWS IoT Core Der Prozess beinhaltet die Einrichtung einer Lambda-Funktion, die als OCSP-Responder fungiert. Die Lambda-Funktion verwendet möglicherweise Ihre privaten OCSP-Ressourcen, um OCSP-Antworten zu erstellen, AWS IoT Core die verwendet werden.

Lambda-Funktion

Bevor Sie Server-OCSP für einen privaten Endpunkt konfigurieren, erstellen Sie eine Lambda-Funktion, die als RFC 6960-kompatibler Online Certificate Status Protocol (OCSP) -Responder fungiert und grundlegende OCSP-Antworten unterstützt. Die Lambda-Funktion akzeptiert eine Base64-Kodierung der OCSP-Anfrage im Format Distinguished Encoding Rules (DER). Die Antwort der Lambda-Funktion ist ebenfalls eine Base64-kodierte OCSP-Antwort im DER-Format. Die Antwortgröße darf 4 Kilobyte (KiB) nicht überschreiten. Die Lambda-Funktion muss sich in derselben AWS-Konto und AWS-Region wie die Domänenkonfiguration befinden. Im Folgenden finden Sie Beispiele für Lambda-Funktionen.

Beispiele für Lambda-Funktionen

JavaScript
import * as pkijs from 'pkijs'; console.log('Loading function'); export const handler = async (event, context) => { const requestBytes = decodeBase64(event); const ocspRequest = pkijs.OCSPRequest.fromBER(requestBytes); console.log("Here is a better look at the OCSP request"); console.log(ocspRequest.toJSON()); const ocspResponse = getOcspResponse(); console.log("Here is a better look at the OCSP response"); console.log(ocspResponse.toJSON()); const responseBytes = ocspResponse.toSchema().toBER(); return encodeBase64(responseBytes); }; function getOcspResponse() { const responseString = "MIIC/woBAKCCAvgwggL0BgkrBgEFBQcwAQEEggLlMIIC4TCByqFkMGIxJzAlBgNVBAoMHlJpY2hhcmQncyBEaXNjb3VudCBMYW1iZGEgT0NTUDEZMBcGA1UEAwwQcm91bmRhYm91dE5hdGlvbjEPMA0GA1UEBwwGQ2FybWVsMQswCQYDVQQGEwJJThgPMjAyNDA0MjMxODUzMjVaMFEwTzA6MAkGBSsOAwIaBQAEFD2L7Ol/6ieNMaJbwRbxFWFweXGPBBSzSThwzTc3/p5w7WOtPjp3otNtVgIBAYAAGA8yMDI0MDQyMzE4NTMyNVowDQYJKoZIhvcNAQELBQADggIBAJFRyjDAHfazNejo704Ra3FOsGq/+s82R1spDarr3k7Pzkod9jJhwsZ2YgushlS4Npfe4lHCdwFyZR75WXrW55aXFddy03KLz01ZLNYyxkleW3f5dgrUcRU3PMW9TU2gZ0VOV8L5pmxKBoBRFt6EKtyh4CbiuqkTpLdLIMZmTyanhl5GVyU5MBHdbH8YWZoT/DEBiyS7ZsyhKo6igWU/SY7YMSKgwBvFsqSDcOa/hRYQkxWKWJ19gcz8CIkWN7NvfIxCs6VrAdzEJwmE7y3v+jdfhxW9JmI4xStE4K0tAR9vVOOfKs7NvxXj7oc9pCSG60xl96kaEE6PaY1YsfNTsKQ7pyCJ0s7/2q+ieZ4AtNyzw1XBadPzPJNv6E0LvI24yQZqN5wACvtut5prMMRxAHbOy+abLZR58wloFSELtGJ7UD96LFv1GgtC5s+2QlzPc4bEEof7Lo1EISt3j2ibNch8LxhqTQ4ufrbhsMkpSOTFYEJVMJF6aKj/OGXBUUqgc0Jx6jjJXNQd+l5KCY9pQFeb/wVUYC6mYqZOkNNMMJxPbHHbFnqb68yO+g5BE9011N44YXoPVJYoXxBLFX+OpRu9cqPkT9/vlkKd+SYXQknwZ81agKzhf1HsBKabtJwNVMlBKaI8g5UGa7Bxi6ewH3ezdWiERRUK7F56OM53wto/"; const responseBytes = decodeBase64(responseString); return pkijs.OCSPResponse.fromBER(responseBytes); } function decodeBase64(input) { const binaryString = atob(input); const byteArray = new Uint8Array(binaryString.length); for (var i = 0; i < binaryString.length; i++) { byteArray[i] = binaryString.charCodeAt(i); } return byteArray.buffer; } function encodeBase64(buffer) { var binary = ''; const bytes = new Uint8Array( buffer ); const len = bytes.byteLength; for (var i = 0; i < len; i++) { binary += String.fromCharCode( bytes[ i ] ); } return btoa(binary); }
Java
package com.example.ocsp.responder; import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.LambdaLogger; import com.amazonaws.services.lambda.runtime.RequestHandler; import org.bouncycastle.cert.ocsp.OCSPReq; import org.bouncycastle.cert.ocsp.OCSPResp; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.Base64; public class LambdaResponderApplication implements RequestHandler<String, String> { @Override public String handleRequest(final String input, final Context context) { LambdaLogger logger = context.getLogger(); byte[] decodedInput = Base64.getDecoder().decode(input); OCSPReq req; try { req = new OCSPReq(decodedInput); } catch (IOException e) { logger.log("Got an IOException creating the OCSP request: " + e.getMessage()); throw new RuntimeException(e); } try { OCSPResp response = businessLogic.getMyResponse(); String toReturn = Base64.getEncoder().encodeToString(response.getEncoded()); return toReturn; } catch (Exception e) { logger.log("Got an exception creating the response: " + e.getMessage()); return ""; } } }

Autorisieren AWS IoT zum Aufrufen Ihrer Lambda-Funktion

Bei der Erstellung der Domänenkonfiguration mit einem Lambda-OCSP-Responder müssen Sie die AWS IoT Erlaubnis erteilen, die Lambda-Funktion aufzurufen, nachdem die Funktion erstellt wurde. Um die Berechtigung zu erteilen, können Sie den CLI-Befehl add-permission verwenden.

Erteilen Sie Ihrer Lambda-Funktion die Erlaubnis mit dem AWS CLI
  1. Geben Sie nach der Eingabe Ihrer Werte den folgenden Befehl ein. Beachten Sie, dass der Wert statement-id eindeutig sein muss. Id-1234Ersetzen Sie es durch den exakten Wert, den Sie haben, andernfalls wird möglicherweise eine ResourceConflictException Fehlermeldung angezeigt.

    aws lambda add-permission \ --function-name "ocsp-function" \ --principal "iot.amazonaws.com" \ --action "lambda:InvokeFunction" \ --statement-id "Id-1234" \ --source-arn arn:aws:iot:us-east-1:123456789012:domainconfiguration/<domain-config-name>/* --source-account 123456789012

    Die IoT-Domänenkonfiguration ARNs folgt dem folgenden Muster. Das vom Dienst generierte Suffix wird vor der Erstellung nicht bekannt sein, daher müssen Sie das Suffix durch ein ersetzen. * Sie können die Berechtigung aktualisieren, sobald die Domänenkonfiguration erstellt wurde und der genaue ARN bekannt ist.

    arn:aws:iot:use-east-1:123456789012:domainconfiguration/domain-config-name/service-generated-suffix

  2. Wenn der Befehl erfolgreich ist, gibt er eine Berechtigungsanweisung zurück, wie in diesem Beispiel. Sie können mit dem nächsten Abschnitt fortfahren, um OCSP Stapling für private Endgeräte zu konfigurieren.

    { "Statement": "{\"Sid\":\"Id-1234\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"iot.amazonaws.com\"},\"Action\":\"lambda:InvokeFunction\",\"Resource\":\"arn:aws:lambda:us-east-1:123456789012:function:ocsp-function\",\"Condition\":{\"ArnLike\":{\"AWS:SourceArn\":\"arn:aws:iot:us-east-1:123456789012:domainconfiguration/domain-config-name/*\"}}}" }

    Wenn der Befehl nicht erfolgreich ist, wird ein Fehler zurückgegeben, wie in diesem Beispiel. Sie müssen den Fehler überprüfen und korrigieren, bevor Sie fortfahren können.

    An error occurred (AccessDeniedException) when calling the AddPermission operation: User: arn:aws:iam::57EXAMPLE833:user/EXAMPLE-1 is not authorized to perform: lambda:AddPer mission on resource: arn:aws:lambda:us-east-1:123456789012:function:ocsp-function

Konfiguration von Server-OCSP-Stapling für private Endpunkte

So konfigurieren Sie das OCSP-Stapling für Serverzertifikate mithilfe der Konsole: AWS IoT
  1. Wählen Sie im Navigationsmenü Einstellungen und dann Domainkonfiguration erstellen aus, oder wählen Sie eine bestehende Domänenkonfiguration für eine benutzerdefinierte Domain aus.

  2. Wenn Sie sich im vorherigen Schritt dafür entschieden haben, eine neue Domain-Konfiguration zu erstellen, wird die Seite Domain-Konfiguration erstellen angezeigt. Wählen Sie im Abschnitt Eigenschaften der Domänenkonfiguration die Option Benutzerdefinierte Domäne aus. Geben Sie die Informationen ein, um eine Domänenkonfiguration zu erstellen.

    Wenn Sie eine bestehende Domainkonfiguration für eine benutzerdefinierte Domain aktualisieren möchten, wird die Seite mit den Details zur Domain-Konfiguration angezeigt. Wählen Sie Bearbeiten aus.

  3. Um das OCSP-Serverstapling zu aktivieren, wählen Sie im Unterabschnitt Serverzertifikatkonfigurationen die Option Serverzertifikat-OCSP-Stapling aktivieren aus.

  4. Wählen Sie Domänenkonfiguration erstellen oder Domänenkonfiguration aktualisieren aus.

So konfigurieren Sie das OCSP-Stapling für Serverzertifikate mit: AWS CLI
  1. Wenn Sie eine neue Domänenkonfiguration für eine benutzerdefinierte Domäne erstellen, kann der Befehl zur Konfiguration des Serverzertifikats OCSP für private Endpunkte wie folgt aussehen:

    aws iot create-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:us-east-1:123456789012:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3 \ --server-certificate-config "enableOCSPCheck=true, ocspAuthorizedResponderArn=arn:aws:acm:us-east-1:123456789012:certificate/certificate_ID, ocspLambdaArn=arn:aws:lambda:us-east-1:123456789012:function:my-function"
  2. Wenn Sie eine bestehende Domänenkonfiguration für eine benutzerdefinierte Domain aktualisieren, kann der Befehl zur Konfiguration des Serverzertifikats OCSP für private Endpunkte wie folgt aussehen:

    aws iot update-domain-configuration --domain-configuration-name "myDomainConfigurationName" \ --server-certificate-arns arn:aws:iot:us-east-1:123456789012:cert/f8c1e5480266caef0fdb1bf97dc1c82d7ba2d3e2642c5f25f5ba364fc6b79ba3 \ --server-certificate-config "enableOCSPCheck=true, ocspAuthorizedResponderArn=arn:aws:acm:us-east-1:123456789012:certificate/certificate_ID, ocspLambdaArn=arn:aws:lambda:us-east-1:123456789012:function:my-function"
aktivieren OCSPCheck

Dies ist ein boolescher Wert, der angibt, ob die OCSP-Heftprüfung auf dem Server aktiviert ist oder nicht. Um das OCSP-Heften für Serverzertifikate zu aktivieren, muss dieser Wert wahr sein.

ocspAuthorizedResponderArn

Dies ist ein Zeichenkettenwert des Amazon-Ressourcennamens (ARN) für ein in AWS Certificate Manager (ACM) gespeichertes X.509-Zertifikat. Falls angegeben, AWS IoT Core wird dieses Zertifikat verwendet, um die Signatur der empfangenen OCSP-Antwort zu validieren. Falls nicht angegeben, AWS IoT Core wird das ausstellende Zertifikat verwendet, um die Antworten zu validieren. Das Zertifikat muss sich in derselben AWS-Konto und AWS-Region wie die Domänenkonfiguration befinden. Weitere Informationen zur Registrierung Ihres autorisierten Responder-Zertifikats finden Sie unter Zertifikate importieren in AWS Certificate Manager.

ocspLambdaArn

Dies ist ein Zeichenkettenwert des Amazon-Ressourcennamens (ARN) für eine Lambda-Funktion, die als RFC 6960-konformer (OCSP) -Responder (Request for Comments) fungiert und grundlegende OCSP-Antworten unterstützt. Die Lambda-Funktion akzeptiert eine Base64-Kodierung der OCSP-Anfrage, die im DER-Format codiert ist. Die Antwort der Lambda-Funktion ist ebenfalls eine Base64-kodierte OCSP-Antwort im DER-Format. Die Antwortgröße darf 4 Kilobyte (KiB) nicht überschreiten. Die Lambda-Funktion muss sich in derselben AWS-Konto und AWS-Region wie die Domänenkonfiguration befinden.

Weitere Informationen finden Sie in CreateDomainConfigurationund in UpdateDomainConfigurationder AWS IoT API-Referenz.

Wichtige Hinweise zur Verwendung des Serverzertifikats OCSP (Stapling in) AWS IoT Core

Beachten Sie bei der Verwendung des Serverzertifikats OCSP in AWS IoT Core Folgendes:

  1. AWS IoT Core unterstützt nur die OCSP-Responder, die über öffentliche Adressen erreichbar sind. IPv4

  2. Die OCSP-Heftfunktion in unterstützt AWS IoT Core keine autorisierten Responder. Alle OCSP-Antworten müssen von der Zertifizierungsstelle signiert werden, die das Zertifikat signiert hat, und die Zertifizierungsstelle muss Teil der Zertifikatskette der benutzerdefinierten Domäne sein.

  3. Die OCSP-Heftfunktion in unterstützt AWS IoT Core keine benutzerdefinierten Domänen, die mit selbstsignierten Zertifikaten erstellt wurden.

  4. AWS IoT Core ruft jede Stunde einen OCSP-Responder auf und speichert die Antwort im Cache. Schlägt der Anruf beim Responder fehl, AWS IoT Core wird die letzte gültige Antwort gespeichert.

  5. Wenn sie nicht mehr gültig nextUpdateTime ist, AWS IoT Core wird die Antwort aus dem Cache entfernt, und der TLS-Handshake enthält die OCSP-Antwortdaten erst beim nächsten erfolgreichen Anruf an den OCSP-Responder. Dies kann passieren, wenn die zwischengespeicherte Antwort abgelaufen ist, bevor der Server eine gültige Antwort vom OCSP-Responder erhält. Der Wert von nextUpdateTime deutet darauf hin, dass die OCSP-Antwort bis zu diesem Zeitpunkt gültig sein wird. Mehr über nextUpdateTime erfahren Sie unter OCSP-Protokolleinträge für Serverzertifikate.

  6. Manchmal kann die OCSP-Antwort AWS IoT Core nicht empfangen werden oder die vorhandene OCSP-Antwort wird entfernt, weil sie abgelaufen ist. In solchen Situationen AWS IoT Core wird weiterhin das von der benutzerdefinierten Domäne bereitgestellte Serverzertifikat ohne die OCSP-Antwort verwendet.

  7. Die Größe der OCSP-Antwort darf 4 KiB nicht überschreiten.

Problembehandlung beim Einheften des Serverzertifikats (OCSP) AWS IoT Core

AWS IoT Core gibt die RetrieveOCSPStapleData.Success Metrik und die RetrieveOCSPStapleData Protokolleinträge an aus. CloudWatch Die Metrik und die Protokolleinträge können dabei helfen, Probleme im Zusammenhang mit dem Abrufen von OCSP-Antworten zu erkennen. Weitere Informationen erhalten Sie unter OCSP Stapling-Metriken für Serverzertifikate und OCSP-Protokolleinträge für Serverzertifikate.