فرمت های توکن

ساخت وبلاگ

در OpenIddict 3. 0، توانایی ابطال یک توکن به قالب توکن وابسته نیست و نیازی به فعال کردن نشانه های مرجع ندارد: توکن های معمولی JWT یا ASP.net Core Protection Data را می توان باطل کرد تا زمانی که ذخیره توکن به صراحت در آن غیرفعال نباشد. گزینه های سرور

برای اطلاعات بیشتر در مورد نشانه های مرجع، ذخیره توکن را بخوانید.

JSON Web Token

OpenIddict 3. 0 استانداردهای JSON Web Token، JSON Web Signature و JSON Web Encryption را پیاده سازی می کند و به Azure Active Directory IdentityModel Extensions برای کتابخانه .net که توسط مایکروسافت توسعه یافته و نگهداری می شود، برای تولید توکن های امضا شده و رمزگذاری شده با استفاده از اعتبارنامه های ثبت شده در گزینه های سرور متکی است.

انواع توکن JWT

برای محافظت در برابر جایگزینی توکن و حملات معاون سردرگم، OpenIddict 3. 0 از هدر نوع استاندارد JWT برای انتقال نوع توکن واقعی استفاده می کند. این مکانیسم جایگزین ادعای خصوصی token_usage می شود که برای همین هدف در نسخه های قبلی OpenIddict استفاده می شد.

همانطور که توسط نمایه JSON Web Token (JWT) برای مشخصات OAuth 2. 0 Access Tokens، توکن های دسترسی تولید شده توسط OpenIddict 3. 0 همیشه با سرصفحه "typ" صادر می شوند: "at+jwt" در حالی که نشانه های هویت همچنان از "typ" استفاده می کنند: "JWT"." برای سازگاری با عقب. انواع دیگر توکن ها فقط توسط نقاط پایانی خود OpenIddict پذیرفته می شوند از انواع توکن های خصوصی با پیشوند oi_ استفاده می کنند.

غیرفعال کردن رمزگذاری رمز دسترسی JWT

به طور پیش فرض، OpenIddict رمزگذاری را برای همه انواع توکن هایی که پشتیبانی می کند اعمال می کند. در حالی که به دلایل امنیتی نمی توان این اعمال را برای کدهای مجوز، نشانه های تازه سازی و کدهای دستگاه غیرفعال کرد، اما در صورت تمایل به ادغام با APIها/سرورهای منبع شخص ثالث، می توان آن را برای دسترسی به نشانه ها کاهش داد. اگر سرورهای منبعی که نشانه های دسترسی را دریافت می کنند، رمزگذاری وب JSON را به طور کامل پشتیبانی نکنند، می توان رمزگذاری رمز دسترسی را نیز غیرفعال کرد.

ASP.net Core Data Protection

OpenIddict 3. 0 همچنین می تواند برای استفاده از ASP.net Core Data Protection برای ایجاد توکن های حفاظت از داده به جای توکن های JWT پیکربندی شود.asp.net Core Data Protection از حلقه کلید خود برای رمزگذاری و محافظت از نشانه ها در برابر دستکاری استفاده می کند و برای همه انواع توکن ها پشتیبانی می شود، به جز نشانه های هویت، که همیشه توکن های JWT هستند.

بر خلاف JWTS ، نشانه های محافظت از داده های اصلی ASP.net فقط از رمزگذاری متقارن پشتیبانی می کنند و به یک قالب باینری که توسط تیم ASP.net تهیه شده است به جای استاندارد مانند JWT تکیه می کنند. در حالی که این امر از استفاده از چنین نشانه هایی در سناریوهایی که قابلیت همکاری در آن لازم است جلوگیری می کند ، انتخاب برای محافظت از داده های اصلی ASP.net به جای JWT در واقع چند مزیت دارد:

  • نشانه های محافظت از داده های هسته ASP.net از نمایندگی JSON استفاده نمی کنند و بنابراین به طور کلی کمی کوتاه تر هستند.
  • ASP.net Core Protection برای دستیابی به توان بالا طراحی شده است زیرا به طور بومی توسط ASP.net Core برای کوکی های احراز هویت ، نشانه های ضد فوری و کوکی های جلسه استفاده می شود.
هشدار

با وجود نام آن ، ASP.net Core Protection Protection به ASP.net Core گره خورده است و می تواند در هر برنامه سازگار با استاندارد 2. 0 NET استاندارد ، از جمله برنامه های Legacy ASP.net 4. 6. 1 (و بالاتر) با استفاده از Microsoft. Owin استفاده شود.

برای فعال کردن پشتیبانی از داده های اصلی ASP.net در سرور OpenIDDICT OWIN و میزبان اعتبارسنجی ، باید بسته های OpenIDDICT. Server. DatapRotection و OpenIddict. Validation. DatapRotection را به صورت دستی ارجاع دهید.

تغییر به نشانه های حفاظت از داده ها

پشتیبانی از حمایت از داده های هسته ASP.net توسط بسته های OpenIddict. Server. DatapRotection و OpenIddict. Validation. DatapRotection ارائه شده است. این بسته ها توسط OpenIDDICT.aspnetcore metapackage ارجاع می شوند و بنابراین لازم نیست صریحاً ارجاع شوند.

برای فعال کردن پشتیبانی از حمایت از داده های اصلی ASP.net ، گزینه های تماس با گزینه ها. استفاده از ataTaprotection () در هر دو سرور و گزینه های اعتبار سنجی:

تغییر به نشانه های محافظت از داده های هسته ASP.net مانع از تأیید اعتبار پشتیبانی از داده های JWT نمی شود: از تأیید اطلاعات حمایت از داده ها استفاده می شود: هنوز هم می توان از نشانه های موجود در کنار نشانه های جدید ASP.net Core Protection Protection Tokens تا زمان انقضا استفاده کرد. هنگام ارسال یک درخواست Token Refresh که حاوی یک توکن تازه سازی JWT است ، برنامه یک نشانه محافظت از داده های هسته ASP.net Core دریافت می کند و مورد قبلی به طور خودکار به عنوان بازخرید مشخص می شود.

به طور پیش فرض ، فعال کردن پشتیبانی از حمایت از داده های هسته ASP.net به طور خودکار قالب Token را از JWT به محافظت از داده ها برای انواع توکن ها ، به جز نشانه های JWT تغییر می دهد. ادغام حفاظت از OpenIDDICT/Data را می توان تنظیم کرد تا JWT را هنگام ایجاد نشانه های جدید ترجیح دهد ، که می تواند هنگام استفاده از فرمت محافظت از داده های هسته ASP.net فقط برای انواع خاص (به عنوان مثال برای کدهای مجوز و تازه کردن نشانه ها ، مفید باشد ، اما برای نشانه های دسترسی نیست.).

هشدار

هنگامی که سرورهای مجوز و API/Resource بخشی از همان برنامه نیستند ، باید از داده های اصلی ASP.net برای استفاده از همان نام برنامه پیکربندی شود و همان حلقه کلید را به اشتراک بگذارد تا به دستیار اعتبار سنجی OpenIDDICT اجازه دهد داده های اصلی ASP.net را بخواندنشانه های حفاظت شده توسط یک سرور مجوز واقع در یک پروژه دیگر.

استراتژی های مؤثر فارکس...
ما را در سایت استراتژی های مؤثر فارکس دنبال می کنید

برچسب : نویسنده : توران میرهادی بازدید : <-PostHit-> تاريخ : جمعه 8 ارديبهشت 1402 ساعت: 13:21