Ejemplo n.º 1
0
        public void Does_Not_Throw_Any_Exception_When_Validating_Invalid_Assertions()
        {
            // Arrange
            Assertion firstValidAssertion = CreateValidAssertion();
            Assertion secondValidAssertion = CreateValidAssertion();

            var group = new AssertionGroup();
            group.Add(firstValidAssertion);
            group.Add(secondValidAssertion);

            var validator = new AssertionValidator(group);

            // Act/Assert
            Assert.DoesNotThrow(() => validator.Validate());
        }
Ejemplo n.º 2
0
        public void Throws_An_Exception_When_Validating_Invalid_Assertions()
        {
            // Arrange
            Assertion validAssertion = CreateValidAssertion();
            Assertion invalidAssertion = CreateInvalidAssertion();

            var group = new AssertionGroup();
            group.Add(validAssertion);
            group.Add(invalidAssertion);

            var validator = new AssertionValidator(group);

            // Act/Assert
            Assert.Throws<AssertionInvalidException>(() => validator.Validate());
        }
Ejemplo n.º 3
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);
            }
        }
Ejemplo n.º 4
0
 /// <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);
 }