Guida di riferimento di ActionScript® 3.0 per la piattaforma Adobe® Flash®
Home  |  Nascondi elenco pacchetti e classi |  Pacchetti  |  Classi  |  Novità  |  Indice  |  Appendici  |  Perché in inglese?
Filtri: AIR 30.0 e versioni precedenti, Flash Player 30.0 e versioni precedenti, Flash Lite 4
Flex 4.6 e versioni precedenti, Flash Pro CS6 e versioni precedenti
Nascondi filtri
flash.security 

XMLSignatureValidator  - AS3

Pacchettix

Primo livello
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Elementi del linguaggio

Costanti globali
Funzioni globali
Operatori
Istruzioni, parole chiave e direttive
Tipi speciali

Appendici

Novità
Errori del compilatore
Avvisi del compilatore
Errori runtime
Migrazione a ActionScript 3
Set di caratteri supportati
Tag solo di MXML
Elementi XML di Motion
Tag Timed Text
Elenco degli elementi obsoleti
Costanti di implementazione dell’accessibilità
Utilizzare gli esempi ActionScript
Note legali
Pacchettoflash.security
Classepublic class XMLSignatureValidator
EreditarietàXMLSignatureValidator Inheritance EventDispatcher Inheritance Object

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

La classe XMLSignatureValidator convalida se un file di firma XML è formato correttamente, non modificato e, facoltativamente, se è firmato mediante una chiave collegata a catena a un certificato digitale attendibile.

Supporto profili AIR: questa funzionalità è supportata in tutti i sistemi operativi desktop e nei dispositivi AIR per TV, ma non nei dispositivi mobili. È possibile verificare se la funzionalità è supportata in fase runtime utilizzando la proprietà XMLSignatureValidator.isSupported. Per ulteriori informazioni sul supporto delle API tra più profili, vedete Supporto dei profili AIR.

XMLSignatureValidator implementa un sottoinsieme della W3C Recommendation for XML-Signature Syntax and Processing (una specifica che regola la sintassi e l'elaborazione delle firme XML) e non deve essere considerata un'implementazione conforme. Il sottoinsieme supportato della specifica include:

  • tutta la sintassi di base per le firme, ad eccezione dell'elemento KeyInfo;
  • l'elemento KeyInfo supporta solo l'elemento X509Data;
  • l'elemento X509Data supporta solo l'elemento X509Certificate;
  • l'algoritmo del metodo digest SHA256;
  • l'algoritmo di firma PKCS1;
  • l'algoritmo Canonicalization Method and Transform "Canonical XML without comments";
  • l'elemento Manifest nella sintassi delle firme aggiuntiva.

Dovete fornire un'implementazione IURIDereferencer per poter verificare una firma XML. Questa classe di implementazione è responsabile della risoluzione degli URI specificati negli elementi SignedInfo del file della firma e della restituzione dei dati a cui si fa riferimento in un oggetto, ad esempio ByteArray, che implementa l'interfaccia IDataInput.

Per poter verificare che un certificato di firma sia collegato a catena a un certificato attendibile, la firma XML deve contenere i certificati richiesti per creare la catena negli elementi X509Certificate oppure dovete fornire i certificati richiesti per creare la catena utilizzando il metodo addCertificate().

Per verificare XMLSignature:

  1. Create un'istanza della classe XMLSignatureValidator.
  2. Impostate la proprietà uriDereferencer dell'istanza su un'istanza della classe di implementazione IURIDereferencer.
  3. Fornite dei certificati con codifica DER per creare la catena di attendibilità dei certificati, se desiderato, mediante il metodo addCertificate.
  4. Chiamate il metodo verify di XMLSignatureValidator, passando la firma da verificare.
  5. Verificate la proprietà validityStatus dopo che l'oggetto XMLSignatureValidator ha inviato un evento complete.

Informazioni sullo stato della firma:

Una firma può essere valida (valid), non valida (invalid) o sconosciuta (unknown). Lo stato complessivo dipende dallo stato della verifica dei singoli componenti del file della firma:

  • digestStatus: la validità della crittografia della firma calcolata sull'elemento SignedInfo. Può essere valid, invalid o unknown.
  • identityStatus: la validità del certificato di firma. Se il certificato è scaduto oppure è stato revocato o alterato, lo stato è invalid. Se il certificato non può essere collegato a catena a un certificato principale attendibile, lo stato è unknown. Il certificato non viene verificato se il valore del digest è invalid. Se non viene verificato, lo stato riportato è unknown.
  • referencesStatus: la validità dei dati specificati dai riferimenti nell'elemento SignedInfo del file della firma. Può essere valid, invalid o unknown. I riferimenti non vengono verificati se lo stato del digest o del certificato è invalid. La verifica dei riferimenti può anche essere evitata in base all'impostazione della proprietà referencesValidationSetting. Se non viene verificato, lo stato riportato è unknown.

La validità della firma riportata dalla proprietà validityStatus può essere:

  • valid: se referencesStatus, digestStatus e identityStatus sono tutti valid.
  • invalid: se uno dei singoli stati è invalid.
  • unknown: se referencesStatus, digestStatus o identityStatus è unknown.

Limitazioni della convenzionalizzazione:

Il motore XML in AIR non produce sempre la stringa XML prevista in caso di convenzionalizzazione di un documento XML. Per questo motivo, è consigliabile non inserire spazi vuoti tra elementi in documenti di firma protetti digitalmente o scollegati e non ridefinire spazi dei nomi all'interno di un documento di firma. In entrambi i casi, AIR potrebbe non ricreare il documento con la stessa sequenza di caratteri dell'originale e pertanto la convalida non riuscirebbe.

Vedere gli esempi

Altre informazioni

Elementi API correlati



Proprietà pubbliche
 ProprietàDefinito da
 Inheritedconstructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
Object
      digestStatus : String
[sola lettura] Lo stato di validità della firma crittografica calcolata sull'elemento firma SignedInfo.
XMLSignatureValidator
      identityStatus : String
[sola lettura] Lo stato di validità del certificato di firma.
XMLSignatureValidator
      isSupported : Boolean
[statico] [sola lettura] La proprietà isSupported è impostata su true se la classe XMLSignatureValidator è supportata nella piattaforma corrente, altrimenti è impostata su false.
XMLSignatureValidator
      referencesStatus : String
[sola lettura] Lo stato di validità dei dati nei riferimenti dell'elemento firma SignedInfo.
XMLSignatureValidator
      referencesValidationSetting : String
Specifica le condizioni nelle quali i riferimenti vengono verificati.
XMLSignatureValidator
      revocationCheckSetting : String
Specifica il modo in cui viene verificata la revoca dei certificati.
XMLSignatureValidator
      signerCN : String
[sola lettura] Il campo Common Name del certificato di firma.
XMLSignatureValidator
      signerDN : String
[sola lettura] Il campo Distinguished del certificato di firma.
XMLSignatureValidator
      signerExtendedKeyUsages : Array
[sola lettura] Un array che contiene gli Extended Key Usages OID elencati nel certificati di firma.
XMLSignatureValidator
      signerTrustSettings : Array
[sola lettura] Un array che contiene le impostazioni di attendibilità del certificato di firma.
XMLSignatureValidator
      uriDereferencer : IURIDereferencer
L'implementazione IURIDereferencer.
XMLSignatureValidator
      useSystemTrustStore : Boolean
Specifica che i certificati nell'archivio delle fonti attendibili del sistema vengono utilizzati per la creazione della catena.
XMLSignatureValidator
      validityStatus : String
[sola lettura] Lo stato di validità di una firma XML verificata.
XMLSignatureValidator
Metodi pubblici
 MetodoDefinito da
  
Crea un oggetto XMLSignatureValidator.
XMLSignatureValidator
  
    addCertificate(cert:ByteArray, trusted:Boolean):*
Aggiunge un certificato x509 per la creazione del catena.
XMLSignatureValidator
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
EventDispatcher
 Inherited
Invia un evento nel flusso di eventi.
EventDispatcher
 Inherited
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
EventDispatcher
 Inherited
Indica se per un oggetto è definita una proprietà specifica.
Object
 Inherited
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
Object
 Inherited
Indica se la proprietà specificata esiste ed è enumerabile.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Rimuove un listener dall'oggetto EventDispatcher.
EventDispatcher
 Inherited
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
Object
 Inherited
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate.
Object
 Inherited
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
Object
 Inherited
Restituisce il valore di base dell'oggetto specificato.
Object
  
    verify(signature:XML):void
Verifica la firma specificata.
XMLSignatureValidator
 Inherited
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
EventDispatcher
Eventi
 Evento Riepilogo Definito da
 Inherited[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR ottiene lo stato di attivazione del sistema operativo ed entra nello stato attivo.EventDispatcher
  
    complete
Inviato quando la verifica è stata completata.XMLSignatureValidator
 Inherited[evento di trasmissione] Inviato quando Flash Player o l'applicazione AIR perde l'attivazione del sistema operativo e sta entrando nello stato inattivo.EventDispatcher
  
    error
Inviato se la verifica non può essere completata a causa di errori.XMLSignatureValidator
Descrizione delle proprietà
    

digestStatus

proprietà
digestStatus:String  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Lo stato di validità della firma crittografica calcolata sull'elemento firma SignedInfo.

Lo stato è:

  • valid: se la firma dal punto di vista crittografico è valid.
  • invalid: se il digest è stato modificato dopo la firma.
  • unknown: se il metodo verify() non è stato chiamato.

Nota: se il valore di digestStatus è invalid, i valori di identityStatus e referencesStatus non vengono verificati e vengono segnalati come unknown.



Implementazione
    public function get digestStatus():String

Genera
IllegalOperationError — Se vi si accede mentre è in corso la convalida di una firma.
    

identityStatus

proprietà 
identityStatus:String  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Lo stato di validità del certificato di firma.

Lo stato dello script può essere:

  • valid: il certificato non è scaduto, non ha fallito una verifica delle revoche ed è collegato a catena a un certificato di una fonte attendibile.
  • unknown: il certificato non è scaduto e non ha fallito una verifica delle revoche, ma non è collegato a catena a un certificato di una fonte attendibile. Viene segnalato uno stato unknown anche quando lo stato non è stato verificato, sia perché il metodo verify() non è stato chiamato, sia perché la firma crittografica dell'elemento SignedInfo (digestStatus) è invalid.
  • invalid: il certificato è scaduto e ha fallito una verifica delle revoche.

I certificati aggiunti mediante il metodo addCertificate() e le impostazioni delle proprietà revocationCheckSetting e useSystemTrustStore possono variare se un certificato è considerato valido.

Nota: se il valore di identityStatus è invalid, il valore di referencesStatus non viene verificato e viene segnalato come unknown. Inoltre, i riferimenti non vengono verificati quando identityStatus è unknown, a meno che il valore di referencesValidationSetting non sia validOrUnknownIdentity.



Implementazione
    public function get identityStatus():String

Genera
IllegalOperationError — Se vi si accede mentre è in corso la convalida di una firma.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )
L'esempio seguente ottiene il risultato della convalida del certificato di firma (dopo che è stata convalidata una firma):
 import flash.security.XMLSignatureValidator;
 
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate a signature...
  
 var identityResult:String = verifier.identityStatus;
    

isSupported

proprietà 
isSupported:Boolean  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 2

La proprietà isSupported è impostata su true se la classe XMLSignatureValidator è supportata nella piattaforma corrente, altrimenti è impostata su false.



Implementazione
    public static function get isSupported():Boolean
    

referencesStatus

proprietà 
referencesStatus:String  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Lo stato di validità dei dati nei riferimenti dell'elemento firma SignedInfo.

Lo stato dello script può essere:

  • valid: se tutti i riferimenti sono valid.
  • invalid: se uno dei riferimenti è invalid.
  • unknown: se non è verificato. I riferimenti possono rimanere non verificati nelle seguenti circostanze:
    • Il metodo verify() non è stato chiamato.
    • La firma crittografica dell'elemento SignedInfo (digestStatus) non è valida.
    • Il certificato di firma (identityStatus) non è valido.
    • referencesValidationSetting è validIdentity (l'impostazione predefinita) e il valore di identityStatus del certificato di firma è unknown.
    • Il valore di referencesValidationSetting è never.

Importante: le risorse esterne non vengono convalidate a meno che non si faccia un riferimento diretto a esse in un elemento SignedInfo all'interno del documento della firma. Le risorse esterne a cui si riferisce un riferimento secondario non vengono convalidate. Ad esempio, se una firma XML accredita un elemento manifesto, viene verificata solo l'integrità dell'elemento manifesto. I file elencati nel manifesto non vengono verificati.



Implementazione
    public function get referencesStatus():String

Genera
IllegalOperationError — Se vi si accede mentre è in corso la convalida di una firma.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )
L'esempio seguente ottiene il risultato della convalida dei riferimenti nella firma (dopo che è stata convalidata):
 import flash.security.XMLSignatureValidator;
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate a signature...
  
 var dataResult:String = verifier.referencesStatus;
    

referencesValidationSetting

proprietà 
referencesValidationSetting:String

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.5

Specifica le condizioni nelle quali i riferimenti vengono verificati.

Utilizzate le costanti definite nella classe ReferencesValidationSetting per impostare questa proprietà. Le impostazioni comprendono:

  • ReferencesValidationSetting.VALID_IDENTITY: verifica i riferimenti solo se il certificato di firma è valido e collegato a un elemento superiore attendibile. Questa è l'impostazione predefinita.
  • ReferencesValidationSetting.VALID_OR_UNKNOWN_IDENTITY: verifica i riferimenti se il certificato di firma è valido, anche se non è collegato a un elemento cartella superiore attendibile.
  • ReferencesValidationSetting.NEVER: non verifica mai i riferimenti.

Utilizzate l'impostazione validIdentity predefinita con le firme fornite da un certificato commerciale o quando fornite un vostro certificato come trust anchor ("ancoraggio di attendibilità") con il metodo addCertificate(). Questa impostazione evita la ridondanza legata alla verifica della validità dei riferimento quando il documento firmato viene comunque rifiutato.

Utilizzate l'impostazione validOrUnknownIdentity con le firme fornite da certificati autofirmati. Questa impostazione consente di convalidare che i dati firmati non sono stati alterati, ma non fornisce alcuna garanzia sull'identità dell'autore della firma.

Utilizzate l'impostazione never per evitare la ridondanza legata alla convalida dei riferimenti quando tale convalida non è importante nel contesto dell'applicazione.



Implementazione
    public function get referencesValidationSetting():String
    public function set referencesValidationSetting(value:String):void

Genera
IllegalOperationError — Se impostato mentre è in corso la convalida di una firma.
 
ArgumentError — se il parametro setting contiene un valore non definito nella classe ReferencesValidationSetting.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente viene impostato l'oggetto XMLSignatureValidator per verificare i riferimenti solo se il certificato di firma è collegato a un come trust anchor ("ancoraggio di attendibilità"):
 import flash.security.ReferencesValidationSetting;
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator(); 
 verifier.referencesValidationSetting = ReferencesValidationSetting.VALID_OR_UNKNOWN_IDENTITY;
    

revocationCheckSetting

proprietà 
revocationCheckSetting:String

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Specifica il modo in cui viene verificata la revoca dei certificati.

Utilizzate le costanti definite nella classe RevocationSettings per impostare questa proprietà. Le impostazioni comprendono:

  • RevocationCheckSettings.NEVER: non verifica la revoca dei certificati.
  • RevocationCheckSettings.BEST_EFFORT: verifica la revoca dei certificati, se le informazioni sulla revoca sono disponibili ed è possibile ottenere lo stato della revoca. Se lo stato della revoca non può essere determinato positivamente, il certificato non viene rifiutato.
  • RevocationCheckSettings.REQUIRED_IF_AVAILABLE: se il certificato include informazioni sulla revoca, lo stato della revoca deve essere determinato positivamente per convalidare il certificato.
  • RevocationCheckSettings.ALWAYS_REQUIRED: verifica sempre la revoca dei certificati. I certificati senza informazioni sulla revoca vengono rifiutati.



Implementazione
    public function get revocationCheckSetting():String
    public function set revocationCheckSetting(value:String):void

Genera
IllegalOperationError — Se impostato mentre è in corso la convalida di una firma.

Elementi API correlati

    

signerCN

proprietà 
signerCN:String  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Il campo Common Name del certificato di firma.



Implementazione
    public function get signerCN():String

Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente viene letto il nome comune del certificato di firma (dopo che è stata convalidata una firma):
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate a signature...
  
 var commonName:String = verifier.signerCN;
    

signerDN

proprietà 
signerDN:String  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Il campo Distinguished del certificato di firma.



Implementazione
    public function get signerDN():String

Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente viene letto il nome distinto del certificato di firma (dopo che è stata convalidata una firma):
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate a signature...
  
 var distinguishedName:String = verifier.signerDN;
    

signerExtendedKeyUsages

proprietà 
signerExtendedKeyUsages:Array  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Un array che contiene gli Extended Key Usages OID elencati nel certificati di firma.

Ogni Extended Key Usage viene riportato in formato OID numerico.



Implementazione
    public function get signerExtendedKeyUsages():Array

Genera
IllegalOperationError — Se vi si accede mentre è in corso la convalida di una firma.

Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente vengono letti codici identificativi OID a chiave estesa del certificato di firma (dopo che è stata convalidata una firma):
 import flash.security.XMLSignatureValidator;
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate a signature...
  
 var extendedKeyOIDs:Array = verifier.signerExtendedKeyUsages;
    

signerTrustSettings

proprietà 
signerTrustSettings:Array  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Un array che contiene le impostazioni di attendibilità del certificato di firma.

Le impostazioni di attendibilità vengono derivate dal sistema e dai Key Usages OID di utilizzo principali incorporati nel certificato. Le costanti delle stringhe che rappresentano le impostazioni di attendibilità riconosciute nella classe SignerTrustSettings.

L'array signerTrustSettings di un certificato unknown o invalid è vuoto.

La modifica di un array non modifica le impostazioni di attendibilità del certificato.



Implementazione
    public function get signerTrustSettings():Array

Genera
IllegalOperationError — Se vi si accede mentre è in corso la convalida di una firma.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente vengono lette le impostazioni di attendibilità del certificato di firma (dopo che è stata convalidata una firma):
 import flash.security.XMLSignatureValidator;
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate a signature...
  
 var certificateTrustedFor:Array = verifier.signerTrustSettings;
    

uriDereferencer

proprietà 
uriDereferencer:IURIDereferencer

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

L'implementazione IURIDereferencer.

Un'implementazione IURIDereferencer deve essere fornita prima di tentare la verifica di una firma.



Implementazione
    public function get uriDereferencer():IURIDereferencer
    public function set uriDereferencer(value:IURIDereferencer):void

Genera
IllegalOperationError — Se impostato mentre è in corso la convalida di una firma.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente viene creata un'istanza di SignedMessageDereferencer, che implementa l'interfaccia IURIDereferencer e la imposta come dereferenziatore da utilizzare per la convalida della firma:
 import com.example.SignedMessageDereferencer; //A custom class implementing IURIDereferencer
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator(); 
 verifier.uriDereferencer = new SignedMessageDereferencer();
    

useSystemTrustStore

proprietà 
useSystemTrustStore:Boolean

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Specifica che i certificati nell'archivio delle fonti attendibili del sistema vengono utilizzati per la creazione della catena.

Se true, gli ancoraggi di attendibilità nell'archivio delle fonti attendibili vengono utilizzati come fonti attendibili. L'archivio delle fonti attendibili non viene utilizzato per impostazione predefinita.



Implementazione
    public function get useSystemTrustStore():Boolean
    public function set useSystemTrustStore(value:Boolean):void

Genera
IllegalOperationError — Se impostato mentre è in corso la convalida di una firma.

Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente viene creata un'istanza di XMLSignatureValidator, che viene impostata per utilizzare l'archivio di sistema dei certificati attendibili quando si convalida una firma XML:
 var verifier:XMLSignatureValidator = new XMLSignatureValidator(); 
 verifier.useSystemTrustStore = true;
    

validityStatus

proprietà 
validityStatus:String  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Lo stato di validità di una firma XML verificata.

La firma XML viene verificata convalidando la firma crittografica dell'elemento SignedInfo, il certificato di firma e i dati a cui si riferiscono i riferimenti presenti nell'elemento SignedInfo. La validità di ciascuno di questi elementi viene segnalata rispettivamente dalle proprietà digestStatus, identityStatus() e referencesStatus.

Una firma può essere valida (valid), non valida (invalid) o sconosciuta (unknown). Lo stato complessivo dipende dallo stato della verifica dei singoli componenti del file della firma:

  • digestStatus: la validità della firma crittografica calcolata sull'elemento SignedInfo.
  • identityStatus : la validità del certificato di firma.
  • referencesStatus: la validità del digest di tutti i riferimenti dell'elemento SignedInfo della firma.

La validità della firma riportata dalla proprietà validityStatus può essere:

  • valid: se referencesStatus, digestStatus e identityStatus sono tutti valid.
  • invalid: se uno dei singoli stati è invalid.
  • unknown: se uno qualunque dei singoli stati è unknown.



Implementazione
    public function get validityStatus():String

Genera
IllegalOperationError — Se vi si accede mentre è in corso la convalida di una firma.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )
Nell'esempio seguente viene ottenuto il risultato della convalida della firma XML.
 import flash.security.XMLSignatureValidator;
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 //validate the signature...
  
 var validationResult:String = verifier.validityStatus;
