public void KentorAuthServicesSection_Attributes_LoadedFromConfig() { var expected = new AttributeConsumingService("SP") { IsDefault = true }; expected.RequestedAttributes.Add( new RequestedAttribute("urn:someName") { FriendlyName = "Some Name", NameFormat = RequestedAttribute.AttributeNameFormatUri, IsRequired = true }); expected.RequestedAttributes.Add( new RequestedAttribute("Minimal") { FriendlyName = null, NameFormat = RequestedAttribute.AttributeNameFormatUnspecified, IsRequired = false }); var subject = KentorAuthServicesSection.Current.AttributeConsumingServices.Single(); subject.ShouldBeEquivalentTo(expected); }
public void SPOptionsExtensions_CreateMetadata_IncludeAttributeConsumingService() { var spOptions = StubFactory.CreateSPOptions(); var urls = StubFactory.CreateAuthServicesUrls(); var attributeConsumingService = new AttributeConsumingService("Name"); spOptions.AttributeConsumingServices.Clear(); spOptions.AttributeConsumingServices.Add(attributeConsumingService); attributeConsumingService.RequestedAttributes.Add(new RequestedAttribute("AttributeName")); var subject = spOptions .CreateMetadata(urls) .RoleDescriptors .Cast<ExtendedServiceProviderSingleSignOnDescriptor>() .First(); subject.AttributeConsumingServices.First().Should().BeSameAs(attributeConsumingService); }
private static void AddAttributeConsumingServices(SPOptions options) { var a1 = new RequestedAttribute("urn:attributeName") { FriendlyName = "friendlyName", NameFormat = RequestedAttribute.AttributeNameFormatUri, AttributeValueXsiType = ClaimValueTypes.String, IsRequired = true }; a1.Values.Add("value1"); a1.Values.Add("value2"); var a2 = new RequestedAttribute("someName"); var acs = new AttributeConsumingService("attributeServiceName") { IsDefault = true }; acs.RequestedAttributes.Add(a1); acs.RequestedAttributes.Add(a2); options.AttributeConsumingServices.Add(acs); }
private static SPOptions CreateSPOptions() { var swedish = CultureInfo.GetCultureInfo("sv-se"); var organization = new Organization(); organization.Names.Add(new LocalizedName("Kentor", swedish)); organization.DisplayNames.Add(new LocalizedName("Kentor IT AB", swedish)); organization.Urls.Add(new LocalizedUri(new Uri("http://www.kentor.se"), swedish)); var spOptions = new SPOptions { EntityId = new EntityId("http://*****:*****@example.com"); spOptions.Contacts.Add(techContact); var supportContact = new ContactPerson { Type = ContactType.Support }; supportContact.EmailAddresses.Add("*****@*****.**"); spOptions.Contacts.Add(supportContact); var attributeConsumingService = new AttributeConsumingService("AuthServices") { IsDefault = true, }; attributeConsumingService.RequestedAttributes.Add( new RequestedAttribute("urn:someName") { FriendlyName = "Some Name", IsRequired = true, NameFormat = RequestedAttribute.AttributeNameFormatUri }); attributeConsumingService.RequestedAttributes.Add( new RequestedAttribute("Minimal")); spOptions.AttributeConsumingServices.Add(attributeConsumingService); spOptions.SystemIdentityModelIdentityConfiguration.AudienceRestriction.AudienceMode = AudienceUriMode.Never; return spOptions; }