Table of Contents

Class Authenticator

Namespace
Cuemon.AspNetCore.Authentication
Assembly
Cuemon.AspNetCore.Authentication.dll

Provides a set of static methods for working with HTTP based authentication.

public static class Authenticator
Inheritance
Object
Authenticator

Methods

Authenticate<T>(HttpContext, Boolean, Func<HttpContext, String, T>, TesterFunc<HttpContext, T, ConditionalValue<ClaimsPrincipal>, Boolean>)

Provides a generic way to make authentication requests using the specified context.

public static ConditionalValue<ClaimsPrincipal> Authenticate<T>(HttpContext context, bool requireSecureConnection, Func<HttpContext, string, T> authorizationParser, TesterFunc<HttpContext, T, ConditionalValue<ClaimsPrincipal>, bool> principalParser)

Parameters

context HttpContext

The context of the ASP.NET application.

requireSecureConnection Boolean

When true, the HTTP connection is required to use secure sockets (that is, HTTPS); when false no requirement is enforced.

authorizationParser Func<HttpContext, String, T>

The function delegate that will parse the authorization header of a web request and return the credentials of T.

principalParser TesterFunc<HttpContext, T, ConditionalValue<ClaimsPrincipal>, Boolean>

The function delegate that will parse the credentials of T returned from authorizationParser and if successful returns a System.Security.Claims.ClaimsPrincipal object.

Returns

ConditionalValue<ClaimsPrincipal>

A System.Security.Claims.ClaimsPrincipal if principalParser was successful.

Type Parameters

T

The type of the credentials returned from authorizationParser and passed to principalParser.

Exceptions

System.Security.SecurityException

Authorized failed for the request.

TryAuthenticate<T>(HttpContext, Boolean, Func<HttpContext, String, T>, TesterFunc<HttpContext, T, ConditionalValue<ClaimsPrincipal>, Boolean>, out ConditionalValue<ClaimsPrincipal>)

Provides a generic way to make authentication requests using the specified context.

public static bool TryAuthenticate<T>(HttpContext context, bool requireSecureConnection, Func<HttpContext, string, T> authorizationParser, TesterFunc<HttpContext, T, ConditionalValue<ClaimsPrincipal>, bool> principalParser, out ConditionalValue<ClaimsPrincipal> principal)

Parameters

context HttpContext

The context of the ASP.NET application.

requireSecureConnection Boolean

When true, the HTTP connection is required to use secure sockets (that is, HTTPS); when false no requirement is enforced.

authorizationParser Func<HttpContext, String, T>

The function delegate that will parse the authorization header of a web request and return the credentials of T.

principalParser TesterFunc<HttpContext, T, ConditionalValue<ClaimsPrincipal>, Boolean>

The function delegate that will parse the credentials of T returned from authorizationParser and if successful returns a System.Security.Claims.ClaimsPrincipal object.

principal ConditionalValue<ClaimsPrincipal>

The System.Security.Claims.ClaimsPrincipal of the authenticated user if the authentication was successful.

Returns

Boolean

true if the specified parameters triggers a successful authentication; otherwise, false.

Type Parameters

T

The type of the credentials returned from authorizationParser and passed to principalParser.