This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,43 @@
using System.Configuration;
using System.Web;
using IdentityServer3.AccessTokenValidation;
using Kreta.BusinessLogic;
using Kreta.Naplo.WebApi;
using Kreta.Web.Logging.Logger;
using Microsoft.Owin;
using Owin;
using SimpleInjector;
using SimpleInjector.Integration.WebApi;
using SimpleInjector.Lifestyles;
using HttpGlobalConfiguration = System.Web.Http.GlobalConfiguration;
[assembly: OwinStartup(typeof(Startup))]
namespace Kreta.Naplo.WebApi
{
public static class Startup
{
public static void Configuration(IAppBuilder appBuilder)
{
HttpGlobalConfiguration.Configure(WebApiConfig.Register);
log4net.Config.XmlConfigurator.Configure();
var container = new Container();
container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle();
container.InjectNaploMobileBusinessLogic();
container.Register(() => TraceLoggerFactory.Create(HttpContext.Current), Lifestyle.Scoped);
container.RegisterWebApiControllers(HttpGlobalConfiguration.Configuration);
container.Verify();
HttpGlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
appBuilder.UseIdentityServerBearerTokenAuthentication(
new IdentityServerBearerTokenAuthenticationOptions
{
ValidationMode = ValidationMode.Local,
Authority = ConfigurationManager.AppSettings["idp:Authority"],
RequiredScopes = ConfigurationManager.AppSettings["idp:RequiredScopes"].Split(';')
})
.UseWebApi(HttpGlobalConfiguration.Configuration);
}
}
}