public override SoapFilterResult ProcessMessage(SoapEnvelope envelope)
        {
            WSSecuritySignature <SoapEnvelope, X509Certificate2> signed = new WSSecuritySignature <SoapEnvelope, X509Certificate2>();

            X509Certificate2 certificate = new X509Certificate2(this.config.WebpayCert, this.config.Password, X509KeyStorageFlags.MachineKeySet);


            signed.Signature(envelope, certificate);
            return(SoapFilterResult.Continue);
        }
        public override SoapFilterResult ProcessMessage(SoapEnvelope envelope)
        {
            //Se crea una instancia de la componente “Intergrup.Core4.Soap.dll”
            WSSecuritySignature<SoapEnvelope, X509Certificate2> signed = new
            WSSecuritySignature<SoapEnvelope, X509Certificate2>();
            X509Certificate2 certificate = new CertManager(issuerCertificateName).Certificate;

            //Generar la firma digital
            signed.Signature(envelope, certificate);
            return SoapFilterResult.Continue;
        }
        public override SoapFilterResult ProcessMessage(SoapEnvelope envelope)
        {
            WSSecuritySignature <SoapEnvelope, X509Certificate2> signed = new WSSecuritySignature <SoapEnvelope, X509Certificate2>();

            X509Certificate2 certificate = new X509Certificate2(this.config.WebpayCertPath);

            if (signed.CheckSignature(envelope, certificate))
            {
                return(SoapFilterResult.Continue);
            }

            return(SoapFilterResult.Terminate);
        }