
Build policy-based access control for zero trust, APIs, SaaS, and AI agents
احراز هویت به تنهایی برای ایجاد اعتماد در یک سامانه دیجیتال کافی نیست. اینکه بدانیم یک کاربر، سرویس یا عامل هوش مصنوعی چه کسی است، تنها بخشی از مسئله را حل میکند. در یک سیستم مدرن باید بدانیم چه کسی اجازه انجام چه کاری را دارد، این اجازه تحت چه شرایطی معتبر است، از طرف چه کسی اعمال میشود و در چه زمینهای تصمیمگیری باید انجام شود.
کتاب Authorization in Action به یکی از مهمترین مسائل معماری و امنیت سامانههای دیجیتال میپردازد: مجوزدهی و کنترل دسترسی.
برای سالها، مدیریت هویت و دسترسی بیشتر روی احراز هویت متمرکز بوده است؛ یعنی مشخص کردن اینکه یک فرد یا موجودیت چه کسی است. اما با گسترش رایانش ابری، معماری میکروسرویس، سامانههای چندمستاجری، رابطهای برنامهنویسی، دستگاههای متصل و هوش مصنوعی، منطق کنترل دسترسی دیگر نمیتواند به شکل پراکنده در کد برنامهها، پایگاههای داده و سلسلهمراتب نقشها قرار داشته باشد.
Authorization in Action نشان میدهد چرا کنترل دسترسی مدرن باید از داخل برنامهها خارج شود و به یک قابلیت مستقل، پویا و مبتنی بر سیاست تبدیل شود.
در یک نرم افزار ساده ممکن است کنترل دسترسی تنها به چند نقش مانند مدیر و کاربر محدود شود. اما با رشد سامانه، وضعیت بسیار پیچیدهتر میشود.
ممکن است یک کاربر در یک سازمان مدیر باشد، اما فقط به دادههای همان سازمان دسترسی داشته باشد. ممکن است یک سرویس بتواند دادهای را فقط در شرایط خاصی مشاهده کند. یک شریک تجاری ممکن است به بخشی از اطلاعات دسترسی داشته باشد و یک عامل هوش مصنوعی نیز تنها در محدوده مشخصی اجازه اجرای ابزارها را داشته باشد.
در چنین محیطی، سؤال دیگر صرفاً این نیست که «آیا این کاربر مجاز است؟» بلکه باید مجموعهای از شرایط، ویژگیها، روابط و زمینه تصمیم بررسی شود.
این همان جایی است که مجوزدهی پویا اهمیت پیدا میکند.
یکی از مفاهیم پایه کتاب، تفکیک دقیق احراز هویت و مجوزدهی است.
احراز هویت مشخص میکند موجودیت چه کسی یا چه چیزی است. مجوزدهی مشخص میکند آن موجودیت چه کاری میتواند انجام دهد.
برای مثال، ورود موفق یک کاربر به سامانه به این معنی نیست که او اجازه مشاهده همه دادهها یا اجرای همه عملیات را دارد.
این تفاوت در معماریهای مدرن اهمیت بیشتری پیدا میکند، زیرا سیستمها دیگر فقط با انسانها تعامل ندارند. سرویسها، برنامهها، دستگاهها، شرکای خارجی و عاملهای هوش مصنوعی نیز میتوانند درخواست دسترسی ایجاد کنند.
هویت، موجودیت را معرفی میکند؛ مجوزدهی مشخص میکند آن موجودیت در یک زمینه مشخص چه اختیاری دارد.
یکی از ادعاهای اصلی کتاب این است که منطق مجوزدهی از محدوده یک برنامه منفرد فراتر رفته است.
در معماریهای قدیمیتر، قوانین دسترسی ممکن است مستقیماً در کد برنامه نوشته شوند. بخشی دیگر در پایگاه داده قرار گیرد و بخش دیگری نیز از طریق نقشهای مختلف مدیریت شود.
کلمات کلیدی:با افزایش تعداد برنامهها و سرویسها، این رویکرد باعث پراکندگی سیاستهای دسترسی میشود.
در نتیجه ممکن است دو برنامه برای یک کاربر درباره یک عملیات تصمیم متفاوتی بگیرند. تغییر یک قانون نیز میتواند به اصلاح چندین بخش از سیستم نیاز داشته باشد.
کتاب پیشنهاد میکند سیاستهای مجوزدهی به صورت مستقل و قابل مدیریت تعریف شوند تا بتوان از آنها در برنامهها، رابطهای برنامهنویسی، دادهها، دستگاهها و سامانههای هوش مصنوعی استفاده کرد.
مفهوم مرکزی کتاب Policy-Based Access Control یا PBAC است.
در کنترل دسترسی مبتنی بر سیاست، تصمیمهای مربوط به دسترسی بر اساس سیاستهایی مشخص میشوند که میتوان آنها را مستقل از منطق اصلی برنامه مدیریت کرد.
این سیاستها میتوانند شرایط مختلفی را در نظر بگیرند و به جای محدود شدن به نقشهای ثابت، تصمیمهای دقیقتر و پویاتری ایجاد کنند.
کتاب این رویکرد را به عنوان یک انتزاع مناسب برای کنترل دسترسی مدرن معرفی میکند.
سیاست به جای اینکه بخشی پراکنده از منطق برنامه باشد، به یک دارایی قابل مدیریت در معماری سیستم تبدیل میشود.
یکی از ایدههای مهم کتاب، نگاه کردن به سیاست به عنوان کد یا داده قابل مدیریت است.
وقتی سیاستهای دسترسی به شکل مشخص و مستقل تعریف شوند، میتوان آنها را در چرخه توسعه نرم افزار وارد کرد. میتوان آنها را آزمایش کرد، بررسی کرد، نسخهبندی کرد و برای پیدا کردن تضادها یا شکافهای امنیتی تحلیل کرد.
این رویکرد باعث میشود مجوزدهی از یک منطق پنهان در میان کدهای برنامه به یک قابلیت عملیاتی و قابل مشاهده تبدیل شود.
کتاب در فصلهای مربوط به مدیریت سیاست، ذخیرهسازی، آزمون و تحلیل ایستا، همین دیدگاه را به شکل عملی توسعه میدهد.
کتاب مسیر تکامل کنترل دسترسی را از مدلهای ایستا به مدلهای پویا دنبال میکند.
در مدلهای سادهتر، دسترسی ممکن است بر اساس فهرستهای ثابت یا نقشهای از پیش تعریفشده تعیین شود. اما در سامانههای پیچیدهتر، تصمیم دسترسی باید بتواند روابط، ویژگیها و شرایط لحظهای را نیز در نظر بگیرد.
در این مسیر، کتاب مفاهیم ACL، RBAC، ReBAC، ABAC و PBAC را بررسی میکند.
این مدلها به یکدیگر مرتبط هستند، اما هرکدام برای نوع متفاوتی از مسئله کنترل دسترسی مناسب هستند.
فهرستهای کنترل دسترسی یا ACL یکی از روشهای کلاسیک مدیریت مجوزها هستند.
در این مدل، دسترسی به منابع بر اساس فهرستی از موجودیتهای مجاز تعریف میشود.
مدل RBAC یا کنترل دسترسی مبتنی بر نقش نیز دسترسی را از طریق نقشها مدیریت میکند. برای مثال میتوان نقشهایی مانند مدیر، کاربر یا ناظر تعریف کرد و مجموعهای از مجوزها را به هر نقش اختصاص داد.
این روشها همچنان کاربرد دارند، اما با افزایش پیچیدگی سیستم ممکن است محدودیتهای آنها آشکار شود.
Relationship-Based Access Control یا ReBAC دسترسی را بر اساس روابط میان موجودیتها بررسی میکند.
این رویکرد برای سیستمهایی که رابطه میان کاربران، منابع و سازمانها اهمیت زیادی دارد، میتواند کاربردی باشد.
برای مثال، نوع رابطه یک کاربر با یک پروژه یا منبع میتواند بخشی از تصمیم مجوزدهی باشد.
کتاب ReBAC را در مسیر حرکت از مدلهای ثابت به سمت مجوزدهی پویا بررسی میکند.
در Attribute-Based Access Control یا ABAC، تصمیم دسترسی میتواند بر اساس ویژگیهای موجودیتها، منابع و شرایط اتخاذ شود.
این رویکرد نسبت به نقشهای ثابت انعطاف بیشتری ایجاد میکند، زیرا تصمیم میتواند به مجموعهای از ویژگیها وابسته باشد.
برای سامانههایی که نیاز به قوانین دقیقتر و وابسته به زمینه دارند، چنین مدلی اهمیت بیشتری پیدا میکند.
یکی از بخشهای عملی و مهم کتاب به Cedar اختصاص دارد.
Cedar یک زبان سیاست است که در کتاب برای آموزش طراحی و اجرای سیاستهای مجوزدهی مورد استفاده قرار میگیرد.
فصل هفتم ساختار سیاستهای Cedar، مدل PARC، نحوه ارزیابی تصمیمهای دسترسی و اصول طراحی Cedar را معرفی میکند.
این بخش به خواننده کمک میکند از مفاهیم نظری کنترل دسترسی به مرحله نوشتن و ارزیابی سیاستهای واقعی حرکت کند.
کتاب در چند بخش از مدل PARC برای تجزیه تصمیمهای مجوزدهی استفاده میکند.
این مدل به عنوان یک چارچوب مشترک برای بررسی تصمیمهای دسترسی در معماری مرجع مجوزدهی و همچنین مقایسه زبانها و چارچوبهای مختلف استفاده میشود.
وجود چنین چارچوبی باعث میشود خواننده بتواند مسئله کنترل دسترسی را به اجزای مشخصتری تقسیم کند و تصمیمهای پیچیده را ساختاریافتهتر بررسی کند.
کتاب تنها روی Cedar متوقف نمیشود.
در فصل هشتم، چند زبان و چارچوب دیگر نیز بررسی میشوند؛ از جمله XACML، OPA/Rego، OpenFGA و AWS IAM.
این مقایسه با استفاده از چارچوب PARC انجام میشود تا خواننده بتواند تفاوت رویکردها و کاربردهای آنها را بهتر درک کند.
هدف این بخش ایجاد شناختی گستردهتر از فضای فناوریهای مجوزدهی مبتنی بر سیاست است.
پس از آشنایی با زبان Cedar، کتاب وارد مرحله عملیتر میشود.
در فصل نهم، یک طرحواره Cedar برای یک برنامه واقعی طراحی میشود و سپس سیاستهای مربوط به آن نوشته میشوند.
همچنین الگوهای مختلف مجوزدهی مانند مجوزهای اختیاری، مجوزهای عضویت و مجوزهای مبتنی بر رابطه بررسی میشوند.
این بخش نقطه اتصال میان معماری کنترل دسترسی و پیادهسازی واقعی سیاستهاست.
یکی از موضوعات مهم در طراحی سیاستهای دسترسی، اصل Least Privilege یا کمترین سطح دسترسی است.
هدف این اصل آن است که هر موجودیت فقط مجوزهایی را داشته باشد که برای انجام وظیفه مورد نیاز است.
کتاب در فصل دهم به طراحی سیاستهای واضح و مبتنی بر کمترین سطح دسترسی میپردازد و همچنین مدیریت مخزنها و محلهای نگهداری سیاستها، آزمون سیاستها در برابر سناریوهای واقعی و تحلیل ایستا را بررسی میکند.
تحلیل ایستا میتواند برای شناسایی تضادها و شکافهای موجود در سیاستها مورد استفاده قرار گیرد.
کنترل دسترسی در معماری میکروسرویس بسیار پیچیدهتر از یک برنامه یکپارچه است.
وقتی سیستم از تعداد زیادی سرویس تشکیل شده باشد، درخواستهای داخلی میان سرویسها نیز باید به شکل مناسبی کنترل شوند.
کتاب در فصل یازدهم به دشواری مجوزدهی رابطهای برنامهنویسی در محیطهای میکروسرویسی میپردازد و الگوهای اعمال سیاست برای رابطهای داخلی را بررسی میکند.
همچنین ارتباط میان OAuth، توکنهای دسترسی و Cedar برای ایجاد مجوزدهی دقیقتر توضیح داده میشود.
رابطهای برنامهنویسی یکی از نقاط مهم اعمال مجوز هستند.
یک درخواست API ممکن است از سوی یک کاربر، سرویس یا موجودیت دیگری ایجاد شود و سیستم باید بتواند بر اساس هویت و زمینه درخواست، تصمیم مناسب را اتخاذ کند.
ترکیب توکنهای دسترسی با سیاستهای دقیق مجوزدهی میتواند به سیستم اجازه دهد به جای تکیه بر یک مجوز کلی، تصمیمهای جزئیتر و متناسب با شرایط اتخاذ کند.
در مجوزدهی پویا، فقط هویت و نقش کاربر کافی نیست.
گاهی تصمیم باید بر اساس مجموعهای از سیگنالهای زمینهای اتخاذ شود. کتاب در فصل دوازدهم فضای انتخاب سهبعدی برای سیگنالهای زمینهای، Policy Information Point یا PIP و روشهای جمعآوری و انتقال این سیگنالها را بررسی میکند.
یکی از مسائل مهم در این زمینه، تازگی اطلاعات و ابطال مجوزهاست.
اگر یک تصمیم دسترسی بر اساس اطلاعاتی گرفته شود که دیگر معتبر نیستند، نتیجه میتواند با وضعیت واقعی سیستم متفاوت باشد. بنابراین مدیریت تازگی و ابطال اطلاعات بخش مهمی از طراحی مجوزدهی پویاست.
در معماری چندمستاجری، چند سازمان یا مشتری ممکن است از یک سامانه مشترک استفاده کنند.
در چنین محیطی، یک مسئله اساسی این است که کاربران یک مستاجر نتوانند به منابع مستاجر دیگر دسترسی پیدا کنند.
کتاب در فصل سیزدهم نمونه ACME را به یک پلتفرم چندمستاجری توسعه میدهد و موضوعاتی مانند مجوزدهی چندلایه، الگوهای استقرار نقاط اعمال سیاست و شخصیسازی امن برای مستاجران را بررسی میکند.
کنترل جداسازی میان مستاجران یکی از کاربردهای مهم مجوزدهی پویا در سامانههای سازمانی است.
وقتی سیاستها در چند تیم و سیستم استفاده میشوند، صرفاً نوشتن آنها کافی نیست.
سازمان باید بداند چه کسی مسئول ایجاد، تغییر، بررسی و حذف سیاستهاست.
فصل چهاردهم کتاب به حاکمیت سیاستها اختصاص دارد و چرخه عمر مدیریت سیاست، چارچوبهای حاکمیتی و ارتباط آنها با الزامات قانونی و مقرراتی را بررسی میکند.
این رویکرد باعث میشود مجوزدهی فقط یک مسئله فنی نباشد و به بخشی از حاکمیت کلی سازمان تبدیل شود.
در معماری Zero Trust، اعتماد صرفاً بر اساس قرار گرفتن یک کاربر یا سرویس در یک شبکه خاص ایجاد نمیشود.
کتاب در فصل پانزدهم توضیح میدهد که چگونه این رویکرد تمرکز امنیت را از مرزهای شبکه به سمت تصمیمهای مجوزدهی منتقل میکند.
کنترل دسترسی مبتنی بر سیاست میتواند امکان تصمیمگیری مداوم درباره دسترسی را فراهم کند و به سازمان کمک کند میزان پیشرفت خود در مسیر Zero Trust را با معیارهای مشخص ارزیابی کند.
در معماری Zero Trust، مجوزدهی یکی از عناصر اصلی تصمیمگیری درباره اعتماد است.
فصل شانزدهم به Verifiable Credentials یا اعتبارنامههای قابل راستیآزمایی میپردازد.
این اعتبارنامهها امکان انتقال ادعاهای قابل حمل و رمزنگاریشده را فراهم میکنند که میتوانند در تصمیمهای مجوزدهی مورد استفاده قرار گیرند.
کتاب نحوه اتصال این اعتبارنامهها به مدلهای مجوزدهی مبتنی بر سیاست را بررسی میکند و نشان میدهد چگونه اطلاعات قابل راستیآزمایی میتوانند بخشی از تصمیم دسترسی باشند.
با ورود هوش مصنوعی به سامانههای نرم افزاری، مسئله مجوزدهی اهمیت بیشتری پیدا کرده است.
یک سامانه هوش مصنوعی ممکن است به دادهها، ابزارها، APIها و منابع مختلف دسترسی داشته باشد. بنابراین مشخص کردن اینکه این سامانه چه کاری اجازه دارد انجام دهد اهمیت بسیار زیادی دارد.
کتاب در فصل هفدهم یک اصل مهم را مطرح میکند: سامانههای هوش مصنوعی نباید خودشان تصمیمگیرنده نهایی مجوزدهی باشند.
در عوض، هوش مصنوعی میتواند در نوشتن و تحلیل سیاستها کمک کند، اما تصمیمهای دسترسی باید تحت کنترل سازوکارهای مشخص و قابل مدیریت قرار داشته باشند.
سامانههای Retrieval-Augmented Generation یا RAG برای تولید پاسخ از دادههای بیرونی استفاده میکنند.
اما اینکه یک مدل بتواند به یک منبع داده دسترسی پیدا کند، به معنی مجاز بودن آن برای مشاهده همه اطلاعات موجود در آن منبع نیست.
کتاب به مسئله کنترل دسترسی در سامانههای RAG میپردازد و بررسی میکند چگونه میتوان سیاستهای مجوزدهی را در این نوع معماریها اعمال کرد.
این موضوع برای سازمانهایی که قصد استفاده از هوش مصنوعی روی دادههای داخلی و حساس خود را دارند، اهمیت زیادی دارد.
یکی از پیشرفتهترین مباحث کتاب، ارتباط میان Authorization و Agentic AI است.
عاملهای هوش مصنوعی برخلاف یک مدل صرفاً پاسخدهنده، میتوانند در یک چرخه چندمرحلهای تصمیم بگیرند، ابزارها را فراخوانی کنند و عملیات مختلفی انجام دهند.
به همین دلیل، تعیین اینکه یک عامل در هر مرحله چه مجوزی دارد، مسئلهای پیچیدهتر از کنترل دسترسی یک کاربر معمولی است.
کتاب فصل هجدهم را به این موضوع اختصاص داده و درباره چرخههای عاملمحور آگاه از سیاست، استفاده از سیاست برای هدایت رفتار عامل و تفویض اختیار در سامانههای عاملمحور بحث میکند.
هرچه عامل هوش مصنوعی مستقلتر شود، اهمیت کنترل دقیق محدوده اختیارات آن بیشتر میشود.
عاملها ممکن است از طرف یک کاربر یا سازمان عملیاتی را انجام دهند.
در چنین شرایطی باید مشخص باشد عامل دقیقاً چه اختیاری از طرف موجودیت اصلی دریافت کرده است و این اختیار تا کجا ادامه دارد.
مفهوم تفویض اختیار به سازمان اجازه میدهد میان «انجام یک کار به نمایندگی از دیگری» و «داشتن اختیار نامحدود» تفاوت قائل شود.
این مسئله یکی از چالشهای مهم معماری سامانههای عاملمحور محسوب میشود و کتاب آن را در چارچوب سیاستهای مجوزدهی بررسی میکند.
فصل نوزدهم کتاب نگاه گستردهتری به آینده کنترل دسترسی دارد.
در این بخش، موضوع از یک قابلیت فنی ساده به یک توانمندی راهبردی تبدیل میشود. سازمان میتواند وضعیت بلوغ سیستم مجوزدهی خود را ارزیابی کند و بررسی کند که آیا سیاستها، فرایندهای حاکمیتی و زیرساخت تصمیمگیری آن برای نیازهای آینده آماده هستند یا خیر.
دیدگاه کلی کتاب این است که آینده سامانههای دیجیتال به مجوزدهی مداوم و مبتنی بر سیاست وابسته خواهد بود.
یکی از ویژگیهای ساختاری کتاب، استفاده از یک مثال پیوسته با نام ACME Corp است.
این مثال از فصلهای ابتدایی آغاز میشود و همزمان با پیشرفت مفاهیم کتاب، سیستم مجوزدهی آن نیز پیچیدهتر میشود.
در ابتدا مفاهیم پایه مطرح میشوند و سپس همان مثال برای بررسی سیاستها، معماری، چندمستاجری، حاکمیت و سایر موضوعات پیشرفتهتر توسعه پیدا میکند.
این روش باعث میشود مفاهیم مختلف در قالب یک سناریوی پیوسته دیده شوند، نه اینکه هر فصل صرفاً یک مثال مستقل داشته باشد.
ضمیمه اول کتاب یک راهنمای کامل برای پیادهسازی مثال ACME Customer Collaboration با استفاده از Amazon Verified Permissions ارائه میکند.
این بخش به خواننده کمک میکند مفاهیمی را که در فصلهای مربوط به طراحی سیاست آموخته است، در یک نمونه عملی دنبال کند.
ضمیمه دوم به استفاده از ابزارهای توسعه مبتنی بر هوش مصنوعی برای نوشتن و بررسی سیاستهای Cedar میپردازد.
این موضوع نشان میدهد که خود فرایند طراحی و بررسی سیاست نیز میتواند از ابزارهای هوش مصنوعی کمک بگیرد، بدون اینکه تصمیم نهایی مجوزدهی به خود مدل واگذار شود.
ضمیمه سوم الگوهای مجوزدهی مطرحشده در فصل هجدهم را با استفاده از OpenClaw، یک چارچوب متنباز برای عاملهای مدل زبانی که از ابزار استفاده میکنند، نشان میدهد.
این بخش ارتباط میان مفاهیم نظری Authorization و معماری عاملهای هوش مصنوعی را به شکل عملیتر دنبال میکند.
Authorization in Action برای افرادی نوشته شده که در ساخت، ایمنسازی یا حاکمیت سامانههای دیجیتال نقش دارند.
توسعهدهندگان میتوانند از کتاب برای درک بهتر نحوه ادغام کنترل دسترسی با برنامهها و APIها استفاده کنند.
معماران هویت و امنیت میتوانند از چارچوبهای معماری و مدلهای مختلف مجوزدهی برای طراحی سیستمهای پیچیدهتر بهره ببرند.
متخصصان امنیت میتوانند موضوعاتی مانند Zero Trust، سیاستهای دسترسی، حاکمیت و کنترل سامانههای عاملمحور را دنبال کنند.
مدیران محصول نیز میتوانند درک بهتری از طراحی قابلیتهایی پیدا کنند که به مجوزهای دقیق و چندسطحی نیاز دارند.
در نهایت، رهبران فنی و معماران سازمانی میتوانند از کتاب برای بررسی جایگاه Authorization در معماری کلی سازمان استفاده کنند.
کتاب به گونهای نوشته شده که برای شروع آن به تخصص قبلی در Authorization یا زبانهای سیاستنویسی نیاز ندارید.
شش فصل ابتدایی یک واژگان مشترک ایجاد میکنند و مفاهیم بنیادی هویت، احراز هویت، مجوزدهی و معماری کنترل دسترسی را به تدریج معرفی میکنند.
پس از ایجاد این پایه، خواننده میتواند بر اساس نیاز خود مسیر مطالعه را انتخاب کند.
توسعهدهندگان میتوانند روی فصلهای ۷ تا ۱۰ و بخشهای عملی سیاستنویسی تمرکز کنند. متخصصان امنیت ممکن است فصلهای ۱۴ و ۱۵ درباره حاکمیت و Zero Trust را در اولویت قرار دهند و افرادی که روی هوش مصنوعی کار میکنند، میتوانند فصلهای ۱۷ و ۱۸ را با تمرکز بیشتری مطالعه کنند.
شش فصل نخست مفاهیم هویت دیجیتال، احراز هویت، تفاوت احراز هویت و مجوزدهی، مدلهای کنترل دسترسی و حرکت از کنترل دسترسی ایستا به پویا را معرفی میکنند.
این فصلها بهتر است به ترتیب مطالعه شوند، زیرا زبان و چارچوب مفهومی مورد استفاده در ادامه کتاب را ایجاد میکنند.
این بخش برای توسعهدهندگانی که میخواهند با Cedar و طراحی سیاستهای واقعی کار کنند اهمیت ویژهای دارد.
زبان Cedar، مقایسه چارچوبهای سیاست، طراحی طرحواره، نوشتن سیاست، کمترین سطح دسترسی و آزمون سیاستها در این قسمت قرار دارند.
در این بخش موضوعاتی مانند APIها، سیگنالهای زمینهای، چندمستاجری، حاکمیت، Zero Trust و اعتبارنامههای قابل راستیآزمایی بررسی میشوند.
این دو فصل برای خوانندگانی که روی هوش مصنوعی، RAG و عاملهای هوش مصنوعی کار میکنند اهمیت ویژهای دارند.
موضوعاتی مانند کنترل دسترسی در RAG، استفاده مسئولانه از هوش مصنوعی در سیاستنویسی و مدیریت اختیار عاملها در این بخش مطرح میشوند.
آخرین فصل، بحث را از پیادهسازی فنی به بلوغ سازمانی و نقش راهبردی Authorization در آینده سامانههای دیجیتال میبرد.
Authorization in Action کتابی درباره یکی از پایهایترین اما در عین حال پیچیدهترین اجزای معماری سامانههای دیجیتال است: اینکه چه کسی یا چه چیزی اجازه انجام چه کاری را دارد.
کتاب از یک تفاوت اساسی شروع میکند: شناخت هویت یک موجودیت با تعیین اختیارات آن یکی نیست.
از این نقطه، مسیر کتاب به سمت کنترل دسترسی مبتنی بر سیاست، مجوزدهی پویا و جدا کردن منطق Authorization از کد برنامه حرکت میکند.
ACL و RBAC به عنوان مدلهای شناختهشده بررسی میشوند و سپس مفاهیم ReBAC، ABAC و PBAC برای درک کنترل دسترسی مدرن معرفی میشوند.
در بخش عملی، Cedar به عنوان زبان اصلی سیاستنویسی مورد استفاده قرار میگیرد و خواننده با طراحی طرحواره، نوشتن سیاست، اصل کمترین سطح دسترسی، مدیریت سیاستها و آزمون آنها آشنا میشود.
در ادامه، مسئله به معماریهای پیچیدهتر گسترش پیدا میکند: میکروسرویسها، APIها، OAuth، سیگنالهای زمینهای، سامانههای چندمستاجری، حاکمیت سیاستها و Zero Trust.
در بخشهای پیشرفتهتر نیز Authorization وارد حوزه هوش مصنوعی میشود. کتاب موضوعاتی مانند کنترل دسترسی در RAG، استفاده از هوش مصنوعی برای کمک به سیاستنویسی و مهمتر از همه، کنترل اختیار عاملهای هوش مصنوعی و تفویض مجوز در سامانههای عاملمحور را بررسی میکند.
به همین دلیل، این کتاب را میتوان راهنمایی برای درک و پیادهسازی معماری مجوزدهی مدرن و مبتنی بر سیاست دانست؛ معماریای که قرار است کنترل دسترسی را از یک منطق پراکنده در برنامهها به یک قابلیت مستقل، قابل مدیریت، قابل آزمون و سازگار با نیازهای سامانههای مدرن تبدیل کند.
نمونه چاپ کتاب موجود نیست.
نظرات کاربران (0)