---
title: "Automatisierung der Laufzeitverlängerung von Zertifikaten"
url: "https://help.internetx.com/de/api/processes-automatisierung-der-laufzeitverlaengerung-von-zertifikaten/"
lang: "de"
section: "API-Referenz — API-Prozesse"
breadcrumb: "Automatisierung von Zertifikats-Prozessen"
updated: "2025-06-04"
---

# Automatisierung der Laufzeitverlängerung von Zertifikaten

Anleitung zur vollständigen Automatisierung der Laufzeitverlängerung für Zertifikate.  Als Beispiel wird hier das Produkt QuickSSLPremium verwendet und als Authentifizierungsmethode DNS.

## Grundlagen der JSON-und XML-API

Alle wichtigen Informationen für die Nutzung der JSON- und XML-API findest du bei den [API-Grundlagen,](/de/api/core-allgemeine-api-grundlagen/)  den [XML](/de/api/core-xml/)\- und [JSON](/de/api/core-json/)\-Grundlagen.

Die spezifischen [SSL-Objekte](/de/api/core-objekte-fuer-ssl/) sind hier dokumentiert, die [SSL-Auftragstypen](/de/api/core-ssl-auftragstypen/) hier.

## Prozess-Übersicht

### Ablaufdiagramm

### ![Ablaufdiagramm](/images/api/52044b8a3cb0.png)

### Auftragstypen-Namen, Codes und Routen

| Auftragstyp | Code | Route |
| --- | --- | --- |
| [CertificatePrepareOrder](/de/api/core-certificate-prepare-order/) | 400110 | POST /certificate/\_prepareOrder |
| [CertificateRenew](/de/api/core-certificate-renew/) | 400106 | PUT /certificate/$id/\_renew |
| PollInfo | 0905 | GET /poll |
| PollConfirm | 0906 | PUT /poll/$id |
| [CertificateInfo](/de/api/core-certificate-info/) | 400104 | GET /certificate/$id |

## DNS-Validierung

Die DNS-Validierung, also die Validierung durch Zoneneintrag, wird von vielen domainvalidierten Zertifikaten unterstützt.  Dafür musst du für manche CAs in der zum Zertifikatsnamen gehörenden Zone einen bestimmten TXT- oder CNAME-Record hinterlegen. Dieser wird von der austellenden Zertifikatsstelle auf Gültigkeit geprüft. Für Zonen, die von InterNetX verwaltet werden, erfolgt die Provisionierung der Zone automatisch.

## Vorbereitung

### SSLManager mit AutoDNS verbinden

Sind die zwei Systeme bereits verknüpft, kann dieser Schritt übersprungen werden!

Für die automatische Provisionierung der Zone, also das automatische Anstoßen der Zonen-Aktualisierung, musst du einmalig den SSLManager mit Ihrem AutoDNS Zugang verbinden.  
Gehe im SSL Manager zu den **Benutzereinstellungen** und klicke auf den Menüpunkt **SSL Manager** **m****it** **dem Domainverwaltungssystem** verbinden. Du wirst dann auf die AutoDNS Loginseite geleitet.  
Gebe hier zum Herstellen der Verbindung deine AutoDNS Zugangsdaten ein. Gebenenfalls musst Du die URL zu deinem AutoDNS selbst eingeben.

![SSLManager mit AutoDNS verbinden](/images/api/60ecad5001d6.png)

### Die Laufzeit eines QuickSSLPremium-Zertifikates verlängern

#### DNS-Record erzeugen und CSR prüfen

QuickSSLPremium-Zertifikate werden durch TXT-Einträge verifiziert. Dafür muss in der zum Common-Name (CNAME) gehörenden Zone ein neuer TXT-Record mit bestimmten Werten hinterlegt werden. Mit dem Auftragstyp _CertificatePrepareOrder_ wird der bereitgestellte CSR Key z.B. auf die richtige Bit-Länge geprüft und es werden die benötigten Authentifizierungsdaten erzeugt.

Beispiel TXT :   
example.com. 300 IN TXT "201704071405295z34is5g0jjairsdu0v5opdw8512td8kixzvtaacu4ebrkry5q"

##### CertificatePrepareOrder  Beispiel

```
POST /certificate/prepareOrder
{
  "plain": "----BEGIN CERTIFICATE REQUEST----- .... -----END CERTIFICATE REQUEST-----",
  "product": "QUICKSSLPREMIUM",
  "businessCase": "RENEW"
}
```

