نظرات مطالب
آزمایش Web APIs توسط Postman - قسمت ششم - اعتبارسنجی مبتنی بر JWT
- یک نمونه مثال کامل کنسول «ASPNETCore Jwt Authentication.ConsoleClient» که کوکی‌های آنتی‌فورجری پس از لاگین را دریافت و پردازش می‌کند؛ مرتبط با پروژه‌ی مطلب «اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity» که در بحث جاری به آن پرداخته شد. مثال Ajax ای آن هم در همان پروژه موجود است.
- اگر «مستند سازی ASP.NET Core 2x API توسط OpenAPI Swagger» را پیاده سازی کنید و مباحث «تکمیل مستندات محافظت از API» را لحاظ کنید، با استفاده از ابزارهایی می‌توانید « تولید خودکار کدهای سمت کلاینت» را هم انجام دهید.
نظرات مطالب
اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity
در اساس با پروژه‌ی غیروبی که عنوان شد تفاوتی نمی‌کند و بیشتر مرتبط است به مطلب «اعتبارسنجی مبتنی بر کوکی‌ها در ASP.NET Core 2.0 بدون استفاده از سیستم Identity» که با ASP.NET Core Identity مبتنی بر کوکی‌ها بیشتر شباهت دارد تا مطلب جاری که مبتنی بر توکن‌ها است. کوکی‌ها را در HttpClient فعال می‌کنید. زمانیکه درخواست لاگین را توسط آن ارسال کردید و عملیات لاگین در سمت سرور با موفقیت به پایان رسید، یکسری کوکی رمزنگاری شده، حاوی User Claims به سمت کلاینت ارسال می‌شوند. در دفعات بعدی، فقط این کوکی‌ها را به همراه HttpClient ارسال می‌کنید. به این صورت قسمت‌هایی که نیاز به اعتبارسنجی دارند کار می‌کنند.
اشتراک‌ها
بررسی تغییرات ASP.NET Core در دات نت 8

ASP.NET Core in .NET 8 is your complete solution for modern web development. It handles all of your web development needs from the frontend to the backend. You can build beautiful, richly interactive web experiences with Blazor, and high-performance backend APIs and services that are reliable and secure. ASP.NET Core in .NET 8 is perfect for building cloud-native apps, and great tooling in Visual Studio and Visual Studio Code supercharges your productivity. With ASP.NET Core in .NET 8, every developer is a full stack developer! 

بررسی تغییرات ASP.NET Core در دات نت 8
نظرات مطالب
اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity
services.AddAuthentication(options =>
{
    options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
    options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(options =>
{
    options.....
});
پس از آن در یک برنامه‌ی مبتنی بر ASP.NET Core Identity، هر جائیکه فیلتر Authorize خالی وجود دارد، یعنی استفاده‌ی از حالت مبتنی بر کوکی‌ها. جهت استفاده‌ی از اطلاعات اعتبارسنجی مبتنی بر توکن‌ها، ذکر صریح AuthenticationSchemes ضروری است:
روش الف) ذکر Schemes مد نظر در یک Policy جدید
services.AddAuthorization(options =>
{
    options.AddPolicy("Over18", policy =>
    {
        policy.AuthenticationSchemes.Add(JwtBearerDefaults.AuthenticationScheme);
        policy.RequireAuthenticatedUser();
        policy.Requirements.Add(new MinimumAgeRequirement());
    });
});
و سپس استفاده‌ی از آن
[Authorize(Policy = "Over18")]
روش ب) ذکر مستقیم Schemes در فیلتر Authorize
[Authorize(Policy = ...., AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
// Or
[Authorize(Policy = ...., AuthenticationSchemes = CookieAuthenticationDefaults.AuthenticationScheme + ", " + JwtBearerDefaults.AuthenticationScheme)]
نظرات مطالب
اعتبارسنجی مبتنی بر کوکی‌ها در ASP.NET Core 2.0 بدون استفاده از سیستم Identity
- ابتدا باید هدر مورد انتظار را مشخص کنید:
public void ConfigureServices(IServiceCollection services)
{
   services.AddMvc();
   services.AddAntiforgery(options => options.HeaderName = "__RequestVerificationToken"); 
}
- بعد متدی را برای تولید توکن در فایل razor درج کنید:
@inject Microsoft.AspNetCore.Antiforgery.IAntiforgery Xsrf

@functions{
    public string GetAntiXsrfRequestToken()
    {
        return Xsrf.GetAndStoreTokens(Context).RequestToken;
    }
}
- سپس اگر از jQuery استفاده می‌کنید، به صورت زیر این هدر با هر درخواستی به سمت سرور ارسال می‌شود:
<script type="text/javascript">
  $.ajaxPrefilter(function (options, originalOptions, jqXHR) {
      jqXHR.setRequestHeader("__RequestVerificationToken", '@GetAntiXsrfRequestToken()');
  });
</script>
نظرات مطالب
React 16x - قسمت 27 - احراز هویت و اعتبارسنجی کاربران - بخش 2 - استخراج و نمایش اطلاعات JWT و خروج از سیستم
در مطلب فوق عنوان شد « برای logout کاربر تنها کافی است توکن او را از local storage حذف کنیم. »
مطابق مطلب  اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity    نیازی به حذف توکن از سمت سرور و دیتابیس نیست؟
نظرات مطالب
سفارشی سازی ASP.NET Core Identity - قسمت چهارم - User Claims
با سلام؛ من از روش فوق برای «اعتبارسنجی مبتنی بر کوکی‌ها در ASP.NET Core 2.0 بدون استفاده از سیستم Identity»استفاده کردم. زمانیکه از کد زیر  استفاده میکنم، مقدارنال رو بر میگرداند. آیا تنظیمات خاصی رو از قلم انداختم. با تشکر
var userId = user.Identity.GetUserFirstName();