private async Task <IEnumerable <Claim> > TryGetPrincipalFromBasicCredentials( string credentials, BasicAuthenticationMiddleware.CredentialVlidationFunction validate) { string pair; try { pair = Encoding.UTF8.GetString(Convert.FromBase64String(credentials)); } catch (FormatException) { return(null); } catch (ArgumentException) { return(null); } var ix = pair.IndexOf(':'); if (ix == -1) { return(null); } var username = pair.Substring(0, ix); var pw = pair.Substring(ix + 1); return(await validate(username, pw)); }
public BasicAuthenticationOptions( string realm, BasicAuthenticationMiddleware.CredentialVlidationFunction validationFunction) : base("Basic") { // Authentication type this.Realm = realm; this.CredentialValidationFunction = validationFunction; }
public static IAppBuilder UseBasicAuthentication(this IAppBuilder appBuilder, string realm, BasicAuthenticationMiddleware.CredentialVlidationFunction validationFunction) { var options = new BasicAuthenticationOptions(realm, validationFunction); return(appBuilder.UseBasicAuthentication(options)); }