Condividi tramite


Personalizzazione delle pagine di registrazione Web di Servizi certificati

Servizi certificati fornisce pagine di registrazione Web che possono essere usate per richiedere i certificati. Un amministratore può personalizzare alcuni degli elementi che possono essere visualizzati nelle pagine di registrazione Web; Tuttavia, è necessario avere familiarità con le pagine di registrazione Web e lo scripting Web prima di apportare modifiche. Per altre informazioni sullo scripting Web, vedere Scripting.

I valori predefiniti per i campi Nome distinto per Organizzazione, Unità organizzativa, Località, Stato e Paese/Area sono i valori specificati per l'autorità di certificazione (CA) quando i servizi certificati sono installati. Questi valori predefiniti vengono visualizzati nelle pagine Web e possono essere modificati dall'utente durante il processo di registrazione del certificato. Tuttavia, se si desidera che vengano visualizzati altri valori predefiniti nelle pagine Web, è possibile modificare il file Certdat.inc (nel percorso \WindowsDirectory\System32\Certsrv\); in particolare, è possibile assegnare valori personalizzati alle variabili seguenti fornite per la personalizzazione.

Variabile Descrizione
sDefaultCompany Società predefinita (visualizzata nella richiesta di certificato come campo Organizzazione X.509 ).
sDefaultOrgUnit Reparto predefinito (visualizzato nella richiesta di certificato come campo Unità organizzativa X.509).
sDefaultLocality Città predefinita (visualizzata nella richiesta di certificato come campo Posizione X.509).
sDefaultState Stato/provincia predefinito (visualizzato nella richiesta di certificato come campo Stato X.509).
sDefaultCountry Paese/area geografica predefinita (visualizzata nella richiesta di certificato come campo Paese/area geografica X.509).
nPendingTimeoutDays Numero di giorni in cui l'utente può recuperare un certificato in sospeso dopo la richiesta.

 

Nessun'altra variabile deve essere modificata nel file Certdat.inc.

Nell'esempio seguente viene impostata l'unità organizzativa predefinita su "Marketing".

sDefaultOrgUnit="Marketing"

È inoltre possibile modificare il file Certrqtp.inc per aggiungere, modificare o rimuovere modelli di certificato o tipi disponibili per l'utente. Questi modelli e tipi, oltre alle informazioni correlate, sono contenuti in una matrice dimensione denominata rgAvailReqTypes(m,5).

Questa matrice, come tutte le matrici di Scripting Edition di Visual Basic, è basata su zero e, di conseguenza, la prima dimensione della matrice, m, alloca la memoria per gli elementi m+1. Pertanto, se si personalizzano le pagine Web, è necessario modificare il numero di elementi nella matrice rgAvailReqTypes, impostare la dimensione m su un numero inferiore al numero totale di elementi necessari. Ad esempio, se si avranno sette modelli di certificato, modificare la dichiarazione di rgAvailReqTypes, come illustrato nell'esempio seguente.

Dim rgAvailReqTypes(6,5)

La seconda dimensione della matrice, che ha sempre il valore cinque, alloca i sei campi che compongono ogni elemento. Questi sei campi rappresentano il modello di certificato o il tipo, il nome visualizzato associato a questo modello o tipo e se il modello richiede estensioni di posta Internet sicura/multiuso (S/MIME).

Per semplificare l'accesso a questi campi, Certrqtp.inc fornisce anche le costanti seguenti che è possibile usare durante l'impostazione dei valori di campo.

