2 // Signature.cs: Handles WS-Security Signature
5 // Sebastien Pouliot (spouliot@motus.com)
7 // (C) 2002, 2003 Motus Technologies Inc. (http://www.motus.com)
13 namespace Microsoft.Web.Services.Security {
15 public sealed class Signature : SignedXml, ISecurityElement {
17 private SecurityToken token;
18 private SignatureOptions options;
20 public Signature (SecurityToken token)
23 throw new ArgumentNullException ("token");
24 if (!token.SupportsDigitalSignature)
25 throw new ArgumentException ("!SupportsDigitalSignature");
29 public SecurityToken SecurityToken {
33 public SignatureOptions SignatureOptions {
34 get { return options; }
35 set { options = value; }
39 public override bool CheckSignature ()
41 // note: strangely this is the only (of 3) CheckSignature methods overriden !?!
42 return base.CheckSignature ();
46 public override XmlElement GetIdElement (XmlDocument document, string idValue)
48 return base.GetIdElement (document, idValue);
52 public void LoadXml (Security container, XmlElement value)
54 if (container == null)
55 throw new ArgumentNullException ("container");
58 throw new SecurityFault ("value == null", null);