public static void ConfigureWsFederatedWebsites(IAppBuilder app, IEnumerable <SiteInfo> siteInfoList) { IEnumerable <WsFederatedSiteInfo> sites = siteInfoList.Select(s => new WsFederatedSiteInfo(s)).Where(s => s.IsFederated); foreach (WsFederatedSiteInfo site in sites) { app.MapWhen( ctx => ctx.MapDomain(site.Realm), conf => { CookieAuthentication.ConfigureCookieAuthentication(conf); conf.UseWsFederationAuthentication( new WsFederationAuthenticationOptions { UseTokenLifetime = true, MetadataAddress = site.MetadataAddress, Wtrealm = "https://" + site.Realm, Wreply = site.ReplyUrl, TokenValidationParameters = new TokenValidationParameters { NameClaimType = site.NameClaimType, ValidAudiences = new List <string> { "https://" + site.Realm.WithPostfix('/') } } }); }); } }
public static void ConfigureOauthWebsites(IAppBuilder app, IEnumerable <SiteInfo> siteInfoList) { IEnumerable <OAuthSiteInfo> sites = siteInfoList.Select(s => new OAuthSiteInfo(s)).Where(s => s.UsesOauth); foreach (OAuthSiteInfo site in sites) { app.MapWhen( ctx => ctx.MapDomain(site.HostName) && ctx.MapFolder(site.PhysicalFolder), conf => { CookieAuthentication.ConfigureCookieAuthentication(conf); conf.UseOAuthBearerAuthentication(CreateOptionsFromSiteInfo(site)); }); } }