Descrizione della funzione di costruzione
    

XMLSignatureValidator

()Funzione di costruzione
public function XMLSignatureValidator()

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Crea un oggetto XMLSignatureValidator.

Dovete impostare la proprietà uriDereferencer prima di chiamare il metodo verify() del nuovo oggetto.

Elementi API correlati


Esempio  ( Come utilizzare questo esempio )

Nell'esempio seguente viene creato e impostato un nuovo oggetto XMLSignatureValidator:
 
import com.example.EnvelopedDereferencer; //Your custom IURIDereferencer implementation

//Create the object
var verifier:XMLSignatureValidator = new XMLSignatureValidator();

//Provide the IURIDerferencer
verifier.uriDereferencer = new EnvelopedDereferencer(xmlDoc);

//Set validation options
verifier.referencesValidationSetting = ReferencesValidationSetting.VALID_OR_UNKNOWN_IDENTITY;
verifier.revocationCheckSetting = RevocationCheckSettings.NEVER;
verifier.useSystemTrustStore = true;

//Add listeners to handle results
verifier.addEventListener(Event.COMPLETE, verificationComplete);
verifier.addEventListener(ErrorEvent.ERROR, verificationError);
Descrizione dei metodi

    addCertificate

()metodo
public function addCertificate(cert:ByteArray, trusted:Boolean):*

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Aggiunge un certificato x509 per la creazione del catena.

Il certificato aggiunto deve essere un certificato x509 con codifica DER.

Se il parametro trusted è true, il certificato viene considerato un ancoraggio di attendibilità.

Nota: una firma XML può comprendere i certificati per la creazione della catena dei certificati del firmatario. La classe XMLSignatureValidator utilizza questi certificati per la creazione della catena, ma non come fonte attendibile (per impostazione predefinita).

Parametri

cert:ByteArray — Un oggetto ByteArray che contiene un certificato digitale x509 con codifica DER.
 
trusted:Boolean — Impostate su true per designare questo certificato come ancoraggio di attendibilità.

Restituisce
*

Genera
IllegalOperationError — Se viene chiamato mentre è in corso la convalida di una firma.

Esempio  ( Come utilizzare questo esempio )

Nell'esempio seguente viene caricato un certificato dal file system, che viene aggiunto come ancoraggio di attendibilità.
 import flash.utils.ByteArray;
 
 var verifier:XMLSignatureValidator = new XMLSignatureValidator();
 var certificate:ByteArray = new ByteArray();
 
 var certFile:File = new File("certificate.cer");
 var certFileStream:FileStream = new FileStream();
 certFileStream.open(certFile, FileMode.READ);
 certFileStream.readBytes(certificate, 0, certFileStream.bytesAvailable);

 verifier.addCertificate(certificate, true);

    verify

