XpsDigSigPartAlteringRestrictions 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
デジタル署名の範囲から除外される XPS Package のパーツを指定します。
この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。
public enum class XpsDigSigPartAlteringRestrictions
[System.Flags]
public enum XpsDigSigPartAlteringRestrictions
[<System.Flags>]
type XpsDigSigPartAlteringRestrictions =
Public Enum XpsDigSigPartAlteringRestrictions
- 継承
- 属性
フィールド
Annotations | 2 | 注釈パーツは除外されます。 |
CoreMetadata | 1 | コア プロパティ パーツは除外されます。 |
None | 0 | パーツは除外されません。 |
SignatureOrigin | 4 | 署名元パーツは除外されます。 |
例
次の例は、この列挙を使用して 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
注釈
この列挙型には、メンバー値のビットごとの組み合わせを許可する FlagsAttribute があります。
デジタル署名から除外するように指定されたパーツは、署名を無効にせずに変更できます。 たとえば、複数のユーザーがドキュメントに署名する場合、ドキュメントが最初に署名されたときに SignatureOrigin パーツを署名から除外する必要があります。 (除外は、呼び出しSignDigitallyのrestrictions
パラメーターで指定されます。) SignatureOrigin パーツが除外されていない場合、追加の署名は最初の署名者の署名を無効にします。
デジタル署名の詳細については、「 Open Packaging Conventions のデジタル署名フレームワーク」を参照してください。
コア プロパティおよび署名元パーツの詳細については、「Open Packaging Conventions 仕様の第 3 章」を参照してください。https://www.ecma-international.org/publications-and-standards/standards/ecma-376/