Costante Descrizione
FIELD_OID (Si applica a CA autonomi) Indicizzare il primo campo dell'elemento; rappresenta un identificatore di oggetto (OID) per un tipo di certificato.
FIELD_TEMPLATE (Si applica alle autorità di certificazione aziendali) Indicizzare il primo campo dell'elemento; rappresenta un modello di certificato.
FIELD_FRIENDLYNAME Indice al secondo campo dell'elemento; rappresenta il nome visualizzato (che l'utente visualizzerà durante la registrazione) dell'elemento nel primo campo.
FIELD_CSPLIST Indice al terzo campo dell'elemento. Elenco dei nomi del provider di servizi crittografici consentiti dal modello. Ogni nome nell'elenco è separato da un punto interrogativo (?).
FIELD_CSPLIST2 Indice al quarto campo dell'elemento. Elenco secondario dei nomi del provider di servizi di crittografia consentiti dal modello. Ogni nome nell'elenco è separato da un punto interrogativo (?). Questo elenco fornisce un valore predefinito diverso.
FIELD_EXPORTABLE Indice al quinto campo dell'elemento. Indica se il modello specifica che la chiave deve essere esportabile. Se questo campo contiene "True", la chiave è esportabile. Se questo campo contiene "False", la chiave non è esportabile.
FIELD_NEEDS_SMIME_CAPABILITIES Questa costante non è supportata.

 

Ad esempio, le espressioni seguenti assegnano l'OID della versione 1.3.6.1.5.5.7.3.2 al primo campo dell'elemento e assegnare "Certificato browser Web" al secondo campo (il valore della matrice di zero indicizza il primo elemento).

rgAvailReqTypes(0, FIELD_OID) = "1.3.6.1.5.5.7.3.2"
rgAvailReqTypes(0, FIELD_FRIENDLYNAME) = "Web Browser Certificate"

Il risultato di queste assegnazioni è che l'utente visualizzerà il testo certificato del Web Browser durante la registrazione e se l'utente seleziona il certificato del Web browser, la richiesta di certificato conterrà l'OID 1.3.6.1.5.5.7.3.2.

Il file Certrqtp.inc contiene anche costanti usate per i nomi visualizzati dei modelli o dei tipi di certificato. Nell'esempio seguente viene illustrato il formato.

' Strings for localization.
Const L_WebBrowserCert_Text="Web Browser Certificate"
Const L_EmailProtectionCert_Text="E-Mail Protection Certificate"
Const L_UserTemplateCert_Text="User Certificate"

Queste costanti sono definite in un blocco nel file Certrqtp.inc e questo raggruppamento semplifica l'assegnazione di ognuno di essi di un valore personalizzato. Ciò è particolarmente utile quando si localizzano i nomi visualizzati per le versioni internazionali delle pagine Web.

Infine, il file Certrqtp.inc contiene una variabile che rappresenta il numero di modelli di certificato o tipi nella matrice rgAvailReqTypes. Al contrario della dimensione m della matrice, impostare il valore della variabile nAvailReqTypes sul numero effettivo di modelli o tipi di certificato usati dall'installazione; questo valore non deve essere maggiore di m+1. Anche se dichiarato vicino alla parte superiore del file Certrqtp.inc, nAvailReqTypes viene assegnato un valore dopo che la matrice rgAvailReqTypes viene popolata, rendendo più semplice verificare il numero di elementi effettivamente usati dalla matrice. Il valore nAvailReqTypes viene usato in un'iterazione altrove nelle pagine di registrazione Web, pertanto è importante che questa variabile rifletta in modo accurato il numero di modelli o tipi di certificato che si desidera visualizzare all'utente.

Si noti che l'aggiunta di modelli di certificato e tipi al file Certrqtp.inc non garantisce che l'utente possa ottenere un certificato con tali tratti; la CA deve essere autorizzata a rilasciare un certificato per il modello di certificato o il tipo specificati.

Le installazioni possono creare applicazioni o pagine Web personalizzate per richiedere e ricevere un certificato. Gli oggetti ICEnroll4 e ICertRequest2 consentono ai programmatori o ai programmatori di creare applicazioni di richiesta di certificati .

Per richiedere l'emissione di un certificato in una smart card, è possibile usare il controllo registrazione smart card. Per informazioni dettagliate e codice di esempio, vedere ISCrdEnr.