// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddSingleton(MovieRecordInMemoryRepository.getInstance()); services.AddMvc(); JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear(); services.AddAuthentication(options => { options.DefaultScheme = "Cookies"; options.DefaultChallengeScheme = "oidc"; }) .AddCookie("Cookies") .AddOpenIdConnect("oidc", options => { options.SignInScheme = "Cookies"; options.Authority = "http://localhost:5000"; options.RequireHttpsMetadata = false; options.ClientId = "mvc"; options.Scope.Add("roles"); options.SaveTokens = true; }); services.AddAuthorization(options => { options.AddPolicy("CanReadAndEditMovie", policy => policy.RequireClaim("role", User.ROLE_CONST.MANAGER, User.ROLE_CONST.TEAM_LEADER, User.ROLE_CONST.FLOOR_STAFF)); options.AddPolicy("CanDeleteMovie", policy => policy.RequireClaim("role", User.ROLE_CONST.MANAGER)); }); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { MovieRecordInMemoryRepository.getInstance().Add(new MovieRecord() { MovieTitle = "Test", Rating = "Test", YearReleased = 2015 }); services.AddSingleton(MovieRecordInMemoryRepository.getInstance()); services.AddMvcCore() .AddAuthorization() .AddJsonFormatters(); services.AddAuthentication("Bearer") .AddIdentityServerAuthentication(options => { options.Authority = "http://localhost:5000"; options.RequireHttpsMetadata = false; options.ApiName = "api1"; }); }