شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید . اطلاعات
یک کلید API (که در Apigee Edge به عنوان کلید مصرفکننده شناخته میشود) یک مقدار رشتهای است که توسط یک برنامه کلاینت به پروکسیهای API شما ارسال میشود. این کلید به طور منحصر به فرد برنامه کلاینت را مشخص میکند.
اعتبارسنجی کلید API سادهترین شکل امنیت مبتنی بر برنامه است که میتوانید برای یک API پیکربندی کنید. یک برنامه کلاینت به سادگی یک کلید API را به همراه درخواست خود ارائه میدهد، سپس Apigee Edge بررسی میکند که آیا کلید API در وضعیت تأیید شده برای منبع مورد درخواست قرار دارد یا خیر. در داخل، پروکسیهای شما از سیاستهایی برای تأیید صحت کلید API استفاده میکنند.
برای پشتیبانی از این سادگی، باید کمی تنظیمات انجام دهید. برای پشتیبانی از کلیدهای API، باید:
- یک محصول API از Apigee Edge ایجاد کنید که پروکسیهای API مورد نظر شما برای محافظت را با استفاده از کلید API بستهبندی کند.
- یک برنامه توسعهدهنده Apigee Edge ایجاد کنید که نماینده توسعهدهنده برنامه کلاینتی باشد که برنامه او را تأیید اعتبار میکنید.
در ایجاد برنامه توسعهدهنده، شما محصولات API را که برنامه توسعهدهنده به آنها دسترسی خواهد داشت مشخص میکنید -- و برای آنها نیاز به ارائه یک کلید API دارد.
- به پروکسیهای خود (آنهایی که در محصول API خود گنجاندهاید)، سیاستهایی را اضافه کنید تا تأیید کنند که کلید API ورودی معتبر است.
آموزش «ایمنسازی API با درخواست کلیدهای API» روشی سریع برای یادگیری نحوه کنترل دسترسی به یک پروکسی API با استفاده از کلید API است.
نحوه عملکرد کلیدهای API
در Apigee Edge، به یک کلید API، کلید مصرفکننده گفته میشود. وقتی برنامههای توسعهدهنده را ثبت میکنید، Apigee Edge یک کلید مصرفکننده و یک رمز عبور تولید میکند. Apigee Edge کلید مصرفکننده را برای اعتبارسنجیهای بعدی ذخیره میکند. هر کلید مصرفکننده در سازمان منحصر به فرد است. توسعهدهنده برنامه، کلید مصرفکننده را در برنامه کلاینت جاسازی میکند. برنامه کلاینت باید برای هر درخواست، کلید مصرفکننده را ارائه دهد. سرویسهای API قبل از اجازه دادن به درخواست برنامه، کلید مصرفکننده را تأیید میکنند.
مراحل سطح بالا
مراحل زیر نحوه استفاده از کلیدهای API توسط Apigee Edge را شرح میدهد. این مراحل شامل احتمال وجود امنیت OAuth نیز میشود، زیرا اغلب همراه با کلیدهای API استفاده میشود.
- یک محصول API ایجاد کنید که شامل پروکسیهای API باشد که باید با کلید API محافظت شوند.
- شما یک برنامه توسعهدهنده را در سازمان خود ثبت میکنید . وقتی این کار را انجام میدهید، Apigee Edge یک کلید مصرفکننده و یک راز مصرفکننده تولید میکند.
- برنامه توسعهدهنده را حداقل با یک محصول API مرتبط کنید . این محصولی است که مسیرهای منابع و پروکسیهای API را با تأیید کلید مرتبط میکند.
- در زمان اجرا، وقتی برنامهی کلاینت درخواستی به API شما ارسال میکند، برنامهی کلاینت هنگام ارسال درخواست، کلید مصرفکننده را ارسال میکند . در عمل، کلید مصرفکننده ممکن است یا به صورت صریح ارسال شود یا ممکن است به صورت ضمنی از طریق یک توکن OAuth به آن اشاره شود:
- وقتی API از تأیید کلید API استفاده میکند -- مثلاً با پیادهسازی سیاست VerifyAPIKey -- برنامهی کلاینت باید کلید مصرفکننده را صریحاً ارسال کند.
- وقتی API از تأیید توکن OAuth استفاده میکند - مثلاً با پیادهسازی سیاست OAuthV2 - برنامهی کلاینت باید توکنی را ارسال کند که از کلید مصرفکننده مشتق شده است.
- پروکسی API اعتبارنامههای درخواست را از طریق یک سیاست VerifyAPIKey یا یک سیاست OAuthV2 با عملیات VerifyAccessToken اعتبارسنجی میکند . اگر سیاست اجرای اعتبارنامه را در پروکسی API خود لحاظ نکنید، هر تماسگیرندهای میتواند با موفقیت APIهای شما را فراخوانی کند. برای اطلاعات بیشتر، به سیاست Verify API Key مراجعه کنید.
تأیید اعتبار درخواست
این یک مرور کلی است. برای جزئیات و مثالهای کد، حتماً به بخش «تنظیم اعتبارسنجی کلید API» مراجعه کنید.
- اگر از تأیید توکن OAuth استفاده میکنید -- شما یک سیاست OAuth برای تأیید پیادهسازی کردهاید و برنامه کلاینت یک توکن OAuth ارسال کرده است:
- Apigee Edge تأیید میکند که توکن منقضی نشده است و سپس کلید مصرفی که برای تولید توکن استفاده شده است را جستجو میکند.
- اگر از کلید API استفاده میکنید -- شما یک سیاست VerifyAPIKey پیادهسازی کردهاید و برنامهی کلاینت کلید مصرفکنندهی خود را ارسال کرده است:
- Apigee Edge لیست محصولات API که کلید مصرفکننده به آنها مرتبط شده است را بررسی میکند.
- Edge هر محصول API را بررسی میکند تا ببیند آیا پروکسی API فعلی در محصول API گنجانده شده است یا خیر، و آیا مسیر منبع فعلی (مسیر url) در محصول API فعال است یا خیر.
- اج همچنین تأیید میکند که کلید مصرفکننده منقضی یا باطل نشده باشد، بررسی میکند که برنامه باطل نشده باشد و بررسی میکند که توسعهدهنده غیرفعال نباشد.
- اگر همه این موارد درست باشند -- توکن منقضی نشده باشد (در صورت وجود)، کلید مصرفکننده معتبر و تأیید شده باشد، برنامه تأیید شده باشد، توسعهدهنده فعال باشد، پروکسی در محصول موجود باشد و منبع روی محصول موجود باشد -- تأیید اعتبار با موفقیت انجام شده است.