افزونه ی PKCE


افزونه PKCE مخفف عبارت Proof Key for Code Exchange است که یک تکنیک برای کلاینت‌های عمومی توصیف می‌کند تا تهدیدات روند  قبلی یعنی Authorization Code را کاهش دهد و از آن‌ها جلوگیری کند.

کلیت کار این تکنیک این است که ابتدا یک رمز ایجاد می‌کند و سپس هنگام تبادل Authorization Code برای یک Access Token، دوباره از آن رمز استفاده می‌کند. به این ترتیب اگر authorization code، رهگیری شود و حمله ای اتفاق بیافتد، از آن جا که درخواست Token به رمز ساخته شده اولیه وابسته می‌باشد، این حمله بی‌اثر خواهد بود.

کلاینت عمومی و یا هر کلاینتی که نمی‌تواند Client Secret  را مخفی نگه دارد، اگر از روش Authorization Code استفاده کند، در معرض حمله رهگیری کد مجوز (authorization code interception attack) قرار می‌گیرد. در این حمله، مهاجم authorization code را که از  Authorization Serverدریافت می‌شود را رهگیری می‌کند و با استفاده از آن برای دستیابی به  Access Token اقدام کند.

این بخش از محتوا مخصوص کاربرانی است که ثبت‌نام کرده‌اند.
جهت مشاهدهٔ این بخش از محتوا لاگین نمایید.

با طی کردن این مراحل، اکنون کلاینت دارای یک Access Token است و می‌تواند از آن برای ایجاد درخواست‌های API از طرف کاربر استفاده کند.

توجه داشته باشید که استفاده از افزونه PKCE باعث نمی‌شود مقدار یا پارامتر جدیدی به پاسخ سرور به کلاینت اضافه شود و همان‌طور که در ابتدای این بخش ذکر شد، برای حفاظت در برابر تهدیدات Authorization Code می‌باشد و در کاهش آن‌ها تأثیر دارد، بنابراین کلاینت‌ها همیشه می‌توانند از افزونه PKCE  استفاده کنند حتی اگر یک Authorization Server از آن پشتیبانی نکند چون مقدار پارامتر اضافه‌ای نخواهد داشت که باعث ایجاد مشکل شده و یا درخواست ها به درستی اجرا نشوند. 

لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان