Il ciclo del certificato OV/EV è composto da questi punti principali:
Una volta emesso un certificato, puoi eseguire una di queste azioni:
Per costruire il corpo della tua richiesta e inviare una richiesta d’ordine, devi raccogliere alcune informazioni importanti:
Una volta raccolti i nomi dominio da proteggere con il certificato, devono essere inseriti in uno dei due parametri del corpo della richiesta.
Parametro | Tipo | Descrizione |
---|---|---|
common_name
|
stringa | Dominio principale da proteggere con il certificato. |
dns_names
|
matrice |
Qualsiasi dominio aggiuntivo da proteggere con il certificato. L’aggiunta di domini a questo parametro può prevedere costi aggiuntivi. |
Tutti gli ordini di certificato OV/EV ti consentono di includere gratuitamente un altro SAN specifico sui certificati single domain. Quando costruisci il corpo della tua richiesta, aggiungi il dominio base ([il tuo dominio].com) al parametro common_name
, quindi l’altra versione del dominio (www.[il tuo dominio].com) alla matrice dns_names
.
La CSR deve essere generata sul server dove sarà installato il certificato. Una volta generata, inserisci la CSR formattata PEM nel parametro csr
del corpo della richiesta. Per ulteriori informazioni consulta Crea una CSR (richiesta di firma certificato).
Quando si ordina un certificato, devi specificare il periodo di validità del certificato. Puoi usare uno qualsiasi di questi parametri per determinare per quanto tempo sarà valido un certificato.
Parametro | Tipo | Descrizione |
---|---|---|
validity_years
|
int |
Usa questo parametro quando specifichi la validità del certificato in anni. Valori consentiti: 1 , 2
|
validity_days
|
int | Usa questo parametro quando specifichi la validità del certificato in giorni. |
custom_expiration_date
|
stringa |
Usa questo parametro per specificare una data specifica in cui scadrà il certificato. Formato: yyyy-MM-dd
|
Se nel corpo della richiesta vengono inclusi più parametri di validità, li prioritizziamo come segue: custom_expiration_date
> validity_days
> validity_years
.
DCV e-mail è il metodo DCV predefinito usato per gli ordini di certificato OV/ EV. Se lo desideri, puoi cambiare il metodo DCV predefinito includendo il parametro dcv_method
nel corpo della richiesta. Il parametro dcv_method
accetta questi valori:
Valore | Descrizione |
---|---|
email
|
Invia e-mail DCV a tutti gli indirizzi e-mail (ad es. amministratore e contatti tecnici) che troviamo nel record WHOIS del dominio e ai cinque indirizzi e-mail costruiti per il dominio (admin, amministratore, webmaster, hostmaster e postmaster @[domain_name]). Quando usi questo metodo, puoi definire un ambito di e-mail specifico includendo l’oggetto dcv_emails .
|
dns-cname-token
|
Riporta un token di valore casuale nel corpo della risposta da aggiungere ad un record DNS CNAME sul dominio. L’uso di questo metodo richiede la possibilità di modificare i record DNS del dominio. |
dns‑txt‑token
|
Riporta un token di valore casuale nel corpo della risposta da aggiungere ad un record DNS TXT sul dominio. L’uso di questo metodo richiede la possibilità di modificare i record DNS del dominio. |
http‑token
|
Riporta un token di valore casuale nel corpo della risposta da posizionare in un file .txt sul sito web da proteggere con il certificato. L’uso di questo metodo richiede la possibilità di caricare i file nel server web. |
Consulta Dimostra il controllo sui domini in un tuo ordine di certificato in sospeso per ulteriori informazioni sui diversi metodi DCV e su come completarli.
Quando si usa il metodo DCV e-mail, è possibile specificare gli indirizzi e-mail che devono essere usati quando si inviano le e-mail DCV. Per farlo, includi la matrice dcv_emails
nel corpo della richiesta e aggiungi una voce per ciascun dominio sull’ordine.
Quando si usa questo parametro, gli indirizzi e-mail inseriti devono essere specificati nel record WHOIS del dominio o devono essere uno degli indirizzo e-mail predefiniti per il dominio (definito dagli standard di settore come: admin, amministratore, webmaster, hostmaster e/o postmaster @[domain_name]). Inoltre, invieremo l’e-mail DCV solo agli indirizzi specificati.
Ad esempio, se specifichi mario.bianchi@[domain_name], non invieremo e-mail DCV a nessuno degli indirizzi e-mail predefiniti. Oppure se specifichi admin@[dominio.com], non invieremo l’e-mail DCV a mario.bianchi@[domain_name].
"dcv_emails": [
{
"dns_name": "example.com",
"email_domain": "example.com",
"email": "hostname@example.com"
},
{
"dns_name": "my.example.com",
"email_domain": "example.com",
"email": "admin@example.com"
},
{
"dns_name": "another.example.com",
"email_domain": "example.com",
"email": "admin@example.com"
}
]
Ora che hai raccolto le informazioni sopra indicate, sei pronto per costruire il corpo della tua richiesta e inviare la tua richiesta d’ordine. Ciò avviene con un POST all’endpoint Ordina OV/EV SSL. Nota: la linea di prodotti Secure Site viene ordinata tramite un endpoint separato.
I dettagli organizzazione e i contatti vengono inviati qui nell’oggetto organization
. Se l’organizzazione ha già un ID assegnato, puoi semplicemente passarlo con la stringa id
anziché fornire le informazioni organizzazione complete.
Un POST corretto a questo endpoint riporterà un codice di risposta HTTP 201 creato. Il corpo della risposta include alcune informazioni importanti che vengono usate per controllare lo stato dell’ordine e scaricare il certificato una volta emesso.
id
– ID ordine usato per controllare i dettagli dell’ordine ed eseguire le azioni DCV.certificate_id
– ID certificato usato per scaricare il certificato emesso.dcv_random_value
– Token generato casualmente usando per i metodi DCV dns-txt-token e http-token. Questo token scade dopo 30 giorni.Per altre informazioni su ciascun parametro usato nel corpo della richiesta, consulta la tabella Ordina OV/EV SSL – Parametri della richiesta.
curl -X POST \
'https://www.digicert.com/services/v2/order/certificate/{{ssl_certificate_id}}' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d '{
"certificate": {
"common_name": "example.com",
"dns_names": [
"sub.example.com",
"app.example.com"
],
"csr": "<csr>",
"server_platform": {
"id": 45
},
"signature_hash": "sha256",
"organization_units": [
"Accounting department"
]
},
"validity_years": 2,
"comments": "Message for the approver",
"disable_renewal_notifications": true,
"locale": "en",
"dcv_emails": [
{
"dns_name": "example.com",
"email_domain": "example.com",
"email": "hostname@example.com"
},
{
"dns_name": "sub.example.com",
"email_domain": "example.com",
"email": "admin@example.com"
},
{
"dns_name": "app.example.com",
"email_domain": "example.com",
"email": "admin@example.com"
}
]
"payment_method": "balance",
"organization": {
"name": "Epigyne Unwieldiness llc",
"assumed_name": "Epigyne Unwieldiness",
"country": "us",
"address": "932 Prospect Street",
"address2": "Floor 08",
"city": "Minneapolis",
"state": "mn",
"zip": "40849",
"telephone": "666-186-6450",
"container": {
"id": 93288
},
"organization_contact": {
"first_name": "Gia",
"last_name": "Booth",
"job_title": "Clinical Laboratory Technician",
"email": "gia.booth@inbox.com",
"telephone": "666-186-6450",
"telephone_extension": "736"
}
},
"custom_fields": [
{
"metadata_id": 11,
"value": "Invoice #00001"
}
]
}'
{
"id": 112233,
"certificate_id": 123456
}
{
"id": 112233,
"certificate_id": 123456,
"dcv_random_value": "icru1984rnekfj"
}
Dopo aver inviato l’ordine, puoi usare l’endpoint Informazioni sull'ordine per ottenere i dettagli sull’ordine e revisionare le informazioni inviate.
Dopo aver effettuato un ordine, talvolta potresti doverlo annullare. Per annullare un ordine, devi cambiare lo stato da in attesa ad annullato. Ciò avviene con un PUT all’endpoint Aggiorna stato ordine.
Un PUT corretto a questo endpoint genera una risposta HTTP 204 nessun contenuto.
Il parametro status
consente solo un valore CANCELED
(osserva le maiuscole/minuscole).
curl -X PUT \
'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/status' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d '{
"status": "CANCELED",
"note": "Message about the cancellation."
}'
// empty
Con l’ordine OV/EV inviato, ora devi dimostrare il controllo sui domini indicati nell’ordine.
Indipendentemente dal metodo DCV scelto, devi completare la DCV per ciascun dominio da proteggere con il certificato. Ad esempio, se è stato scelto il metodo dns-txt-token
, devi creare un record DNS TXT per ciascun dominio indicato sull’ordine.
Se la matrice dcv_emails
è stata inclusa nel corpo della risposta, le e-mail DCV vengono inviate agli indirizzi definiti nella matrice. Diversamente, le e-mail DCV vengono inviate a questi indirizzi:
Per completare la DCV e-mail, nella casella di posta client della tua e-mail individua l’e-mail con l’oggetto [Azione necessaria] Approva la richiesta di certificato per[iltuodominio] {Ordine n.} e segui le istruzioni.
Se devi reinviare le e-mail DCV per un ordine inviato, puoi usare l’endpoint Invia di nuovo e-mail (sostituisci il segnaposto {{order_id}} con l’ID ordine riportato nel corpo della risposta quando hai inviato l’ordine).
Segui questa procedura per completare DNS CNAME DCV e dimostrare il controllo sui tuoi domini:
dcv_random_value
che è stato generato quando è stato effettuato l’ordine. Per gli ordini OV/EV, puoi recuperare questo valore usando l’endpoint info dominio e includendo la stringa di query URL include_dcv=true.Una volta che hai aggiunto il record DNS CNAME per tutti i domini sull’ordine, sei pronto per chiederci di verificare i record CNAME.
Segui questa procedura per completare DNS TXT DCV e dimostrare il controllo sui tuoi domini:
dcv_random_value
che è stato generato quando è stato effettuato l’ordine. Per gli ordini OV/EV, puoi recuperare questo valore usando l’endpoint info dominio e includendo la stringa di query URL include_dcv=true.Una volta che hai aggiunto il record DNS TXT per tutti i domini sull’ordine, sei pronto per chiederci di verificare i record TXT.
Segui questa procedura per completare la HTTP token DCV e dimostrare il controllo sui tuoi domini:
Con il token casuale aggiunto al record DNS TXT (metodo DNS TXT) o il fileauth.txt caricato nella posizione specificata (metodo HTTP DCV) per ciascun dominio sull’ordine, sei pronto per eseguire una verifica DCV. Ciò avviene tramite la pagina Dettagli ordine in CertCentral.
Nella sezione Stato ordine della pagina, fai clic su ciascun dominio ancora elencato come DCV in attesa, quindi fai clic su "Verifica" per controllare e confermare il metodo DCV.
Oltre alla convalida dominio, tutti gli ordini OV/EV richiedono anche la convalida organizzazione. Una volta inviato un ordine, il team di convalida di DigiCert inizierà a lavorare sul processo di convalida organizzazione OV/EV.
La convalida sia organizzazione che dominio deve essere completata prima di poter emettere il certificato.
Puoi controllare lo stato convalida attuale per un’organizzazione con un GET nell’endpoint dettagli convalida organizzazione.
Un GET corretto a questo endpoint genera una risposta HTTP 200 OK.
curl -X GET \
'https://www.digicert.com/services/v2/organization/{{organization_id}}/validation' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}'
{
"validations": [
{
"type": "ov",
"name": "OV",
"description": "Normal Organization Validation",
"status": "pending"
},
{
"type": "ev",
"name": "EV",
"description": "Extended Organization Validation (EV)",
"status": "pending",
"verified_users": [
{
"id": 12,
"first_name": "John",
"last_name": "Smith"
}
]
}
]
}
Dopo aver inviato il tuo ordine e completato la DCV per ciascun dominio, vorrai sapere quando lo stato dell’ordine cambia e quando il certificato è pronto per il download. Il modo migliore per farlo è con un GET all’endpoint elenco di modifica stato.
Un GET a questo endpoint riporta tre risposte possibili:
orders
) – La matrice degli ordini elenca tutti gli ordini che hanno lo stato cambiato nell’intervallo di tempo specificato. Quando lo stato dell’ordine cambia da in attesa a emesso, sarà visualizzato nell’elenco. Se vengono riportati più ordini, usa l’ID ordine o l’ID certificato per individuare l’ordine.{}
) significa che nessun ordine ha avuto un cambio di stato nell’intervallo di tempo specificato. Aumenta l’intervallo di tempo o aspetta di inviare un’altra richiesta.time_frame_too_long
significa che l’intervallo di tempo specificato nella stringa di query URL supera il valore massimo. Riduci l’intervallo di tempo ad un valore inferiore a 10.080 minuti (7 giorni).curl -X GET \
'https://www.digicert.com/services/v2/order/certificate/status-changes?minutes=10' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}'
{
"orders": [
{
"order_id": 112233,
"certificate_id": 123456,
"status": "issued"
}
]
}
{}
{
"errors": [
{
"code": "time_frame_too_long",
"message": "An error occurred while processing your request."
}
]
}
Una volta che lo stato ordine cambia da in attesa a emesso, il tuo certificato è pronto per essere scaricato. In base alle tue esigenze, sono disponibili quattro endpoint che puoi usare per scaricare il tuo certificato:
La riemissione di un certificato ti consente di aggiungere, rimuovere o scambiare i nomi di dominio, aggiornare la CSR o cambiare l’hash firma di un certificato senza inviare un nuovo ordine. Un certificato riemesso avrà un nuovo ID certificato ma lo stesso ID ordine. Dopo l’approvazione di una riemissione, viene emesso un nuovo certificato che deve essere reinstallato.
Quando si riemette un certificato, devi fornire queste informazioni:
Anche se alcuni dei dettagli sopra riportati rimangono gli stessi, devi ancora includerli nella richiesta di riemissione.
Nota: determinate modifiche, come l'aggiunta di altri SAN (“dns_names”), possono prevedere costi aggiuntivi.
Potrebbe essere necessario eseguire la DCV per alcuni domini o per tutti.
L’endpoint Riemetti certificato accetta i seguenti parametri:
curl -X POST \
'https://www.digicert.com/services/v2/order/certificate/{{order_id}}/reissue' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d '{
"certificate": {
"common_name": "example.com",
"dns_names": [
"sub.example.com"
],
"csr": "<csr>",
"server_platform": {
"id": 2
},
"signature_hash": "sha256"
"skip_approval": true
}
}'
{
"id": 112233,
"requests": [
{
"id": 332211
}
]
}
{
"id": 112233,
"certificate_id": 111112
}
Dopo il completamento di una riemissione, scarica il nuovo certificato (consulta Scarica certificato).
Puoi richiedere uno storico completo delle riemissioni per un ordine usando l’endpoint Elenca riemissioni.
Una volta emesso l’ordine, puoi inviare una richiesta di revoca, se necessario.
Tutte le richieste di revoca devono essere approvate da un amministratore in CertCentral prima che DigiCert revochi il certificato. Questa fase di approvazione è necessaria e non può essere saltata.
Puoi revocare un certificato ricorrendo ad uno di questi due endpoint:
Entrambi gli endpoint usano gli stessi parametri del corpo della richiesta.
Dopo aver inviato la richiesta di revoca, la richiesta deve essere approvata da un amministratore usando l’endpoint Aggiorna stato richiesta.
curl -X PUT \
'https://www.digicert.com/services/v2/certificate/{{certificate_id}}/revoke' \
-H 'Content-Type: application/json' \
-H 'X-DC-DEVKEY: {{api_key}}' \
-d '{
"comments": "I no longer need this cert."
}'
{
"id": 1,
"date": "2016-02-10T17:06:15+00:00",
"type": "revoke",
"status": "pending",
"requester": {
"id": 14,
"first_name": "John",
"last_name": "Smith",
"email": "john.smith@digicert.com"
},
"comments": "I no longer need this cert."
}