private static void ValidateBasicAuthentication() { var authorization = WebOperationContext.Current?.IncomingRequest.Headers["Authorization"]; if (string.IsNullOrWhiteSpace(authorization)) { throw new WebFaultException(HttpStatusCode.Forbidden); } var basicAuth = new BasicAuth(authorization); var token = new AuthenticationTokenService().Authenticate(basicAuth.Creds); ValidateToken(token); }
public string Authenticate(Credentials creds) { if (creds == null && WebOperationContext.Current != null) { var basicAuthHeader = WebOperationContext.Current.IncomingRequest.Headers["Authorization"]; if (!string.IsNullOrWhiteSpace(basicAuthHeader)) creds = new BasicAuth(basicAuthHeader).Creds; } using (var dbContext = new BasicTokenDbContext()) { return new DatabaseTokenBuilder(dbContext).Build(creds); } }