Export (0) Print
Expand All

XpsDigSigPartAlteringRestrictions Enumeration

Specifies the parts of the XPS Package that are excluded from the range of a digital signature.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

Namespace:  System.Windows.Xps.Packaging
Assembly:  ReachFramework (in ReachFramework.dll)

[FlagsAttribute]
public enum XpsDigSigPartAlteringRestrictions
<object property="enumerationMemberName" .../>

Member nameDescription
AnnotationsThe Annotations part is excluded.
CoreMetadataThe Core Properties part is excluded.
NoneNo parts are excluded.
SignatureOriginThe Signature Origin part is excluded.

This enumeration has a FlagsAttribute that allows a bitwise combination of its member values.

Parts that are specified as excluded from the digital signature can be modified without invalidating the signature. For example, if a document is to be signed by more than one person, the SignatureOrigin part needs to be excluded from the signature when the document is first signed. (Exclusions are specified in the restrictions parameter of the call to SignDigitally.) If the SignatureOrigin part is not excluded, any additional signatures invalidate the signature of the first signer.

For more information about digital signatures, see the MSDN article Digital Signing Framework of the Open Packaging Conventions available at http://go.microsoft.com/fwlink/?LinkId=74494.

For more information on the Core Properties and Signature Origin parts, see Chapter 3 of the Open Packaging Conventions specification available for download at http://go.microsoft.com/fwlink/?LinkID=71255.

The following example shows how to use this enumeration to digitally sign an XPS document.


        // ------------------------------ 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()

.NET Framework

Supported in: 4.6, 4, 3.5, 3.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft