public void DefaultValues()
        {
            SamlAuthorizationDecisionStatement a = new SamlAuthorizationDecisionStatement();

            Assert.AreEqual(default(SamlAccessDecision), a.AccessDecision, "#1");
            Assert.IsNull(a.Evidence, "#2");
            Assert.IsNull(a.Resource, "#3");
            Assert.IsNull(a.SamlSubject, "#4");
            Assert.AreEqual(0, a.SamlActions.Count, "#5");
        }
        public void WriteXmlNoSubject()
        {
            SamlAuthorizationDecisionStatement a = new SamlAuthorizationDecisionStatement();

            StringWriter sw = new StringWriter();

            using (XmlDictionaryWriter dw = CreateWriter(sw)) {
                a.WriteXml(dw, new SamlSerializer(), null);
            }
        }
        public void WriteXmlNoResource()
        {
            SamlAuthorizationDecisionStatement a = new SamlAuthorizationDecisionStatement();

            a.SamlSubject = new SamlSubject("myFormat", "myQualifier", "myName");

            StringWriter sw = new StringWriter();

            using (XmlDictionaryWriter dw = CreateWriter(sw)) {
                a.WriteXml(dw, new SamlSerializer(), null);
            }
        }
        public void WriteXml1()
        {
            SamlAuthorizationDecisionStatement a = new SamlAuthorizationDecisionStatement();

            a.SamlSubject = new SamlSubject("myFormat", "myQualifier", "myName");
            a.Resource    = "resource";
            a.SamlActions.Add(new SamlAction("myAction"));
            a.Evidence = new SamlEvidence(new string [] { "myID" });

            StringWriter sw = new StringWriter();

            using (XmlDictionaryWriter dw = CreateWriter(sw)) {
                a.WriteXml(dw, new SamlSerializer(), null);
            }
            Assert.AreEqual(String.Format("<?xml version=\"1.0\" encoding=\"utf-16\"?><saml:AuthorizationDecisionStatement Decision=\"Permit\" Resource=\"resource\" xmlns:saml=\"{0}\"><saml:Subject><saml:NameIdentifier Format=\"myFormat\" NameQualifier=\"myQualifier\">myName</saml:NameIdentifier></saml:Subject><saml:Action>myAction</saml:Action><saml:Evidence><saml:AssertionIDReference>myID</saml:AssertionIDReference></saml:Evidence></saml:AuthorizationDecisionStatement>", SamlConstants.Namespace), sw.ToString());
        }
示例#5
0
        public void CompareSamlAuthorizationDecisionStatements()
        {
            TestUtilities.WriteHeader($"{this}.CompareSamlAuthorizationDecisionStatements", true);
            var context    = new CompareContext($"{this}.CompareSamlAuthorizationDecisionStatements");
            var samlAction = new SamlAction(Guid.NewGuid().ToString());
            var samlAttributeStatement1 =
                new SamlAuthorizationDecisionStatement(new SamlSubject(),
                                                       Guid.NewGuid().ToString(), Default.SamlAccessDecision, new List <SamlAction> {
                samlAction
            });
            var samlAttributeStatement2 =
                new SamlAuthorizationDecisionStatement(new SamlSubject(),
                                                       Guid.NewGuid().ToString(), Default.SamlAccessDecision, new List <SamlAction> {
                samlAction
            });

            IdentityComparer.AreEqual(samlAttributeStatement1, samlAttributeStatement2, context);

            Assert.True(context.Diffs.Count(s => s == "Resource:") == 1);
        }
        public void ReadXml1()
        {
            SamlSerializer      ser    = new SamlSerializer();
            string              xml    = String.Format("<saml:AuthorizationDecisionStatement Decision=\"Deny\" Resource=\"resource\" xmlns:saml=\"{0}\"><saml:Subject><saml:NameIdentifier Format=\"myFormat\" NameQualifier=\"myQualifier\">myName</saml:NameIdentifier></saml:Subject><saml:Action>myAction</saml:Action><saml:Evidence><saml:AssertionIDReference>myID</saml:AssertionIDReference></saml:Evidence></saml:AuthorizationDecisionStatement>", SamlConstants.Namespace);
            XmlDictionaryReader reader = CreateReader(xml);

            reader.MoveToContent();

            SamlAuthorizationDecisionStatement s =
                new SamlAuthorizationDecisionStatement();

            s.ReadXml(reader, ser, null, null);
            Assert.AreEqual(SamlAccessDecision.Deny, s.AccessDecision, "#1");
            Assert.IsNotNull(s.SamlSubject, "#2");
            Assert.AreEqual(1, s.SamlActions.Count, "#3");
            Assert.AreEqual("myAction", s.SamlActions [0].Action, "#4");
            Assert.IsNotNull(s.Evidence, "#5");
            Assert.AreEqual(1, s.Evidence.AssertionIdReferences.Count, "#6");
            Assert.AreEqual("myID", s.Evidence.AssertionIdReferences [0], "#7");
            Assert.AreEqual("resource", s.Resource, "#8");
        }
        public void SetResourceEmpty()
        {
            SamlAuthorizationDecisionStatement a = new SamlAuthorizationDecisionStatement();

            a.Resource = String.Empty;
        }
        public void SetEvidenceNull()
        {
            SamlAuthorizationDecisionStatement a = new SamlAuthorizationDecisionStatement();

            a.Evidence = null;
        }