مدیریت دسترسی وب‌سرویس‌ها در WSO2 API Manager

در این مقاله چندین روش جهت مدیریت و محدودسازی دسترسی بهره‌برداران به API ها را معرفی می‌کنیم در ادامه این مطلب با شرکت دانش بنیان پلتکو همراه باشید.

  • Allowed IPs (IP های مجاز)
    • Creating the advanced rate limiting policy (ایجاد سیاست محدود کردن نرخ پیشرفته)
    • درگیر کردن policy (سیاست) با یک API
  • Denying requests (رد درخواست ها)
    • مسدود سازی Context خاص از یک API

IP های مجاز

هنگامی که درخواست‌های یک API فقط از مجموعه‌ای از IPهای شناخته شده/قابل اعتماد مجاز است، می‌توانید با پیکربندی گروهی از IPهای مجاز از طریق ویژگی Advanced Rate Limiting به این هدف دست یابید.

ایجاد سیاست محدودیت نرخ پیشرفته

  1. وارد پورتال مدیریت پلتفرم پلتکو شوید. (https://<ip_address>:9443/admin)
  2. در زبانه Rate Limiting Policies (سیاست های محدود کردن نرخ) و به Advanced Policies (خط مشی‌های پیشرفته) بروید.
  3. برای افزودن یک ردیف محدودیت نرخ جدید، روی Add New Policy کلیک کنید.

مدیریت دسترسی وب‌سرویس‌ها در WSO2 API Manager

  1. جزئیات را مانند زیر پر کنید و روی Add Conditional Group کلیک کنید.

 

مدیریت دسترسی وب‌سرویس‌ها در WSO2 API Manager

  1. Conditional Group اضافه شده را باز کنید و جزئیات را پر کنید.

ویژگی

مقدار

IP Condition Type Specific IP (IP خاص)
IP Address به عنولن مثال، 193.100.3.106
Invert Condition

(شرط معکوس)

تیک خورده (اگر “شرط معکوس” تیک زده شود، این شرط فقط برای IP هایی اعمال می‌شود که در “آدرس IP” ذکر نشده اند.)
Request Count 0

 

در زیر یک نمونه پیکربندی آورده شده است.

 

مدیریت دسترسی وب‌سرویس‌ها در WSO2 API Manager

 

 

 

مدیریت دسترسی وب‌سرویس‌ها در WSO2 API Manager

 

توجه

در پیکربندی بالا، ما به یک آدرس IP خاص اجازه دسترسی به یک API را می‌دهیم. شما می‌توانید با انتخاب

IP Range (محدوده IP) برای نوع شرط IP در گروه شرطی و تعیین محدوده به صورت زیر، محدوده ای از IP ها را نیز مجاز کنید.

 

Web services access management in WSO2 API Manager

 

  1. روی SAVE کلیک کنید.

ما اکنون با موفقیت این policy (سیاست) را ایجاد کرده‌ایم. اکنون باید این سیاست را با یک API درگیر کنیم.

درگیر کردن policy (سیاست) با یک API

  1. وارد API ناشر https://Localhost:9443/publisher شوید.
  2. API را انتخاب کرده و به منوی Resources در API Configurations بروید.
  3. API level را در Operational Configuration (تنظیمات عملیاتی) فعال کنید و سیاست محدودیت نرخ جدید ایجاد شده را انتخاب کنید.

Web services access management in WSO2 API Manager

  1. API را ذخیره و منتشر کنید. اکنون API فقط با IP مشخص شده در سیاست محدود کردن نرخ قابل دسترسی خواهد بود.

توجه

این سیاست برای هر واحد زمان مجدداً اجرا می شود. هر بار که این سیاست اجرا می‌شود، حداقل 1 درخواست قبل از مسدود کردن درخواست‌ها مجاز است. داشتن واحد زمان کمتر، دفعات ارسال درخواست‌ها را افزایش می‌دهد. از این رو، داشتن واحد زمان بزرگتر برای به حداقل رساندن تعداد درخواست های ارسالی مناسب است.

Denying requests (رد درخواست ها)

با رد درخواست ها، می‌توانید از سرورها در برابر حملات متداول و سوء استفاده کاربران محافظت کنید. به عنوان مثال، اگر یک کاربر مخرب از سیستم سوء استفاده کند، تمام درخواست های دریافت شده از آن کاربر خاص می تواند به طور کامل مسدود شود. کاربران اداری Tenant (مستاجر) را می‌توان بر اساس پارامترهای زیر مسدود کرد:

  • Block calls to specific APIs (مسدود کردن فراخوانی‌ها به APIهای خاص)
  • Block all calls from a given application (مسدود کردن همه فراخوانی‌ها از یک برنامه خاص)
  • Block requests coming from a specific IP address (مسدود کردن درخواست‌هایی که از یک آدرس IP خاص می‌آیند)
  • Block a specific user from accessing APIs (مسدود کردن دسترسی یک کاربر خاص به API)

برای رد درخواست،

  1. با استفاده از URL https://localhost:9443/admin و اعتبار مدیریت خود وارد پورتال مدیریت شوید.
  2. روی Deny Policies در بخش Rate Limiting Policies کلیک کنید و روی Add Policy کلیک کنید.

 

Web services access management in WSO2 API Manager

 

آیتم مورد نظر برای انکار یا رد را انتخاب کنید، مقداری را وارد کنید و روی Deny کلیک کنید.

 

Web services access management in WSO2 API Manager

مسدود سازی یک Context خاص از یک API

همانطور که در بالا توضیح داده شد، می‌توانید درخواست برای API ها، توسط برنامه ها، به آدرس های IP و برای کاربران را رد کنید. بیایید ببینیم چگونه می‌توانیم درخواست‌های یک API را رد کنیم.

  1. با استفاده از URL https://localhost:9490/admin و اعتبار مدیریت خود وارد پورتال مدیریت شوید.
  2. روی Deny Policies در بخش Rate Limiting Policies کلیک کنید و روی Add Policy کلیک کنید.
  3. API Context را انتخاب کنید و Context of PhoneVerification API را با نسخه به عنوان Value (مقدار) ارائه دهید.

 

Web services access management in WSO2 API Manager

 

  1. روی Deny کلیک کنید.
  1. اکنون با استفاده از URL https://localhost:9443/devportal به پورتال توسعه‌دهنده API وارد شوید و API را فراخوانی کنید. پاسخ زیر را خواهید دید.

                 Web services access management in WSO2 API Manager

این مطلب چقدر مفید بود ؟

روی یک ستاره کلیک کنید تا به آن امتیاز دهید

میانگین امتیاز / 5. نتایج آرا:

تاکنون رأی ندارید! اولین نفری باشید که به این پست امتیاز می دهد.

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *