Condividi tramite


Ricezione del certificato restituito

Quando l'autorità di certificazione (CA) ha verificato le informazioni sull'identità del richiedente ed è soddisfatto che il richiedente è il proprietario della chiave privata e che i dati relativi a tale richiedente siano accurati, la CA costruisce un certificato X.509, lo firma, lo crea con qualsiasi altro certificato necessario (ad esempio il certificato proprietario della CA) in un messaggio, e invia il messaggio al richiedente. Il messaggio può essere un messaggio PKCS #7 o una risposta CMC (I modelli V2 generano una risposta CMC).

L'applicazione di ricezione passa il messaggio al controllo Registrazione certificati. Il controllo Registrazione certificati apre quindi il messaggio ed estrae i certificati. L'utente viene richiesto con una finestra di dialogo che chiede se l'utente accetterà i certificati autofirmati nell'archivio "Radice". Se l'utente accetta il certificato radice, il resto dei certificati (ad eccezione del certificato del richiedente) viene inserito nell'archivio "CA". Il certificato del richiedente viene inserito nell'archivio certificati specificato dal richiedente nella proprietà MyStoreName .

Nell'esempio seguente viene illustrato come usare Visual Basic Scripting Edition (VBScript) e HTML in una pagina Web per ricevere e archiviare i certificati restituiti.

<HTML>
<TITLE>Certificate Enrollment Acceptance HTML Page
</TITLE>

<OBJECT  classid="clsid:127698E4-E730-4E5C-A2b1-21490A70C8A1"
    CODEBASE="xenroll.dll"
    id=IControl >
</OBJECT>

<SCRIPT language="VBScript">

<!--

Option Explicit 

'Accept the certificate subroutine.

Sub AcceptCertSub

On Error Resume Next

' Get the issued certificate.
' The following value, "PKCS7", represents the received message. 
' Actually, this value must be supplied through the design of
' the receiving application.
' A possible implementation is as follows: after using 
' ICertRequest.Submit to submit the PKCS #10, call 
' ICertRequest.GetLastStatus to confirm successful certificate 
' creation, and then call ICertRequest.GetCertificate to retrieve 
' the certificate.

document.result.result.value = "PKCS7"

    Call IControl.AcceptPKCS7(document.result.result.value)

    If err.Number = 0 Then
        navigate "..\done.htm"
    Else
        Alert "Error: " & Hex(err)
    End If

    End sub

    ' Decline the certificate sub-routine.
    Sub NoAcceptCertSub
    navigate "..\notdone.htm"
    End sub
-->
</SCRIPT>
</BODY>
</HTML>