示例#1
0
        /// <summary>
        /// Loads an assertion from XML.
        /// </summary>
        /// <param name="element">The element.</param>
        /// <param name="trustedSigners">The trusted signers.</param>
        private void LoadXml(XmlElement element, IEnumerable <AsymmetricAlgorithm> trustedSigners)
        {
            _samlAssertion = element;
            if (trustedSigners != null)
            {
                if (!CheckSignature(trustedSigners))
                {
                    throw new Saml20Exception("Assertion signature could not be verified.");
                }
            }

            // Validate the saml20Assertion.
            if (_autoValidate)
            {
                AssertionValidator.ValidateAssertion(Assertion);
            }
        }
 /// <summary>
 /// Validates the assertion
 /// </summary>
 /// <param name="currentUtcTime"></param>
 public void Validate(DateTime currentUtcTime)
 {
     // Validate the saml20Assertion.
     AssertionValidator.ValidateAssertion(Assertion);
     AssertionValidator.ValidateTimeRestrictions(Assertion, TimeSpan.FromMinutes(_allowedClockSkewMinutes), currentUtcTime);
 }