Skip to content

Latest commit

 

History

History
50 lines (43 loc) · 1.11 KB

csharp.md

File metadata and controls

50 lines (43 loc) · 1.11 KB
title
C#
public class Startup
{
  public void ConfigureServices(IServiceCollection services)
  { 
    // 1. Add Authentication Services
    services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
      .AddJwtBearer(options =>
      {
        options.TokenValidationParameters = new TokenValidationParameters
        {
            ValidIssuer = "https://${'<%= tenantDomain %>'}/",
            ValidAudience = "${'<%= api.identifier %>'}",
            IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("${'<%= api.signing_secret %>'}"))
        };
      });

    services.AddControllers();
  }

  public void Configure(IApplicationBuilder app, IHostingEnvironment env)
  {
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseExceptionHandler("/Home/Error");
    }

    app.UseStaticFiles();

    app.UseRouting();

    // 2. Enable authentication and authorization middleware
    app.UseAuthentication();
    app.UseAuthorization();

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllers();
    });
  }
}