نظرات مطالب
روش استفاده‌ی صحیح از HttpClient در برنامه‌های دات نت
HttpClient یک کتابخانه‌ی چندسکویی و پرتابل هست و همه‌جا قابل استفاده‌است. بنابراین ارائه‌ی نحوه‌ی استفاده‌ای که سبب تفکر شود، روش مناسبی برای ارائه‌ی مطلب است. همچنین ممکن است کتابخانه‌هایی را تولید کنید بر همین مبنا که بر اساس NET Standard. تهیه شده باشند و در همه جا (در برنامه‌های WPF تا ASP.NET‌های مختلف و غیره) قابل استفاده باشند، به همین جهت یک best practice است که بهتر است رعایت شود.
+ علت‌های استفاده از ConfigureAwait(false):
جلوگیری از deadlock در برنامه‌های async
  بهبود کارآیی برنامه
  1.   با حذف callbackهای فراخوان ترد جاری. هر چقدر تعداد این callbackها کمتر باشد، کارآیی برنامه بیشتر می‌شود. یک مثال
  2.   با اجازه دادن به CLR جهت اجرای این قطعه کد در هر تردی که صلاح می‌داند (و نه اجبار به اجرای نهایی آن در ترد اصلی).

«... زیرا به علت Restore نشدن Sync Context، عملا مواردی مثل HttpContext.Current مقدار درستی را در خط بعد از await نخواهند داشت ...»
اینطور نیست. درست است که سطرهای پس از ConfigureAwait(false) بر روی Thread pool اجرا می‌شوند که با ترد اصلی شروع کننده‌ی پردازش اکشن متد یکی نیست، اما context اصلی ترد جاری از حفظ اطلاعات مرتبط با ASP.NET در آن‌ها اطمینان حاصل می‌کند:

If multiple operations complete at once for the same application, AspNetSynchronizationContext will ensure that they execute one at a time. They may execute on any thread, but that thread will have the identity and culture of the original page

اشتراک‌ها
Angular 1.x: The plan forward - یادداشت های جلسات AngularJs

Angular 1.3 might be the best Angular yet, but there's still lots of high impact work to be done on the 1.x branch. We still have Material Design, our new router, and improved internationalization of Angular apps still to come ... 

The Angular 1.x project needs someone to be fully committed to keeping v1 moving forward, and supporting the Angular ecosystem that has grown around it.

That's why I'm delighted that Pete Bacon Darwin has agreed to take over the leadership role for Angular v1.  

But Pete can't do this alone. He needs Brian, Caitlin, and Chirayu to help make v1 even more awesome. Jeff will help out with google3 sync and releases, and familiar faces like Matias Niemela and Pawel Kozlowski (who co-wrote one of the first books on Angular with Pete) will be ongoing contributors. We're also looking forward to meeting new faces. Over time, some of these folks will shift their focus towards Angular 2, but for the immediate future, what's most important is that Angular 1.x is and continues to be well taken care of.  

Angular 1.x: The plan forward - یادداشت های جلسات AngularJs
نظرات مطالب
React 16x - قسمت 27 - احراز هویت و اعتبارسنجی کاربران - بخش 2 - استخراج و نمایش اطلاعات JWT و خروج از سیستم
JWT یک مکانیزم به اصطلاح self-contained را ارائه میدهد و همانطور که اشاره شده است پیاده‌سازی عملیات Logout منطقی نیست چون توکنی که صادر میشود دارای یک تاریخ انقضاء است بنابراین کلاینت تا زمان در اختیار داشتن توکن و همچنین معتبر بودن توکن میتواند از آن استفاده کند؛ این self-contained بودن در واقع باعث خواهد شد که دیگری نیازی به داشتن database call برای بررسی معتبر بودن توکن نباشد. در نهایت اگر خواستید میتوانید یک لایه دیگر به سیستم اضافه کنید و Logout را پیاده‌سازی کنید (قسمت تهیه یک اعتبارسنج توکن سفارشی  در مطلبی که لینک دادید) این لایه میتواند دیتابیس باشد یا یک چیزی مانند Redis؛ 
نظرات مطالب
شروع به کار با EF Core 1.0 - قسمت 14 - لایه بندی و تزریق وابستگی‌ها
با عرض سلام و تشکر
1. در پروژه برای کلاس Product و Category، مثالی برای اعمال CRUD در سطح کنترلر ارائه نشده، یا من پیدا نکردم؟ یا چون در بحث Identity نبوده تکمیل نشده این قسمت.
در این پروژه آیا برای انجام عملیات CRUD، به روشی که در پروژه «اعتبار سنجی مبتنی بر Jwt در ASP.net Core 2.0 بدون استفاده از سیستم Identity» معرفی کردین عمل کنم ؟

2. تفاوت طراحی این دو پروژه در قسمتهای تزریق وابستگی، و دقیقا انجام عملیات CRUD در کنترلرهای سطح پروژه وب، چیست ؟

