private ApplicationServiceDescriptor CreateApplicationServiceDescriptor()
        {
            var applicationServiceDescriptor = new ApplicationServiceDescriptor();

            applicationServiceDescriptor.ProtocolsSupported.Add(new Uri(WSFederationConstants.Namespace));
            applicationServiceDescriptor.PassiveRequestorEndpoints.Add(new EndpointReference(_configuration.MultiProtocolIssuer.ReplyUrl.AbsoluteUri));
            return(applicationServiceDescriptor);
        }
Exemple #2
0
        private ApplicationServiceDescriptor GetApplicationServiceDescriptor()
        {
            var appDescriptor = new ApplicationServiceDescriptor();

            appDescriptor.ServiceDescription = ConfigurationRepository.Global.SiteName;
            appDescriptor.Keys.Add(GetSigningKeyDescriptor());

            appDescriptor.PassiveRequestorEndpoints.Add(new EndpointReference(_endpoints.WSFederationHRD.AbsoluteUri));
            appDescriptor.TokenTypesOffered.Add(new Uri(TokenTypes.OasisWssSaml11TokenProfile11));
            appDescriptor.TokenTypesOffered.Add(new Uri(TokenTypes.OasisWssSaml2TokenProfile11));

            ClaimsRepository.GetSupportedClaimTypes().ToList().ForEach(claimType => appDescriptor.ClaimTypesOffered.Add(new DisplayClaim(claimType)));
            appDescriptor.ProtocolsSupported.Add(new Uri("http://docs.oasis-open.org/wsfed/federation/200706"));

            return(appDescriptor);
        }
        private ApplicationServiceDescriptor GetApplicationDescriptor(string wsfedEndpoint, X509Certificate2 cert)
        {
            var tokenService = new ApplicationServiceDescriptor();

            tokenService.ServiceDescription = "poc";
            tokenService.Keys.Add(GetEncryptionDescriptor(cert));
            tokenService.Keys.Add(GetSigningKeyDescriptor(cert));

            tokenService.PassiveRequestorEndpoints.Add(new EndpointReference(wsfedEndpoint));
            tokenService.Endpoints.Add(new EndpointReference(wsfedEndpoint));

            tokenService.TokenTypesOffered.Add(new Uri("http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1"));
            tokenService.TokenTypesOffered.Add(new Uri("http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0"));
            tokenService.ProtocolsSupported.Add(new Uri("http://docs.oasis-open.org/wsfed/federation/200706"));

            return(tokenService);
        }
        public void ShouldRoundTripApplicationService()
        {
            var descriptor = new ApplicationServiceDescriptor();
            var applicationServiceEndpoint = new EndpointReferenceCollection();

            applicationServiceEndpoint.Add(new EndpointReference {
                Address = new Uri("https://notused")
            });
            descriptor.ApplicationServiceEndpoint.Add(applicationServiceEndpoint);
            descriptor.ProtocolsSupported.Add(new Uri("http://docs.oasis-open.org/wsfed/federation/200706"));

            var xml = _serializer.WriteRoleDescriptor(descriptor);

            var deserialized = _serializer.ReadRoleDescriptor(xml);

            Assert.IsType <ApplicationServiceDescriptor>(deserialized);
            AssertEqual(descriptor, deserialized);
        }
        private ApplicationServiceDescriptor GetApplicationDescriptor(string wsfedEndpoint)
        {
            var tokenService = new ApplicationServiceDescriptor();

            tokenService.ServiceDescription = _options.SiteName;
            tokenService.Keys.Add(GetEncryptionDescriptor());
            tokenService.Keys.Add(GetSigningKeyDescriptor());

            tokenService.PassiveRequestorEndpoints.Add(new EndpointReference(wsfedEndpoint));
            tokenService.Endpoints.Add(new EndpointReference(wsfedEndpoint));

            tokenService.TokenTypesOffered.Add(new Uri(TokenTypes.OasisWssSaml11TokenProfile11));
            tokenService.TokenTypesOffered.Add(new Uri(TokenTypes.OasisWssSaml2TokenProfile11));
            tokenService.TokenTypesOffered.Add(new Uri(TokenTypes.JsonWebToken));

            tokenService.ProtocolsSupported.Add(new Uri("http://docs.oasis-open.org/wsfed/federation/200706"));

            return(tokenService);
        }