ادغام API نه تنها نیاز به کنترل دسترسی دارد، بلکه همچنین اطمینان از صحت و یکپارچگی هر درخواست است. برای انجام این کار، ما از امضای HMAC (کد تأیید اعتبار پیام مبتنی بر هش)، و همچنین رمزگذاری بدن و پارامترهای درخواست ها، اطمینان از حفاظت از داده ها حتی در هنگام انتقال در شبکه های باز پشتیبانی می کنیم.
با استفاده از HMAC، هر طرف (مشتری و سرور) تأیید می کند که درخواست توسط یک طرف مجاز ایجاد شده است، در طول مسیر تغییر نکرده است و دارای محتوای رمزگذاری شده است.
چه چیزی اجرا می شود
| مکانیسم | هدف و منافع |
|---|---|
| امضای HMAC | هر درخواست را با یک کلید خصوصی امضا کنید |
| کنترل یکپارچگی | تأیید اینکه محتوا در هنگام آپلود تغییر نکرده است |
| درخواست رمزگذاری بدن | استفاده از AES یا RSA برای محافظت از اطلاعات حساس |
| امضا شده با برچسب زمانی | حفاظت از حمله مجدد |
| امضای پارامترهای پرسوجو | اعتبار سنجی رشته پرس و جو و payload از طریق تابع هش |
چگونه کار می کند
1. مشتری یک بدنه درخواست ایجاد می کند و یک برچسب زمانی اضافه می کند
2. محاسبه شده توسط HMAC (به عنوان مثال SHA256) بر اساس راز و محتوا
3. امضا به هدر اضافه می شود (به عنوان مثال، «X-Signature»)
4. سرور امضا، برچسب زمان و IP معتبر را تأیید می کند
5. اگر امضا مطابقت داشته باشد، درخواست اجرا می شود، در غیر این صورت رد می شود
مزایای ادغام API
حفاظت در برابر جایگزینی یا تحریف درخواست
قابلیت برقراری ارتباط ایمن بدون TLS (در شبکه های بسته)
افزایش اعتماد به لینک داده ها
استقلال پلتفرم یا زبان خاص
پیاده سازی انعطاف پذیر برای انواع مختلف مشتریان: میز نقدی، دروازه، ارائه دهندگان
جایی که بسیار مهم است
ادغام با سیستم های پرداخت، نقدی یا مالی
API ها در حال اجرا در یک محیط چند اجاره ای یا شریک
سیستم هایی با افزایش الزامات تأیید درخواست
تعامل بین خدمات داخلی بدون مجوز دائمی
امضا و رمزگذاری HMAC قفل API شما در برابر جعل و دستکاری است. چنین مکانیسم هایی به شما امکان می دهد حتی در شرایط افزایش الزامات امنیتی، ادغام قابل اعتماد ایجاد کنید.