عنوان:

‫ادغام احراز هویت Keycloak در یک فرانت‌اند Blazor WebAssembly (WASM) و یک بک‌اند NET Web API.


نویسنده: وحید نصیری
تاریخ: ۱۴۰۳/۱۲/۰۴ ۰۸:۳۱
آدرس: www.dntips.ir
این مقاله راهنمای گام به گام برای ادغام احراز هویت Keycloak در یک فرانت‌اند Blazor WebAssembly (WASM) و یک بک‌اند .NET Web API ارائه می‌دهد.

راه‌اندازی Keycloak
  • Keycloak را با استفاده از Docker نصب کنید.
  • یک ریلم جدید به نام "BlazorWebApiRealm" ایجاد کنید.
  • دو کلاینت ثبت کنید:
    • "web-api" برای بک‌اند Web API (برنامه سرور).
    • "blazor-client" برای فرانت‌اند Blazor WASM (کلاینت عمومی).
  • یک محدوده کلاینت ایجاد کنید تا اطمینان حاصل شود که مخاطب صحیح ("web-api") در توکن دسترسی گنجانده شده است.
  • یک کاربر برای آزمایش ایجاد کنید.

پیکربندی Web API
  • بسته Microsoft.AspNetCore.Authentication.JwtBearer را نصب کنید.
  • میان‌افزار احراز هویت و مجوز را در Program.cs اضافه کنید.
  • احراز هویت JWT Bearer را با جزئیات ریلم Keycloak، مخاطب و پارامترهای اعتبار سنجی توکن پیکربندی کنید.

پیکربندی Blazor WASM
  • اطمینان حاصل کنید که بسته Microsoft.AspNetCore.Components.WebAssembly.Authentication نصب شده است.
  • Program.cs را برای پیکربندی احراز هویت OIDC با جزئیات Keycloak تغییر دهید و محدوده لازم را درخواست کنید.
  • یک کلاینت HTTP را با AuthorizationMessageHandler پیکربندی کنید تا توکن‌های دسترسی را در درخواست‌های API قرار دهد.
  • صفحه /weather را با ویژگی [Authorize] محافظت کنید.

آزمایش و مجوز
  • هر دو برنامه را اجرا کنید و فرآیند ورود را آزمایش کنید.
  • با افزودن ویژگی [Authorize] به کنترلر، نقطه پایانی Web API را مجاز کنید.
  • توکن دسترسی را برای بررسی صادرکننده، مخاطب و سایر ادعاها بررسی کنید.

با پیروی از این مراحل، می‌توانید برنامه‌های Blazor WASM و .NET Web API خود را با استفاده از Keycloak ایمن کنید و اطمینان حاصل کنید که فقط کاربران احراز هویت شده می‌توانند به منابع محافظت شده دسترسی داشته باشند.


مشاهده مطلب اصلی