()metodo 
public function verify(signature:XML):void

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Verifica la firma specificata.

La verifica è asincrona. L'oggetto XMLSignatureValidator invia un evento complete quando la verifica viene completata correttamente oppure un evento error se la verifica non può essere completata a causa di errori.

Il processo di verifica non può essere annullato. Mentre è in corso un processo di verifica, le successive chiamate al metodo verify() danno esito negativo. Una volta completata la verifica corrente, potete chiamare di nuovo il metodo verify().

Nota: poiché l'oggetto XMLSignatureValidator implementa solo un sottoinsieme della W3C Recommendation for XML Signature Syntax and Processing, non tutte le firme XML valide possono essere verificate.

Parametri

signature:XML — La firma XML da verificare.


Eventi
complete:Event — Inviato quando la verifica viene effettuata correttamente.
 
error:ErrorEvent — Inviato se la verifica dei riferimento incontra un errore.

Genera
IllegalOperationError — Se viene chiamato mentre è in corso la convalida di una firma.
 
Error — Se si verificano altri errori, ad esempio codice XML non formato correttamente o elementi non supportati nel file della firma.

Esempio  ( Come utilizzare questo esempio )

Nell'esempio seguente viene letto un file che contiene una firma XML, la quale viene convalidata mediante una chiamata al metodo verify(). (L'esempio presuppone che l'implementazione di IURIDereferencer sia appropriata per la firma).
import flash.filesystem.File;
import flash.filesystem.FileStream;
import com.example.SignedMessageDereferencer; //Your IURIDereferencer implementation
 
