private bool ValidateApiCredentials( HttpRequestMessage request, AclClientCredentials credentials) { var subscribers = GetSubscribers(request); if (subscribers.IsNullOrEmpty()) { return(false); } var thisSubscriber = subscribers.FirstOrDefault( s => s.Identifier.Equals(credentials.Identifier, StringComparison.InvariantCultureIgnoreCase)); if (thisSubscriber.IsNull()) { return(false); } IPrincipal principal; var result = thisSubscriber .ValidateCredentials(credentials, out principal); if (result) { Thread.CurrentPrincipal = principal; _assignPrincipalFactory(request, principal); } return(result); }
private static bool TryRetrieveApiCredentials( HttpRequestMessage request, out AclClientCredentials credentials) { return(new AclClientCredentialsRetriever() .TryParse(request, out credentials)); }
private IPrincipal GetPrincipal( AclClientCredentials credentials) { return(new ClaimsPrincipal( new ClaimsIdentity( GetClaims(credentials).ToList(), AuthenticationTypes.Basic))); }
internal bool ValidateCredentials( AclClientCredentials credentials, out IPrincipal principal) { principal = null; if (ValidateSecret(credentials.Secret)) { principal = GetPrincipal(credentials); } return(principal.IsNotNull()); }
private IEnumerable <Claim> GetClaims( AclClientCredentials credentials) { yield return(new Claim(ClaimTypes.Name, credentials.Identifier)); }