Condividi tramite


CertStore_InstallRootCACertificate

Intestazione: #include <applicazioni/certstore.h>

Installa un certificato CA radice costituito da un certificato pubblico in formato PEM e assegna un ID al certificato. L'ID può quindi essere usato per fare riferimento al certificato in altre funzioni. Se un tipo di certificato è già installato con lo stesso ID, verrà sostituito con il nuovo certificato.

int CertStore_InstallRootCACertificate(const char *identifier, const char *certBlob,
                                       size_t certBlobLength);

Parametri

  • identifier ID del certificato.

  • certBlob Puntatore a un BLOB che contiene il certificato pubblico in formato PEM.

  • certBlobLength Lunghezza del BLOB del certificato, senza includere il carattere di terminazione Null.

Errori

Restituisce -1 se si verifica un errore e imposta errno il valore di errore.

  • EACCES: l'operazione non è consentita perché la funzionalità CertStore non è impostata nel manifesto dell'applicazione.

  • EAGAIN: il componente OS certstore non è ancora pronto.

  • EFAULT: o certBlobidentifier è NULL.

  • EINVAL: il identifier parametro non è terminato con NULL o include certBlob caratteri non validi.

  • ENOSPC: lo spazio di archiviazione del certificato per questo certificato non è sufficiente.

  • ERANGE: è certBlobLength uguale a zero o maggiore di CERTSTORE_MAX_CERT_SIZE.

Potrebbero anche essere specificati altri errno errori. Tali errori non sono deterministici e non vi è alcuna garanzia che lo stesso comportamento verrà mantenuto tramite gli aggiornamenti di sistema.

Valore restituito

Restituisce 0 per operazione riuscita o -1 per errore, nel qual caso errno è impostato sul valore di errore.

Osservazioni

Un identificatore valido deve essere una stringa univoca di lunghezza da uno a CERTSTORE_MAX_IDENTIFIER_LENGTH caratteri. In un identifer sono validi i caratteri seguenti:

  • 'A' a 'Z'
  • 'a' a 'z'
  • '0' a '9'
  • '.' oppure '-' o '_'

Attenzione

Poiché gli ID certificato sono a livello di sistema, un az sphere comando o una chiamata di funzione che aggiunge un nuovo certificato può sovrascrivere un certificato aggiunto da una chiamata di comando o funzione precedente, causando potenzialmente errori di connessione di rete. È consigliabile sviluppare procedure di aggiornamento dei certificati chiare e scegliere con attenzione gli ID certificato.

Per altre informazioni su come Azure Sphere usa gli ID certificato, vedere ID certificato .

Requisiti del manifesto dell'applicazione

Il manifesto dell'applicazione deve includere la funzionalità CertStore.