// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; namespace Microsoft.Extensions.Logging { internal static class LoggingExtensions { private static Action _authSchemeAuthenticated; private static Action _authSchemeNotAuthenticated; private static Action _authSchemeNotAuthenticatedWithFailure; private static Action _authSchemeSignedIn; private static Action _authSchemeSignedOut; private static Action _authSchemeChallenged; private static Action _authSchemeForbidden; private static Action _userAuthorizationFailed; private static Action _userAuthorizationSucceeded; private static Action _userPrincipalMerged; private static Action _remoteAuthenticationError; private static Action _signInHandled; private static Action _signInSkipped; private static Action _correlationPropertyNotFound; private static Action _correlationCookieNotFound; private static Action _unexpectedCorrelationCookieValue; static LoggingExtensions() { _userAuthorizationSucceeded = LoggerMessage.Define( eventId: 1, logLevel: LogLevel.Information, formatString: "Authorization was successful for user: {UserName}."); _userAuthorizationFailed = LoggerMessage.Define( eventId: 2, logLevel: LogLevel.Information, formatString: "Authorization failed for user: {UserName}."); _userPrincipalMerged = LoggerMessage.Define( eventId: 3, logLevel: LogLevel.Information, formatString: "HttpContext.User merged via AutomaticAuthentication from authenticationScheme: {AuthenticationScheme}."); _remoteAuthenticationError = LoggerMessage.Define( eventId: 4, logLevel: LogLevel.Information, formatString: "Error from RemoteAuthentication: {ErrorMessage}."); _signInHandled = LoggerMessage.Define( eventId: 5, logLevel: LogLevel.Debug, formatString: "The SigningIn event returned Handled."); _signInSkipped = LoggerMessage.Define( eventId: 6, logLevel: LogLevel.Debug, formatString: "The SigningIn event returned Skipped."); _authSchemeNotAuthenticatedWithFailure = LoggerMessage.Define( eventId: 7, logLevel: LogLevel.Information, formatString: "{AuthenticationScheme} was not authenticated. Failure message: {FailureMessage}"); _authSchemeAuthenticated = LoggerMessage.Define( eventId: 8, logLevel: LogLevel.Information, formatString: "AuthenticationScheme: {AuthenticationScheme} was successfully authenticated."); _authSchemeNotAuthenticated = LoggerMessage.Define( eventId: 9, logLevel: LogLevel.Debug, formatString: "AuthenticationScheme: {AuthenticationScheme} was not authenticated."); _authSchemeSignedIn = LoggerMessage.Define( eventId: 10, logLevel: LogLevel.Information, formatString: "AuthenticationScheme: {AuthenticationScheme} signed in."); _authSchemeSignedOut = LoggerMessage.Define( eventId: 11, logLevel: LogLevel.Information, formatString: "AuthenticationScheme: {AuthenticationScheme} signed out."); _authSchemeChallenged = LoggerMessage.Define( eventId: 12, logLevel: LogLevel.Information, formatString: "AuthenticationScheme: {AuthenticationScheme} was challenged."); _authSchemeForbidden = LoggerMessage.Define( eventId: 13, logLevel: LogLevel.Information, formatString: "AuthenticationScheme: {AuthenticationScheme} was forbidden."); _correlationPropertyNotFound = LoggerMessage.Define( eventId: 14, logLevel: LogLevel.Warning, formatString: "{CorrelationProperty} state property not found."); _correlationCookieNotFound = LoggerMessage.Define( eventId: 15, logLevel: LogLevel.Warning, formatString: "'{CorrelationCookieName}' cookie not found."); _unexpectedCorrelationCookieValue = LoggerMessage.Define( eventId: 16, logLevel: LogLevel.Warning, formatString: "The correlation cookie value '{CorrelationCookieName}' did not match the expected value '{CorrelationCookieValue}'."); } public static void AuthenticationSchemeAuthenticated(this ILogger logger, string authenticationScheme) { _authSchemeAuthenticated(logger, authenticationScheme, null); } public static void AuthenticationSchemeNotAuthenticated(this ILogger logger, string authenticationScheme) { _authSchemeNotAuthenticated(logger, authenticationScheme, null); } public static void AuthenticationSchemeNotAuthenticatedWithFailure(this ILogger logger, string authenticationScheme, string failureMessage) { _authSchemeNotAuthenticatedWithFailure(logger, authenticationScheme, failureMessage, null); } public static void AuthenticationSchemeSignedIn(this ILogger logger, string authenticationScheme) { _authSchemeSignedIn(logger, authenticationScheme, null); } public static void AuthenticationSchemeSignedOut(this ILogger logger, string authenticationScheme) { _authSchemeSignedOut(logger, authenticationScheme, null); } public static void AuthenticationSchemeChallenged(this ILogger logger, string authenticationScheme) { _authSchemeChallenged(logger, authenticationScheme, null); } public static void AuthenticationSchemeForbidden(this ILogger logger, string authenticationScheme) { _authSchemeForbidden(logger, authenticationScheme, null); } public static void UserAuthorizationSucceeded(this ILogger logger, string userName) { _userAuthorizationSucceeded(logger, userName, null); } public static void UserAuthorizationFailed(this ILogger logger, string userName) { _userAuthorizationFailed(logger, userName, null); } public static void UserPrinicpalMerged(this ILogger logger, string authenticationScheme) { _userPrincipalMerged(logger, authenticationScheme, null); } public static void RemoteAuthenticationError(this ILogger logger, string errorMessage) { _remoteAuthenticationError(logger, errorMessage, null); } public static void SigninHandled(this ILogger logger) { _signInHandled(logger, null); } public static void SigninSkipped(this ILogger logger) { _signInSkipped(logger, null); } public static void CorrelationPropertyNotFound(this ILogger logger, string correlationPrefix) { _correlationPropertyNotFound(logger, correlationPrefix, null); } public static void CorrelationCookieNotFound(this ILogger logger, string cookieName) { _correlationCookieNotFound(logger, cookieName, null); } public static void UnexpectedCorrelationCookieValue(this ILogger logger, string cookieName, string cookieValue) { _unexpectedCorrelationCookieValue(logger, cookieName, cookieValue, null); } } }