آموزش ساخت و تأمین امنیت API های آرام در ASP.NET Core

Building and Securing RESTful APIs in ASP.NET Core

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: بیشتر افراد درباره RI های API شنیده اند ، اما مفهوم اساسی - انتقال حالت بازنمایی (REST) - هنوز باعث سردرگمی می شود. REST همه چیز در مورد مدل سازی منابع تغییر می کند. RESTful API ها از معماری REST همراه با درخواست های HTTP برای انتقال داده ها و تغییر در وضعیت برنامه بین کلاینت ها و سرورها استفاده می کنند. این دوره اصول طراحی RESTful را خراب می کند و نشان می دهد که چگونه می توان API های امن RESTful را در بالای ASP.NET Core ساخت. Nate Barbettini به س questionsالاتی از جمله پاسخ می دهد: طراحی RESTful چیست؟ چگونه RESTful مسیریابی را انجام می دهید؟ چگونه می توان کلاسهای قابل استفاده مجدد را برای نمایش منابع ایجاد کرد؟ ذخیره چه نقشی دارد؟ و چگونه RESTful API ها را ایمن می کنید؟ وی همچنین مباحثی مانند مدل سازی داده ها ، روابط هایپر رسانه ، احراز هویت و مجوز را پوشش می دهد. در پایان دوره ، شما باید اصول اولیه - نحوه درخواست و بازگرداندن صحیح داده ها در ASP.NET Core - و بهترین روش ها برای ساختن API های امن و مقیاس پذیر برای سرویس دهی به کلاینت های وب ، کلاینت های موبایل و موارد دیگر را بدانید.
موضوعات شامل:
  • طراحی RESTful چیست؟
  • ساخت یک API جدید با هسته ASP.NET
  • استفاده از روشهای HTTP
  • بازگشت JSON
  • ایجاد مسیریابی RESTful با الگوها
  • نسخه سازی
  • تأمین امنیت API های RESTful با HTTPS
  • نمایندگی منابع
  • نمایندگی پیوندها
  • نمایندگی مجموعه ها
  • مرتب سازی و جستجو در مجموعه ها
  • فرم های ساختاری
  • افزودن حافظه پنهان به ASP.NET Core API
  • پیکربندی احراز هویت و مجوز کاربر

سرفصل ها و درس ها

مقدمه Introduction

  • قدرت API های RESTful The power of RESTful APIs

  • آنچه باید بدانید What you should know

  • معرفی نمونه API Example API introduction

1. مفاهیم REST API 1. REST API Concepts

  • رستوران چیست؟ What is REST?

  • REST در مقابل RPC REST vs. RPC

  • مستندات خود و HATEOAS Self-documentation and HATEOAS

  • روشهای HTTP HTTP methods

  • به روزرسانی کامل و جزئی Full and partial updates

  • بازگشت JSON Returning JSON

  • Ion hypermedia The Ion hypermedia type

2. ایجاد یک API اساسی 2. Build a Basic API

  • ایجاد یک پروژه جدید Create a new project

  • پیکربندی MVC Configure MVC

  • یک کنترلر اصلی ایجاد کنید Create a root controller

  • با پستچی تست کنید Test with Postman

  • مسیر را به کنترلرها با الگوهای Route to controllers with templates

  • آشنایی با OpenAPI Introduction to OpenAPI

  • NSwag را به پروژه اضافه کنید Add NSwag to the project

3. نسخه و خطاها 3. Versioning and Errors

  • رویکردها به نسخه API Approaches to API versioning

  • پشتیبانی نسخه را اضافه کنید Add versioning support

  • استثنائات را به عنوان JSON جدی بگیرید Serialize exceptions as JSON

4- API را ایمن کنید 4. Secure the API

  • امنیت حمل و نقل در هسته اصلی ASP.NET Transport security in ASP.NET Core

  • به HTTPS نیاز دارید Require HTTPS

  • HTTPS را بصورت محلی تست کنید Test HTTPS locally

  • چگونه CORS کار می کند How CORS works

  • میان افزار CORS را اضافه کنید Add CORS middleware

5- نمایندگی منابع 5. Represent Resources

  • یک کلاس منبع ایجاد کنید Create a resource class

  • بارگذاری داده ها از پیکربندی Load data from configuration

  • داده ها را از یک کنترل کننده برگردانید Return data from a controller

  • یک دیتابیس حافظه تنظیم کنید Set up an in-memory database

  • کلاسهای مدل داده ایجاد کنید Create data model classes

  • دیتابیس را با داده های آزمایش ببندید Seed the database with test data

  • یک منبع را از یک کنترل کننده برگردانید Return a resource from a controller

  • دسترسی به داده ها را به یک سرویس منتقل کنید Move data access to a service

  • مدل های نقشه به طور خودکار Map models automatically

6. نمایندگی لینک ها 6. Represent Links

  • کلاس پیوند ایجاد کنید Create a Link class

  • بازنویسی لینک ها با یک فیلتر Rewrite Links with a filter

  • بازنویسی منابع HREF Rewrite resource HREFs

7. نمایندگی مجموعه ها 7. Represent Collections

  • یک کلاس Collection ایجاد کنید Create a Collection class

  • همه منابع را در یک مجموعه برگردانید Return all resources in a collection

  • صفحه بندی را اضافه کنید Add pagination

  • صفحه پیش فرض و اعتبار سنجی Paging defaults and validation

  • ناوبری را به مجموعه های صفحه دار اضافه کنید Add navigation to paged collections

8. مجموعه مرتب سازی 8. Sorting Collections

  • مرتب سازی مجموعه طراحی Design collection sort

  • ویژگی های مرتب سازی را اضافه کنید Add sort attributes

  • پارامترهای مرتب سازی را تأیید کنید Validate sort parameters

  • عبارات مرتب سازی را بصورت دینامیکی بسازید Build sort expressions dynamically

  • یک عبارت مرتب سازی پیش فرض اضافه کنید Add a default sort term

9. جستجوی مجموعه ها 9. Searching Collections

  • جستجوی مجموعه طراحی Design collection search

  • ویژگی های جستجو را اضافه کنید Add search attributes

  • اعتبار پارامترهای جستجو Validate search parameters

  • عبارات جستجو را بصورت پویا بسازید Build search expressions dynamically

  • جستجو را به انواع دیگر گسترش دهید Extend search to other types

  • اپراتورهای مقایسه را اضافه کنید Add comparison operators

10. فرم ها و تغییر داده ها 10. Forms and Modifying Data

  • فرم در یون Forms in Ion

  • یک عملکرد POST ایجاد کنید Create a POST action

  • یک منبع را حذف کنید Delete a resource

  • فراداده فرم را جدی سازی کنید Serialize the form metadata

  • نمایش داده شد با استفاده از فرم Discoverable queries using forms

11- ذخیره سازی و فشرده سازی 11. Caching and Compression

  • پاسخ را فشرده کنید Compress responses

  • نحوه ذخیره سازی HTTP کار می کند How HTTP caching works

  • هدر Cache-Control را اضافه کنید Add the Cache-Control header

  • از هدر ETag پشتیبانی کنید Support the ETag header

  • ذخیره حافظه جانبی سرور را اضافه کنید Add server-side caching

12. احراز هویت و مجوز 12. Authentication and Authorization

  • نحوه تأیید هویت HTTP How HTTP authentication works

  • احراز هویت برای API های REST Authentication for REST APIs

  • هویت را اضافه کنید Add Identity

  • یک کاربر تست اضافه کنید Add a test user

  • یک مجموعه کاربران ایجاد کنید Create a users collection

  • یک مسیر ثبت نام ایجاد کنید Create a registration route

  • OpenIddict را اضافه کنید Add OpenIddict

  • یک نقطه پایان متن را اضافه کنید Add a token endpoint

  • یک مسیر UserInfo ایجاد کنید Create a UserInfo route

  • اطلاعات بیشتر در مورد OpenID Connect More about OpenID Connect

  • مجوز با استفاده از خط مشی Authorization using policies

نتیجه Conclusion

  • مراحل بعدی Next steps

نمایش نظرات

Linkedin (لینکدین)

لینکدین: شبکه اجتماعی حرفه‌ای برای ارتباط و کارآفرینی

لینکدین به عنوان یکی از بزرگترین شبکه‌های اجتماعی حرفه‌ای، به میلیون‌ها افراد در سراسر جهان این امکان را می‌دهد تا ارتباط برقرار کنند، اطلاعات حرفه‌ای خود را به اشتراک بگذارند و فرصت‌های شغلی را کشف کنند. این شبکه اجتماعی به کاربران امکان می‌دهد تا رزومه حرفه‌ای خود را آپدیت کنند، با همکاران، دوستان و همکاران آینده ارتباط برقرار کنند، به انجمن‌ها و گروه‌های حرفه‌ای ملحق شوند و از مقالات و مطالب مرتبط با حوزه کاری خود بهره‌مند شوند.

لینکدین همچنین به کارفرمایان امکان می‌دهد تا به دنبال نیروهای با تجربه و مهارت مورد نیاز خود بگردند و ارتباط برقرار کنند. این شبکه حرفه‌ای به عنوان یک پلتفرم کلیدی برای بهبود دسترسی به فرصت‌های شغلی و گسترش شبکه حرفه‌ای خود، نقش مهمی را ایفا می‌کند. از این رو، لینکدین به عنوان یکی از مهمترین ابزارهای کارآفرینی و توسعه حرفه‌ای در دنیای امروز مورد توجه قرار دارد.

آموزش ساخت و تأمین امنیت API های آرام در ASP.NET Core
جزییات دوره
4h 25m
75
Linkedin (لینکدین) Linkedin (لینکدین)
(آخرین آپدیت)
64,038
- از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Nate Barbettini Nate Barbettini

Nate Barbettini CTO و مهندس سرب در كوبلر است. Nate یک MVP مایکروسافت سابق و نویسنده کتاب The Little ASP.NET Core Book است. Nate در امنیت مدرن ، پشته ای کامل ، NET ، JavaScript و امنیت وب تخصص دارد. او علاقه مند است تا به توسعه دهندگان بیاموزد که چگونه کد بهتر و ایمن تری بنویسند.