const xmlSignatureNS:Namespace = new Namespace( "http://www.w3.org/2000/09/xmldsig#" );

var verifier:XMLSignatureValidator = new XMLSignatureValidator();
verifier.uriDereferencer = new SignedMessageDereferencer();

var signatureFile:File = new File( "path/to/XMLSignatureDocument.xml" );
var sigFileStream:FileStream = new FileStream();
sigFileStream.open( signatureFile, FileMode.READ );

var xmlDoc:XML = XML( sigFileStream.readUTFBytes(sigFileStream.bytesAvailable) );
var xmlSig:XML = XML( xmlDoc..xmlSignatureNS::Signature );

verifier.verify( xmlSig );
Descrizione degli eventi
    

complete

Evento
Tipo di oggetto evento: flash.events.Event
proprietà Event.type = flash.events.Event.COMPLETE

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Inviato quando la verifica è stata completata.

Un evento complete non implica che la firma sia valida. Verificate la proprietà validityStatus dell'oggetto XMLSignatureValidator per determinare il risultato della verifica della firma.

La costante Event.COMPLETE definisce il valore della proprietà type di un oggetto evento complete.

Questo evento ha le seguenti proprietà:

ProprietàValore
bubblesfalse
cancelablefalse; non è presente alcun comportamento predefinito da annullare.
currentTargetL'oggetto che elabora attivamente l'oggetto Event con un listener di eventi.
targetL'oggetto di rete che ha completato il caricamento.

