ASP.NET WebAPI Basic Authentication always fails as 401/Unauthorized
In my case, following Darrels approach, I commented out the below and used his approach. It work great!... saving me hours
// Thread.CurrentPrincipal = PrincipalProvider
// .CreatePrincipal(parsedCredentials.Username, parsedCredentials.Password);
request.GetRequestContext().Principal = PrincipalProvider
.CreatePrincipal(parsedCredentials.Username, parsedCredentials.Password);
Don't set the Principal on the Thread.CurrentPrinicipal any more. Use the Principal on the HttpRequestContext.