Wie kann ich ein SSL-Zertifikat in AWS Identity and Access Management (IAM) hochladen und importieren?

Lesedauer: 4 Minute
0

Wie kann ich ein SSL-Zertifikat in AWS Identity and Access Management (IAM) hochladen und importieren?

Kurzbeschreibung

Es ist eine bewährte Methode, SSL-Zertifikate in den AWS Certificate Manager (ACM) hochzuladen. Wenn Sie Zertifikatsalgorithmen und Schlüsselgrößen verwenden, die derzeit nicht von ACM oder den zugehörigen AWS-Ressourcen unterstützt werden, können Sie über die AWS-Befehlszeilenschnittstelle (AWS CLI) auch ein SSL-Zertifikat auf IAM hochladen.

Bevor Sie ein SSL-Zertifikat in IAM importieren können:

  • Das Zertifikat muss zum Zeitpunkt des Uploads gültig sein. Sie können ein Zertifikat nicht hochladen, bevor seine Gültigkeitsdauer beginnt oder nachdem es abgelaufen ist.
  • Das Zertifikat, der private Schlüssel und die Zertifikatskette müssen PEM-codiert sein. Weitere Informationen finden Sie im Abschnitt Beispiel für eine PEM-kodierte Zertifikatskette unter Arbeiten mit Serverzertifikaten.

Nachdem Sie bestätigt haben, dass Ihr Zertifikat die Kriterien erfüllt, stellen Sie sicher, dass die Zertifikatskette in der richtigen Reihenfolge ist, und laden Sie dann das Zertifikat hoch.

Lösung

Vergewissern Sie sich, dass die Zertifikatskette in der richtigen Reihenfolge ist

Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.

Die Zertifikatskette muss mit dem Zertifikat beginnen, das von Ihrer Zertifizierungsstelle (CA) generiert wurde, und mit dem Stammzertifikat Ihrer CA enden.

Hinweis: Wenn die Zertifikatskette nicht in der richtigen Reihenfolge ist, kann die folgende Fehlermeldung angezeigt werden: „Beim Aufrufen des Vorgangs UploadServerCertificate ist ein Fehler aufgetreten (malformedCertificate): Die Zertifikatskette konnte nicht überprüft werden. Die Zertifikatskette muss mit dem Sofortsignierungszertifikat beginnen, gefolgt von allen Zwischenhändlern der Reihe nach. Der Index innerhalb der Kette des ungültigen Zertifikats lautet: -1“

Die PEM-codierte Zertifikatskette muss mit „-----ZERTIFIKAT ANFANG----“ beginnen und mit „-----ZERTIFIKAT ENDE-----“ enden, etwa wie folgt:

-----BEGIN CERTIFICATE-----
Base64-encoded Intermediate certificate 2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Base64-encoded Intermediate certificate 1
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Optional: Base64-encoded Root certificate
-----END CERTIFICATE-----

Hinweis: Stellen Sie sicher, dass das Zertifikat keine führenden oder abschließenden Leerzeichen enthält und dass es außer den Blöcken ANFANG und ENDE kein Präfix oder Suffix enthält.

Der PEM-codierte Schlüssel muss das folgende Format verwenden, um die Fehlermeldung: „MalformedCertificate: Der private Schlüssel kann nicht analysiert werden“ zu vermeiden:

-----BEGIN RSA PRIVATE KEY-----
Base64-encoded private key
-----END RSA PRIVATE KEY-----

Laden Sie das Zertifikat hoch

Laden Sie das Zertifikat hoch, indem Sie den AWS-CLI-Befehl upload-server-certificate ausführen, der dem folgenden ähnelt:

$ aws iam upload-server-certificate --server-certificate-name YourCertificate --certificate-body file://Certificate.pem --certificate-chain file://CertificateChain.pem --private-key file://PrivateKey.pem

Hinweis:

  • Ersetzen Sie die Dateinamen und YourCertificate durch die Namen Ihrer hochgeladenen Dateien und Ihres Zertifikats.
  • Sie müssen das Präfix „file://" in den Parametern für den Zertifikatstext, die Zertifikatskette und den privaten Schlüssel in der API-Anfrage angeben. Andernfalls schlägt die Anfrage mit einer Fehlermeldung: „MalformedCertificate: Unbekannt“ fehl.

Nachdem das Zertifikat hochgeladen wurde, gibt der AWS-Befehl upload-server-certificate Metadaten für das hochgeladene Zertifikat zurück, einschließlich des Amazon-Ressourcennamens (ARN), des Anzeigenamens, der Kennung (ID) und des Ablaufdatums des Zertifikats.

Führen Sie den AWS-CLI-Befehl list-server-certificates aus, um das hochgeladene Zertifikat einzusehen:

aws iam list-server-certificates

Hinweis: Wenn Sie ein Serverzertifikat zur Verwendung mit Amazon CloudFront hochladen, müssen Sie mit --path einen Pfad angeben. Der Pfad muss mit /cloudfront beginnen und der Pfad muss einen abschließenden Schrägstrich enthalten, zum Beispiel /cloudfront/test/. Weitere Informationen finden Sie unter Wie kann ich Probleme mit der Verwendung eines benutzerdefinierten SSL-Zertifikats für meine CloudFront-Distribution beheben?

Um das Zertifikat zu löschen, führen Sie den AWS-CLI-Befehl delete-server-certificate aus, der dem folgenden ähnelt:

$ aws iam delete-server-certificate --server-certificate-name YourCertificate

Ähnliche Informationen

In AWS Certificate Manager integrierte Dienste

Zertifikat und Schlüsselformat für den Import