Esempio  ( Come utilizzare questo esempio )

L'esempio seguente attende l'evento complete inviato da un oggetto XMLSignatureValidator e traccia i risultati della convalida:
private function verificationComplete(event:Event):void{
    var validator:XMLSignatureValidator = event.target as XMLSignatureValidator;
    trace("Digest status: " + validator.digestStatus);
    trace("Identity status: " + validator.identityStatus);
    trace("Reference status: " + validator.referencesStatus);
    trace("Signature status: " + validator.validityStatus);    
}

Elementi API correlati

    

error

Evento  
Tipo di oggetto evento: flash.events.ErrorEvent
proprietà ErrorEvent.type = flash.events.ErrorEvent.ERROR

Versione linguaggio: ActionScript 3.0
Versioni runtime: AIR 1.0

Inviato se la verifica non può essere completata a causa di errori.

Definisce il valore della proprietà type di un oggetto evento error.

Questo evento ha le seguenti proprietà:

ProprietàValore
bubblesfalse
cancelablefalse; non è presente alcun comportamento predefinito da annullare.
currentTargetL'oggetto che elabora attivamente l'oggetto Event con un listener di eventi.
targetL'oggetto interessato da un errore di funzionamento di rete.
textTesto da visualizzare come messaggio di errore.

Esempio  ( Come utilizzare questo esempio )

