Serviço Windows da API da Web OWIN - Representação de identidade do Windows

Este é um aplicativo da intranet.

Eu tenho um aplicativo de auto-hospedagem WebAPI Owin em execução no Windows Server em uma conta de serviço.

O front end é o AngularJS, que fala com o banco de dados por meio dessa API da Web.

O que eu quero é que, quando qualquer ação for invocada na API que exija interação com o banco de dados, as credenciais do usuário sejam usadas para conectar-se ao banco de dados e não à conta do serviço.

Estou usando a autenticação do Windows, habilitei a autenticação Ntlm no httpListener na classe Startup e posso autenticar o usuário.

Quando envio uma solicitação para a API da Web, vejo que o Thread.CurrentPrincipal retorna o usuário atual, mas a conexão com o banco de dados falha, porque está tentando se conectar ao banco de dados usando a conta de serviço e não as credenciais do usuário.

Por favor, diga-me como passar as credenciais do usuário para o banco de dados da API da Web

questionAnswers(2)

yourAnswerToTheQuestion