نظرات مطالب
React 16x - قسمت 29 - احراز هویت و اعتبارسنجی کاربران - بخش 4 - محافظت از مسیرها
- می‌توان دسترسی داشت. پس از لاگین، برنامه را در چند برگه‌ی مجزا باز کنید، باز هم کار می‌کند و کاربر جاری تشخیص داده می‌شود. این محدودیت دسترسی مربوط به دومین جاری برنامه است و نه برگه‌های آن (مفهوم پیاده سازی sand box یا قرنطینه‌ی امنیتی).
- در مورد جزئیات محل‌های ذخیره سازی:
- در مورد علت استفاده‌ی از local storage و مزایا و معایب آن (نگاهی به محل ذخیره سازی JWT و نکات مرتبط با آن ) در اینجا : معرفی JSON Web Token
نظرات مطالب
Asp.Net Identity #2
سلام؛ من با استفاده از .NET Core 2.2 Web Api و angular در حال نوشتن برنامه ای هستم که نیاز به سطح دسترسی برای کاربران میباشد. به اینصورت که در یک شرکت holding هر شرکت زیر مجموعه یک ادمین دارد و چندین کاربر که هر کاربر بنا به موقعیت شغلی نیاز به سطح دسترسی خاصی دارد به عنوان مثال منشی شرکت الف فقط به اطلاعات شرکت الف دسترسی داشته باشد و همینطور منشی شرکت ب به اطلاعات شرکت  ب دسترسی دارد و ... . در چنین موقعیتی بهتره از Identity استفاده کنیم یا jwt?
نظرات مطالب
IdentityServer قسمت اول
خیلی ممنون. حالا برای من دو سوال پیش آمد . من یک پروژه نرم افزاری تحت وب کار میکنم با استفاده asp.net web api با ترکیب mvc .که صفحه هام رو با mvc فراخوانی میکنم و توابع و عملیات دیتابیسی رو با web api (از طریق ajax) . حال سوال من  اینست که برای این نوع پروژه پیشنهاد شما جهت اعتبار سنجی و نگهداری داده‌های کاربر لاگین شده کدوم تکنولوژی هست . Json Web Token یا تکنولوژی فوق الذکر؟
همچنین آیا تکنولوژی فوق نیز مثل JWT باید در حافظه local Stroge ذخیره و نگهداری کرد؟ 
نظرات مطالب
اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity
صفحات وب به همراه لینک‌ها و یا window.location و امثال آن امکان تنظیم header سفارشی درخواست‌های وب را ندارند؛ مگر اینکه یک درخواست async از نوع XMLHttpRequest به سمت سرور را سبب شوند. به همین جهت در حالت پیش‌فرض، تنظیم JWT Token به همراه آن‌ها میسر نیست. بنابراین در اینجا در صورت نیاز کار با Viewهای رندر شده‌ی در سمت سرور، از همان روش‌های Ajax که امکان تنظیم هدر را دارند، مانند نکات مطلب «بارگزاری PartialView با استفاده از jQuery در زمان اجرا» می‌توانید استفاده کنید. یا اینکه کلا برنامه‌ی وب خود را SPA تهیه کنید (مانند Angular) که مدیریت این قسمت از سرور جدا شده و به سمت کلاینت محول شود. در نظرات قبلی واژه‌ی SPA را در این صفحه جستجو کنید؛ چندین بار به آن ارجاع شده و توضیحات کافی داده شده‌است که هدف از مطلب جاری در عمل چیست.
نظرات مطالب
اعتبارسنجی مبتنی بر JWT در ASP.NET Core 2.0 بدون استفاده از سیستم Identity
با سلام؛ من از پروژه DNTIdentity  استفاده کرده ام و برای اعتبار سنجی کاربران که با اپلیکیش وارد می‌شوند از jwt  میخواهم استفاده کنم و از پروژه ASPNETCore2JwtAuthentication.WebApp  کمک گرفتم و موارد را به پروژه تزریق کردم. و برای تست نیز از پروژه ASPNETCore2JwtAuthentication.ConsoleClient استفاده کردم ولی متاسفانه خطای زیر را می‌دهد. 
Response status code does not indicate success: 500 (Internal Server Error)
و سوال دیگر:در کلاس استارت اپ پروژه ASPNETCore2JwtAuthentication.WebApp  چرا  آدرس را با http://localhost:4200 مقدار دهی کردین و همچنین "Issuer": "http://localhost:5000/" در BearerTokens چرا از پورت ثابت استفاده شده است.
نظرات مطالب
پیاده سازی JSON Web Token با ASP.NET Web API 2.x
- در مورد آدرس ویژه‌ی login این روش (نحوه‌ی تعیین، تغییر و پردازش ویژه‌ی آن)، هم در مطلب و هم در نظرات، بحث شده‌است. واژه‌ی login را در صفحه‌ی جاری جستجو کنید.
- مطلب و نظرات «امن سازی درخواست‌های ای‌جکسی برنامه‌های ASP.NET MVC 5.x در مقابل حملات CSRF» را در مورد نحوه‌ی ارسال RequestVerificationToken در برنامه‌های Ajax ایی مطالعه کنید.
- روش JWT عموما برای برنامه‌های تمام SPA (تمام تک صفحه‌ای وب مانند Angular) استفاده می‌شود (پیشنیاز بحث را که در ابتدای آن عنوان شده، مطالعه کنید). اگر برنامه‌ی شما تمام MVC است و از صفحات Razor استفاده می‌کنید، بهتر است از روش «اعمال تزریق وابستگی‌ها به مثال رسمی ASP.NET Identity» استفاده کنید.