Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Melaksanakan Pengesahan Token Pembawa JWT dalam API Web ASP.NET pada IIS?

Bagaimana untuk Melaksanakan Pengesahan Token Pembawa JWT dalam API Web ASP.NET pada IIS?

Patricia Arquette
Patricia Arquetteasal
2025-01-20 22:19:10578semak imbas

How to Implement JWT Bearer Token Authentication in ASP.NET Web API on IIS?

Melaksanakan Pengesahan Token Pembawa JWT dalam API Web ASP.NET pada IIS

Pengenalan

Aplikasi pengedaran moden selalunya memerlukan pengesahan yang lebih mantap daripada kaedah API Web ASP.NET tradisional seperti borang atau pengesahan Windows. Panduan ini memperincikan pelaksanaan pengesahan token pembawa JWT dalam API Web yang dihoskan pada IIS.

Melaksanakan Pengesahan JWT

1. Penjanaan Token

Token JWT terdiri daripada pengepala, tuntutan dan tandatangan. Pakej System.IdentityModel.Tokens.Jwt NuGet memudahkan penjanaan token menggunakan HMACSHA256 dengan kunci simetri.

<code class="language-csharp">public static string GenerateToken(string username, int expireMinutes = 20)
{
    var symmetricKey = Convert.FromBase64String(Secret);
    var tokenHandler = new JwtSecurityTokenHandler();

    ...

    return token;
}</code>

2. Pengesahan Token

Pengesahan token dicapai menggunakan:

<code class="language-csharp">private static bool ValidateToken(string token, out string username)
{
    ...
}</code>

Ini membentuk teras atribut penapis pengesahan tersuai:

<code class="language-csharp">public class JwtAuthenticationAttribute : Attribute, IAuthenticationFilter
{
    ...
}</code>

3. Minta Pengesahan

Gunakan JwtAuthenticationAttribute pada tindakan atau laluan yang memerlukan pengesahan. Penapis mengesahkan JWT dan menyediakan ClaimsPrincipal (atau batal apabila gagal).

4. Keizinan

Gunakan AuthorizeAttribute di seluruh dunia untuk menyekat akses tanpa nama. Dalam tindakan selamat, dapatkan butiran pengguna daripada ClaimsPrincipal.

Ringkasan

Kaedah ini membolehkan pengesahan token pembawa JWT dalam API Web ASP.NET anda yang dihoskan IIS tanpa perisian tengah OWIN, menawarkan kebenaran yang selamat dan berskala untuk perkhidmatan web anda.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pengesahan Token Pembawa JWT dalam API Web ASP.NET pada IIS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn