Programming Clients for Secure Web API Authorization and Authentication
Ryan Boyd

#OAuth
#OAuth_2
#web_application
🧠 چه روی وب کار کنی چه روی اپلیکیشن موبایل، پروتکل OAuth 2.0 عملاً خیلی از دردسرهای احراز هویت و دسترسی رو برات ساده میکنه. این مقدمهی کوتاه توضیح میده چطور OAuth بهعنوان یک استاندارد واحد برای authorization روی APIهای مختلف وب استفاده میشه و بهت اجازه میده بهصورت امن به دادههای کاربر مثل پروفایل، عکسها، ویدیوها و لیست مخاطبین دسترسی بگیری و تجربه کاربری اپلیکیشن رو بهتر کنی.
⚙️ در ادامه با مثالهای کد، مراحل قدمبهقدم و سناریوهای واقعی یاد میگیری چطور OAuth 2.0 رو در اپلیکیشنهای server-side، client-side و موبایل پیادهسازی کنی. همچنین میبینی چطور میشه به social graphها دسترسی گرفت، دادهها رو در فایلسیستم آنلاین کاربر ذخیره کرد و کارهای مشابه رو انجام داد.
🔑 این کتاب کمک میکنه بهتر درک کنی OAuth 2.0 دقیقاً چه نقشی در authentication و authorization داره و چرا به یک استاندارد کلیدی تبدیل شده.
🧰 همچنین یاد میگیری:
🔄 چطور Authorization Code Flow کمک میکنه دادهها رو از چند سرویس مختلف یکپارچه کنی
📱 چرا اپلیکیشنهای native موبایل رفتار متفاوتی نسبت به اپلیکیشنهای موبایل وب دارن
🧩 چطور از OpenID Connect استفاده کنی و نیاز به ساخت سیستم احراز هویت اختصاصی رو حذف کنی
📚 فهرست مطالب
1. مقدمه
2. جریان اجرای اپلیکیشن وب سمت سرور (Server-Side Flow)
3. جریان اپلیکیشنهای وب سمت کلاینت (Client-Side Flow)
4. جریان Resource Owner Password
5. جریان Client Credentials
6. دریافت دسترسی به دادههای کاربر در اپلیکیشنهای موبایل
7. احراز هویت با OpenID Connect
8. ابزارها و کتابخانهها
👨💻 درباره نویسنده
👨💻 رایان بویِد یک Developer Advocate در گوگل است که روی توانمندسازی توسعهدهندهها برای توسعه روی سرویسهای گوگل و ساخت کسبوکار بر بستر فناوریهای گوگل کار میکنه. او قبلاً روی پروژه OpenSocial فعالیت داشته و تیم Developer Relations مربوط به APIهای AtomPub گوگل رو هدایت کرده است.
Whether you develop web applications or mobile apps, the OAuth 2.0 protocol will save a lot of headaches. This concise introduction shows you how OAuth provides a single authorization technology across numerous APIs on the Web, so you can securely access users’ data—such as user profiles, photos, videos, and contact lists—to improve their experience of your application.
Through code examples, step-by-step instructions, and use-case examples, you’ll learn how to apply OAuth 2.0 to your server-side web application, client-side app, or mobile app. Find out what it takes to access social graphs, store data in a user’s online filesystem, and perform many other tasks.
Table of Contents
Chapter 1: Introduction
Chapter 2: Server-Side Web Application Flow
Chapter 3: Client-Side Web Applications Flow
Chapter 4: Resource Owner Password Flow
Chapter 5: Client Credentials Flow
Chapter 6: Getting Access to User Data from Mobile Apps
Chapter 7: OpenID Connect Authentication
Chapter 8: Tools and Libraries
Ryan Boyd is a developer advocate at Google focused on enabling developers to extend Google Apps and build businesses on top of Google technology. He previously worked on OpenSocial and led the developer relations team for Google’s AtomPub APIs. Prior to joining Google, Ryan worked in higher education as a web architect for RIT’s central web hosting environment and as web app developer building admissions and student systems.









