Como retornar um JSON Web Token em uma API WEB C #?

Estou tentando resolver o problema usando JWT para proteger uma API WEB escrita em C #, mas estou ficando desconectada de algumas coisas. Pelo meu entendimento, o fluxo deve ser algo como isto:

O cliente fornece nome de usuário / senha à API da Web a partir de algum aplicativo cliente (Angular, .NET, Mobile, etc)A API da Web valida se o nome de usuário / senha está correto e, em seguida, gera um JWT (JSON Web Token) que contém as funções, informações, data de validade e outras informações relevantes do usuário.O JWT é enviado de volta ao aplicativo cliente.O aplicativo cliente permanece no JWT e o envia com solicitações futuras.

Supondo que o que foi dito acima está correto (e, se não estiver, informe-me), estou tendo problemas para entender o seguinte.

Depois que a API da Web validou o nome de usuário / senha e criou o JWT, como o JWT é devolvido? De alguma forma, adiciono-o a um objeto HttpResponseMessage? Não consigo encontrar uma resposta clara sobre isso.Como o aplicativo cliente deve devolver o JWT? Isso está nos dados JSON, anexados à URL, adicionados aos cabeçalhos?Eu vejo muitos tutoriais referenciando OWIN e OAUTH. O que são esses e por que eu preciso deles? Estou mantendo as credenciais e funções de usuário no banco de dados usado pela API WEB.

questionAnswers(1)

yourAnswerToTheQuestion