mirror of
https://github.com/bitwarden/server.git
synced 2024-12-04 14:13:28 +01:00
50 lines
1.8 KiB
C#
50 lines
1.8 KiB
C#
using Microsoft.AspNetCore.Hosting;
|
|
using Microsoft.Extensions.Hosting;
|
|
using Bit.Core.Utilities;
|
|
using Serilog.Events;
|
|
using Microsoft.IdentityModel.Tokens;
|
|
using AspNetCoreRateLimit;
|
|
|
|
namespace Bit.Api
|
|
{
|
|
public class Program
|
|
{
|
|
public static void Main(string[] args)
|
|
{
|
|
Host
|
|
.CreateDefaultBuilder(args)
|
|
.ConfigureWebHostDefaults(webBuilder =>
|
|
{
|
|
webBuilder.UseStartup<Startup>();
|
|
webBuilder.ConfigureLogging((hostingContext, logging) =>
|
|
logging.AddSerilog(hostingContext, e =>
|
|
{
|
|
var context = e.Properties["SourceContext"].ToString();
|
|
if (e.Exception != null &&
|
|
(e.Exception.GetType() == typeof(SecurityTokenValidationException) ||
|
|
e.Exception.Message == "Bad security stamp."))
|
|
{
|
|
return false;
|
|
}
|
|
|
|
if (e.Level == LogEventLevel.Information &&
|
|
context.Contains(typeof(IpRateLimitMiddleware).FullName))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (context.Contains("IdentityServer4.Validation.TokenValidator") ||
|
|
context.Contains("IdentityServer4.Validation.TokenRequestValidator"))
|
|
{
|
|
return e.Level > LogEventLevel.Error;
|
|
}
|
|
|
|
return e.Level >= LogEventLevel.Error;
|
|
}));
|
|
})
|
|
.Build()
|
|
.Run();
|
|
}
|
|
}
|
|
}
|