5.20.1 api cert ca

Funkce /api/phone/config slouží ke správě CA certifikátů.

Funkce je součástí služby Systém API a v případě použití autentizace je nutné, aby uživatel měl přiřazené privilegium Systém – řízení.

U této funkce lze použít metodu GET, PUT nebo DELETE. Metoda PUT vrací informace o certifikátech. v zařízení. Metoda PUT slouží k nahrání certifikátů do zařízení. Metoda DELETE slouží ke smazání certifikátu ze zařízení.

Metoda GET

Parametry požadavku GET:

Parametr

Popis

id

Volitelný parametr (string) identifikující CA certifikát. Hodnota parametru id je přednastavené id nebo otisk (hash) certifikátu. Pokud není id zadáno, odpověď obsahuje úplný seznam všech CA certifikátů v zařízení.

Odpověď je ve formátu application/json a může obsahovat následující parametry:

Parametr

Popis

fingerprint

Otisk (hash) certifikátu

subject,issuer

Informace o subjektu nebo vydavateli: Common Name (CN), Organization (O), Organization Unit (OU), Location (L), State (S), Country (C)

id

Hodnota (řetězec) dříve nastavené identifikace certifikátu.

startDate

Datum začátku platnosti certifikátu

endDate

Datum konce platnosti certifikátu

protected

Hodnota určující, že certifikát nemůže být smazán (true/false). Interní certifikáty s id začínajícím znakem # nemohou být smazány.

systemUseOnly

Hodnota určující, zda může daný certifikát uživatel zvolit jako certifikát pro jakoukoli službu. Pokud je hodnota true, certifikát se v seznamu pro výběr nezobrazí.

Příklad 1: Získání dat všech certifikátů

GET /api/cert/ca						//požadavek
{										//odpověď
  "success" : true,
  "result" : {
    "certificates" : [
      {
        "fingerprint" : "4deea7060d80babf1643b4e0f0104c82995075b7",
        "subject" : {
          "CN" : "Thawte RSA CA 2018",
          "O" : "DigiCert Inc",
          "OU" : "www.digicert.com",
          "C" : "US"
        },
        "issuer" : {
          "CN" : "DigiCert Global Root CA",
          "O" : "DigiCert Inc",
          "OU" : "www.digicert.com",
          "C" : "US"
        },
        "startDate" : "2017-11-06T12:23:52Z",
        "endDate" : "2027-11-06T12:23:52Z",
        "allowRemove" : true
      },
      {
        "fingerprint" : "a8985d3a65e5e5c4b2d7d66d40c6dd2fb19c5436",
        "subject" : {
          "CN" : "DigiCert Global Root CA",
          "O" : "DigiCert Inc",
          "OU" : "www.digicert.com",
          "C" : "US"
        },
        "issuer" : {
          "CN" : "DigiCert Global Root CA",
          "O" : "DigiCert Inc",
          "OU" : "www.digicert.com",
          "C" : "US"
        },
        "startDate" : "2006-11-10T00:00:00Z",
        "endDate" : "2031-11-10T00:00:00Z",
        "protected" : false,
        "id" : "#my2n-utility",
        "systemUseOnly" : true
      }
    ]
  }
}

Příklad 2:  Získání informací pro certifikát zadaného id

GET /api/cert/ca?id=#my2n-utility				//požadavek
{												//odpověď
  "success" : true,
  "result" : {
    "certificates" : [
      {
        "fingerprint" : "a8985d3a65e5e5c4b2d7d66d40c6dd2fb19c5436",
        ...
        "id" : "#my2n-utility",
        ...
      }
    ]
  }
}

Metoda PUT

Při opakovaném nahrání stejného certifikátu se původní certifikát přepíše. Je možné nahrát více certifikátů v jednom souboru ve formátu PEM. Soubor může obsahovat libovolné bloky, zpracovávají se pouze certifikáty. Pokud se některý z obsažených certifikátů nepodaří nahrát, žádný se neuloží a vrátí se kód chyby.

Parametry požadavku PUT:

Parametr

Popis

blob-cert

Povinný parametr obsahující soubor s certifikátem ve formátu DER nebo PEM.

id

Volitelný parametr (string) identifikující CA certifikát.

Pokud je nahrán certifikát pod stejným id, původní certifikát s tímto id se přepíše.

Při nahrávání souboru s více certifikáty se id nezadává.

Odpověď je ve formátu application/json a obsahuje otisk nahraného certifikátu

Parametr

Popis

fingerprint

Otisk (hash) nahraného certifikátu

replaced

Otisk přepsaného certifikátu

Příklad:

PUT /api/cert/ca					//požadavek
{									//odpověď
  "success" : true,
  "result" : {
    "certificates" : [
      {
        "fingerprint": "9623fa35e414aa930ed22348a22d04a4c4fda26b"
      },
      {
        "fingerprint": "9623fa35e414aa930ed22348a22d04a4c4fda26b"
        "replaced": "9623fa26e414aa930ed22348a22d04a4c4fda26c"
      }
    ]
  }
}
----			
{									//odpověď
  "success" : false,
  "error" : {
    "code" : 12,
    "param" : "blob-cert",
    "description" : "invalid certificate",
    "data" : "invalid_cert"
  }
}

Metoda DELETE

Parametry požadavku DELETE:

Parametr

Popis

id

Povinný parametr (string) identifikující CA certifikát. Parametr id je přednastavené id nebo otisk (hash) certifikátu.

Odpověď je ve formátu application/json.

Příklad:

DELETE /api/cert/ca?fingerprint=4deea7060d80babf1643b4e0f0104c82995075b8			//požadavek
{																					//odpověď
  "success" : true
}
---
{																					//odpověď
  "success" : false,
  "error" : {
    "code" : 12,
    "param" : "id",
    "description" : "certificate not found",
    "data": "cert_not_found"
  }
}