```
{
    "stid": "20180926-stid",
    "status": {
        "code": "S400110",
        "text": "CSR Key wurde erfolgreich geprüft.",
        "type": "SUCCESS"
    },
    "data": [
        {
            "plain": "-----BEGIN CERTIFICATE REQUEST----- ... -----END CERTIFICATE REQUEST-----",
            "name": "example.com",
            "keySize": 2048,
            "countryCode": "DE",
            "state": "BY",
            "city": "Regensburg",
            "organization": "Company GmbH",
            "organizationUnit": "Entwicklung",
            "product": "QUICKSSLPREMIUM",
            "authentication": [
                {
                    "method": "EMAIL",
                    "approverEmails": [
                        "admin@example.com",
                        "administrator@example.com",
                        "hostmaster@example.com",
                        "webmaster@example.com",
                        "postmaster@example.com"
                    ]
                },
                {
                    "method": "DNS",
                    "dns": "example.com.\t\t300\tIN\tTXT\t\"201704071405295z34is5g0jjairsdu0v5opdw8512td8kixzvtaacu4ebrkry5q\""
                },
                {
                    "method": "FILE"
                }
            ],
            "algorithm": "RSA",
            "signatureHashAlgorithm": "SHA256"
        }
    ]
}
```

### Zertifikat verlängern

Mit dem Auftragstyp **CertificateRenew** sendst du die eigentliche Bestellung ans System. Dabei musst du bestimmte Werte setzen:

-   Authentifizierung: Die generierten Authentifizierungsdaten
-   Laufzeit: Gib eine für das Zertifikat zulässige Laufzeit an. Bei QuickSSLPremium sind dies 12 oder 24 Monate.
-   Id: Die ID des Zertifikates.  Diese kannst du über einen _CertificateInfo-Auftrag_ ermitteln.  
    XML: die ID wird im Payload des Auftrages gesetzt.  
    JSON: die ID wird über den Pfad gesetzt.

Wenn bei der Laufzeitverlängerung auch Daten geändert werden sollen, z. B. der CSR, dann kannst du diese im Auftrag mitschicken.

#### CertificateRenew - Beispiel

```
PUT /certificate/$id/_renew
{
  "lifetime": {
    "unit": "MONTH",
    "period": 12
  },
  "authentication": {
    "method": "DNS",
    "dns": "example.com.\t\t300\tIN\tTXT\t\"201704071405295z34is5g0jjairsdu0v5opdw8512td8kixzvtaacu4ebrkry5q\"",
    "provisioning": true
  }
}
```

```
{
    "stid": "20180928-stid",
    "status": {
        "code": "N400106",
        "text": "Laufzeitverlängerung für das Zertifikat wurde erfolgreich gestartet.",
        "type": "NOTIFY"
    },
    "object": {
        "type": "Certificate",
        "value": "example.com"
    },
    "data": [
        {
            "id": 123456
        }
    ]
}
```

  

### Benachrichtigungen erhalten

Ist der Auftrag abgearbeitet, wird eine Systembenachrichtigung erzeugt, die Aufschluss darüber gibt, ob die Laufzeitverlängerung erfolgreich war oder nicht.  
Die Benachrichtigung kann mit den Methoden [Polling und Push abgerufen bzw. zugesendet](/de/api/core-benachrichtigungen-erhalten-polling-und-push/) werden.

### Zertifikats-Daten ermitteln

Der Auftragstyp _CertificateInfo_ ermittelt alle Zertifikats-Daten. Die Daten können mit Hilfe der ID aus dem Schritt Benachrichtigungen erhalten abgefragt werden.

#### CertificateInfo - Beispiel

```
GET /certificate/$id
```

```
{
    "stid": "20180926-stid",
    "status": {
        "code": "S400104",
        "text": "Zertifikatsdaten wurden erfolgreich ermittelt.",
        "type": "SUCCESS"
    },
    "object": {
        "type": "Certificate",
        "value": "example.com"
    },
    "data": [
        {
            "created": "2018-09-26T00:00:00.000+0200",
            "updated": "2018-09-26T11:38:08.000+0200",
            "id": 13258,
            "owner": {
                "user": "user",
                "context": 9
            },
            "orderId": "2695961",
            "adminContact": {
                "id": 100
				...
            },
            "technicalContact": {
                "id": 100
				...
            },
            "name": "example.com",
            "lifetime": {
                "unit": "MONTH",
                "period": 12
            },
            "software": "APACHESSL",
            "csr": "-----BEGIN CERTIFICATE REQUEST----- ... -----END CERTIFICATE REQUEST-----",
            "server": "-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----\n",
            "serialNumber": "750C3006B23B90D0F396A3D153EB4C8",
            "product": "QUICKSSLPREMIUM",
            "expire": "2019-09-26T12:00:00.000+0200",
            "authentication": {
                "method": "DNS",
                "dns": "example.com.\t\t300\tIN\tTXT\t\"201809261405295z34is5g0jjairsdu0v5opdw8512td8kixzvtaacu4ebrkry5q\"",
                "provisioning": true
            },
            "certificateTransparencyPrivacy": "PUBLIC",
            "domain": "example.com"
        }
    ]
}
```
