XpsDigSigPartAlteringRestrictions Enumeração
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Especifica as partes do XPS Package que estão excluídas do alcance de uma assinatura digital.
Esta enumeração suporta uma combinação bit-a-bit dos respetivos valores membro.
public enum class XpsDigSigPartAlteringRestrictions
[System.Flags]
public enum XpsDigSigPartAlteringRestrictions
[<System.Flags>]
type XpsDigSigPartAlteringRestrictions =
Public Enum XpsDigSigPartAlteringRestrictions
- Herança
- Atributos
Campos
| Name | Valor | Description |
|---|---|---|
| None | 0 | Nenhuma parte é excluída. |
| CoreMetadata | 1 | A parte das Propriedades Centrais está excluída. |
| Annotations | 2 | A parte das Anotações está excluída. |
| SignatureOrigin | 4 | A parte da Origem da Assinatura está excluída. |
Exemplos
O exemplo seguinte mostra como usar esta enumeração para assinar digitalmente um documento XPS.
// ------------------------------ SignXps -----------------------------
/// <summary>
/// Signs an XPS document with a given X509 certificate, and if one
/// exists, associates the signature with a given SignatureDefintion
/// spotId GUID.</summary>
/// <param name="xpsDocument">
/// The XPS document to sign.</param>
/// <param name="cert">
/// The X509 certificate to use for signing.</param>
/// <param name="spotId">
/// The nullable spotId GUID of the signature definition.</param>
public void SignXps(
XpsDocument xpsDocument, X509Certificate cert, Guid? spotId )
{
// If there's a SignatureDefinition spotId,
// associate it with the signature.
if (spotId != null)
{
xpsDocument.SignDigitally(
cert, true, XpsDigSigPartAlteringRestrictions.None,
spotId.Value);
}
else
{
xpsDocument.SignDigitally(
cert, true, XpsDigSigPartAlteringRestrictions.None);
}
}// end:SignXps()
' ------------------------------ SignXps -----------------------------
''' <summary>
''' Signs an XPS document with a given X509 certificate, and if one
''' exists, associates the signature with a given SignatureDefintion
''' spotId GUID.</summary>
''' <param name="xpsDocument">
''' The XPS document to sign.</param>
''' <param name="cert">
''' The X509 certificate to use for signing.</param>
''' <param name="spotId">
''' The nullable spotId GUID of the signature definition.</param>
Public Sub SignXps(xpsDocument As XpsDocument, cert As X509Certificate, spotId? As Guid)
' If there's a SignatureDefinition spotId,
' associate it with the signature.
If spotId IsNot Nothing Then
xpsDocument.SignDigitally(cert, True, XpsDigSigPartAlteringRestrictions.None, spotId.Value)
Else
xpsDocument.SignDigitally(cert, True, XpsDigSigPartAlteringRestrictions.None)
End If
End Sub
Observações
Esta enumeração tem um FlagsAttribute que permite uma combinação bit a bit dos seus valores membros.
As partes especificadas como excluídas da assinatura digital podem ser modificadas sem invalidar a assinatura. Por exemplo, se um documento for assinado por mais do que uma pessoa, a parte SignatureOrigin precisa de ser excluída da assinatura quando o documento é assinado pela primeira vez. (As exclusões são especificadas no restrictions parâmetro da chamada para SignDigitally.) Se a parte SignatureOrigin não for excluída, quaisquer assinaturas adicionais invalidam a assinatura do primeiro signatário.
Para mais informações sobre assinaturas digitais, consulte o Quadro de Assinatura Digital das Convenções de Embalagem Aberta.
Para mais informações sobre as Propriedades Centrais e as peças Signature Origin, consulte o Capítulo 3 da especificação Open Packaging Conventions disponível para download em https://www.ecma-international.org/publications-and-standards/standards/ecma-376/.