L'esempio seguente attende l'evento di errore inviato da un oggetto XMLSignatureValidator e traccia il messaggio di errore:
private function verificationError(event:ErrorEvent):void{
    trace("Verification error: " + event.text);                
}
XMLSignatureValidatorExample.as

Nell'esempio seguente viene caricato e verificato un file che contiene una firma XML. Per utilizzare l'esempio, dovete implementare un IURIDereferencer appropriato per le firme da convalidare (sostituendo la classe SignedMessageDereferencer utilizzata nell'esempio). Eseguite l'esempio chiamando SignatureValidatorExample.validateSignature(signatureFile), passando il file che fa riferimento al documento della firma XML da convalidare.
import flash.events.Event;
import flash.filesystem.File;
import flash.filesystem.FileStream;
import flash.security.ReferencesValidationSetting;
import flash.security.XMLSignatureValidator; 

import com.example.SignedMessageDereferencer; //A custom class implementing IURIDereferencer

public class SignatureValidatorExample{ 
    private var xmlSig:XML;
    private const signatureNS:Namespace = new Namespace( "http://www.w3.org/2000/09/xmldsig#" );
    
    public static function validateSignature( signatureFile:File ):void{
        try{
            //Set up the XMLSignatureValidator
            var verifier:XMLSignatureValidator = new XMLSignatureValidator();
            verifier.addEventListener( Event.COMPLETE, verificationComplete );
            verifier.uriDereferencer = new SignedMessageDereferencer();
            verifier.referencesValidationSetting = ReferencesValidationSetting.VALID_OR_UNKNOWN_IDENTITY;
    
            //Load the signed document
            var sigFileStream:FileStream = new FileStream();
            sigFileStream.open( signatureFile, FileMode.READ );
            var xmlDoc:XML = XML( sigFileStream.readUTFBytes(sigFileStream.bytesAvailable) );
            
            //Get the last Signature element in the document
            if( xmlDoc.name().localName != "Signature" ){
                var signatureList:XMLList = xmlDoc..signatureNS::Signature;
                xmlSig = XML( signatureList[ signatureList.length()-1 ] );
            } else{
                xmlSig = xmlDoc;
            }
    
            //Validate the signature
            verifier.verify( xmlSig );
            
        }catch (e:Error){
            statusDisplay.text = "Verification error.\n" + e;
        }
    }
    
    private static function verificationComplete(event:Event):void{
        trace( "Signature Validity: " + verifier.validityStatus );
        trace( "Digest validity: " + verifier.digestStatus );
        trace( "Certificate validity: " + verifier.identityStatus );
        trace( "Data validity: " + verifier.referencesStatus );
    }
}




[ X ]Perché in inglese?
Il contenuto della Guida di riferimento di ActionScript 3.0 appare in inglese

Non tutte le parti della Guida di riferimento di ActionScript 3.0 sono tradotte in tutte le lingue. Quando un elemento del linguaggio non è tradotto, viene riportato in inglese. Ad esempio, la classe ga.controls.HelpBox non è tradotta in nessuna lingua. Pertanto, nella versione italiana della guida di riferimento, la descrizione della classe ga.controls.HelpBox è riportata in inglese.