我想包裝我的領先地位,使用JWT來保護用C#編寫的WEB API,但是在一些事情上會掛掉。從我的理解流程應該是這樣的:如何在C#WEB API中返回JSON Web令牌?
- 客戶端提供用戶名/密碼,從某些客戶端應用程序的Web API(角,.NET,移動等)
- 在Web API將驗證用戶名/密碼是正確的,然後生成一個包含用戶角色,信息,到期日期和其他相關信息的JWT(JSON Web令牌)。
- JWT被髮送回客戶端應用程序。
- 客戶端應用程序掛起到JWT並將其發送給未來的請求。
假設以上是正確的(並且請讓我知道如果不是),我無法理解以下事情。
- 一旦Web API驗證了用戶名/密碼並創建了JWT,JWT又會如何傳回?我不知何故將它添加到HttpResponseMessage對象?我似乎無法找到明確的答案。
- 客戶端應用程序應該如何通過JWT?這是在JSON數據中,附加到URL,添加到標題?
- 我看到很多引用OWIN和OAUTH的教程。這些是什麼,爲什麼我需要它們?我在WEB API使用的數據庫中持有用戶證書和角色。
我敢肯定你會通過標頭(從服務器和服務器)傳遞令牌。客戶需要從頭中獲取該令牌並重新使用它。服務器要在每個請求中查找該標記,並進行需要的任何驗證。 – mariocatch