Member-only story

Secure ASP.NET Core Web API using JWT Authentication

Aram Tchekrekjian
20 min readNov 1, 2020

In this tutorial, you will learn how to secure ASP.NET Core Web API using JWT Authentication, I will try to simplify this topic step-by-step while coding.

We will build two endpoints, one for the customers’ login and one to get customer orders. The APIs will be connected to an SQL Server Express database all running on the local machine.

What is JWT?

JWT or JSON Web Token is basically a way to format tokens, which represent an encoded structure of data that is compact, url-safe, secure and self-contained.

JWT authentication is a standard way to communicate between APIs and clients, so both parties can make sure that the data being sent/received is trusted and verified.

JWTs should be issued by a server and digitally sign it using a cryptographically secure secret, so that it will make sure that any attacker won’t be able to tamper the payload sent within the token and impersonate the legit user.

JWT structure includes 3 parts, separated with dots, each of which is a base64 url-encoded string and formatted in JSON:

Header.Payload.Signature

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1laWQiOiIxIiwicm9sZSI6IkFjY291bnQgTWFuYWdlciIsIm5iZiI6MTYwNDAxMDE4NSwiZXhwIjoxNjA0MDExMDg1L…

--

--

Aram Tchekrekjian
Aram Tchekrekjian

Written by Aram Tchekrekjian

Microsoft MVP | Technical Manager at Aramex | Founder of Codingsonata.com | C#, ASP.NET Core, Android, Angular

No responses yet