سوالات متداول Edge Microgateway

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

شروع به کار

چگونه Edge Microgateway را نصب کنم؟
به نصب Edge Microgateway مراجعه کنید.
چگونه Edge Microgateway را اجرا کنم؟
به راه‌اندازی و پیکربندی Edge Microgateway مراجعه کنید.
آیا برای اجرای Microgateway به پایگاه داده نیاز دارم؟
رابط‌های برنامه‌نویسی کاربردی (API) که از طریق Edge Microgateway پروکسی می‌شوند، ممکن است با پایگاه داده‌ای که به عنوان بخشی از یک سرویس هدف در حال اجرا است، تعامل داشته باشند. با این حال، Edge Microgateway مستقل از هرگونه پایگاه داده یا مخزن داده backend عمل می‌کند.

عملیات

چه تغییراتی در Edge نیاز به راه‌اندازی مجدد Edge Microgateway دارد؟
Edge Microgateway به طور خودکار تغییرات ایجاد شده در Apigee Edge، مانند تغییرات در پروکسی‌های microgateway-aware، محصولات یا برنامه‌های توسعه‌دهنده را بررسی می‌کند. فاصله زمانی پیش‌فرض بررسی ۶۰۰ ثانیه است؛ با این حال، می‌توانید فاصله زمانی را با تنظیم پیکربندی config_change_poll_interval تغییر دهید. به ویژگی‌های edgemicro مراجعه کنید.
اگر نمی‌خواهید منتظر فاصله‌ی نظرسنجی بمانید، از دستور edgemicro reload برای دریافت آخرین تغییرات استفاده کنید. به بارگذاری مجدد خوشه‌ی microgateway مراجعه کنید.
چگونه می‌توانم بین یک پروکسی مستقر در Edge و یک پروکسی مستقر در Edge Microgateway تمایز قائل شوم؟
وقتی Edge Microgateway را پیکربندی می‌کنید، فهرستی از پروکسی‌های آگاه از microgateway که در Apigee Edge مستقر شده‌اند، در پیکربندی محلی Edge Microgateway دانلود می‌شوند. پروکسی‌های آگاه از Microgateway آنهایی هستند که با پیشوند edgemicro_ نامگذاری شده‌اند.
گزینه‌های من برای ثبت وقایع با Edge Microgateway چیست؟
Edge Microgateway دارای یک ویژگی ثبت وقایع داخلی است. برای جزئیات بیشتر، به مدیریت فایل‌های گزارش مراجعه کنید.
همچنین می‌توانید یک افزونه سفارشی برای استفاده از یک سرویس ثبت وقایع شخص ثالث با Edge Microgateway بنویسید. به دلیل نحوه عملکرد Edge Microgateway، نمی‌توانید از سیاست ثبت وقایع پیام Apigee Edge برای ثبت وقایع پیام‌ها برای Edge Microgateway استفاده کنید. همچنین به مقاله انجمن افزونه ثبت وقایع برای Microgateway مراجعه کنید.
آیا می‌توانم از ترکیب‌های کلید/رمز بین نمونه‌های Edge Microgateway دوباره استفاده کنم؟
تا زمانی که سازمان و محیط برای نمونه‌های Microgateway یکسان باشند، می‌توانید از جفت کلید/رمز که در طول پیکربندی تولید می‌شوند، دوباره استفاده کنید.
چگونه می‌توانم Edge Microgateway را برای راه‌اندازی در یک محیط عملیاتی پیکربندی کنم؟
شما می‌توانید متغیرهای محیطی را برای پارامترهای دستور راه‌اندازی، مانند EDGEMICRO_KEY ، EDGEMICRO_SECRET ، EDGEMICRO_ORG و EDGEMICRO_ENV تنظیم کنید. با استفاده از این متغیرها (و سایر متغیرها) می‌توانید Edge Microgateway را با دستور edgemicro start راه‌اندازی کنید. همچنین به بخش تنظیم متغیرهای محیطی مراجعه کنید.
آیا می‌توانم از ویژگی‌های سفارشی محصول یا برنامه توسعه‌دهنده با Edge Microgateway استفاده کنم؟
خیر. به طور پیش‌فرض، Edge Microgateway فقط روی ویژگی‌های مربوط به مسیریابی اولیه و امنیت عمل می‌کند. با این حال، به عنوان راه‌حل، گزینه‌های احتمالی زیر را دارید:
  1. ویژگی‌های سفارشی را به پروکسی edgemicro-auth که Edge Microgateway به Apigee Edge مستقر می‌کند، اضافه کنید. این ویژگی‌ها هنگام استفاده از کلید API یا امنیت توکن OAuth در دسترس خواهند بود.
  2. افزونه OAuth را اصلاح کنید تا بر اساس آن ویژگی‌ها عمل کند.
آیا محدودیتی در اندازه هدر درخواست وجود دارد؟
اگر Node.js را به نسخه ۸.۱۴.۰ یا بالاتر ارتقا دهید، توجه داشته باشید که حداکثر اندازه هدر مجاز برای درخواست‌ها از ۸۰ کیلوبایت به ۸ کیلوبایت کاهش یافته است. هدرهایی که از ۸ کیلوبایت تجاوز کنند، منجر به خطای HTTP 431 می‌شوند.
یک گزینه پیکربندی Node.js که در Node.js نسخه ۱۱.۶.۰ اضافه شده است، به شما امکان می‌دهد حداکثر اندازه پیش‌فرض هدر را تغییر دهید. این پارامتر، --max-http-header-size ، به شما امکان می‌دهد حداکثر اندازه هدرهای HTTP را بر حسب بایت مشخص کنید.
برای تغییر پیکربندی پیش‌فرض، مقدار متغیر محیطی NODE_OPTIONS را در خط فرمان به صورت زیر تنظیم کنید:
NODE_OPTIONS=--max-http-header-size=NUM_BYTES

برای مثال:

NODE_OPTIONS=--max-http-header-size=80000

Edge Microgateway از چه APIهای مدیریتی استفاده می‌کند؟

دستورات Edge Microgateway زیر، APIهای مدیریت Apigee Edge را برای انجام کار خود فراخوانی می‌کنند، همانطور که در مرجع CLI برای Edge Microgateway توضیح داده شده است:

  • edgemicro configure
  • edgemicro upgradeauth
  • edgemicro upgradekvm
  • edgemicro rotatekey
  • edgemicro cert check
  • edgemicro cert delete
  • edgemicro cert install

بخش‌های زیر فهرستی از فراخوانی‌های API مدیریتی که هر دستور از آنها استفاده می‌کند را نشان می‌دهد.

دستورات edgemicro configure و upgradeauth edgemicro، APIهای مدیریتی زیر را فراخوانی می‌کنند:

  • (لیست استقرارها) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/deployments
  • (دریافت اطلاعات استقرار) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=java&name=micro-gateway-products-javacallout-2.0.0.jar
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=adjust-quota.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-jwk.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-verify-jwt.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jsrsasign-all-min.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jwt-initialization.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-jwk-response.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-product-list.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-public-key.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-jwt-variables.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-quota-variables.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-response.js
  • (بارگذاری منابع) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=validate-params.js
  • (ایجاد پروکسی API) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis?action=import&validate=false&name=edgemicro-auth
  • (سیاست‌های آپلود) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/policies
  • (آپلود پروکسی‌ها) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/proxies?name=default
  • (استقرار پروکسی) POST: https://api.enterprise.apigee.com/v1/o/[org]/e/[env]/apis/edgemicro-auth/revisions/1/deployments

دستور upgradekvm رابط برنامه‌نویسی کاربردی (API) مدیریتی زیر را فراخوانی می‌کند:

  • PUT: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

دستور rotatekey رابط برنامه‌نویسی کاربردی (API) مدیریتی زیر را فراخوانی می‌کند:

  • GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway/entries/private_key

دستور cert check رابط برنامه‌نویسی کاربردی (API) مدیریتی زیر را فراخوانی می‌کند:

  • GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

دستور cert delete رابط برنامه‌نویسی کاربردی (API) مدیریتی زیر را فراخوانی می‌کند:

  • DELETE: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

دستور cert install رابط برنامه‌نویسی کاربردی (API) مدیریتی زیر را فراخوانی می‌کند:

  • POST: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps

استقرار

آیا می‌توانم Edge Microgateway را روی همان سروری که سرویس هدفم در آن اجرا می‌شود، مستقر کنم؟
بله. Edge Microgateway یک فرآیند سبک است که می‌تواند نزدیک به سرویس هدف شما، از جمله روی همان دستگاه، اجرا شود.
آیا می‌توانم یک بسته پروکسی Edge موجود را به عنوان یک Edge Microgateway مستقر کنم؟
خیر. پروکسی‌های Edge Microgateway-aware الزامات خاصی دارند و از تمام ویژگی‌های پروکسی‌های معمولی Edge پشتیبانی نمی‌کنند. به بخش 2 مراجعه کنید: ایجاد موجودیت در Apigee Edge
آیا می‌توانم failover را بین یک بسته‌ی پراکسی Edge و یک بسته‌ی پراکسی Edge Microgateway برای یک API Proxy یکسان فعال کنم؟
خیر. Edge Microgateway از استقرار پروکسی‌های API غیر از microgateway روی Apigee Edge اطلاعی ندارد.
مدل استقرار با قابلیت دسترسی بالا برای Edge Microgateway چیست؟
برای بحث خوب در مورد نحوه اجرای Edge Microgateway با استفاده از NGINX به عنوان متعادل کننده بار، به مدیریت API ها با Apigee Edge Microgateway و NGINX مراجعه کنید.
از کدام متعادل‌کننده‌های بار می‌توانم با Edge Microgateway استفاده کنم؟
Edge Microgateway می‌تواند با هر متعادل‌کننده بار (load balancer) کار کند.
آیا محدودیتی در تعداد پروکسی‌های Edge Microgateway که می‌توانم مستقر کنم وجود دارد؟
به محدودیت‌های پیکربندی محصول که برای پروکسی‌های معمولی Edge مشخص شده است، مراجعه کنید. تعداد پروکسی‌های آگاه از microgateway که می‌توانید در یک سازمان و محیط Apigee Edge مستقر کنید و از طریق Edge Microgateway تماس بگیرید، باید با همان محدودیت‌ها مطابقت داشته باشد.
آیا می‌توانم پیاده‌سازی Edge Microgateway خود را به یک سازمان و محیط خاص مرتبط کنم؟
وقتی نمونه‌ای از Edge Microgateway را پیکربندی می‌کنید، باید آن را با یک سازمان و محیط Edge خاص مرتبط کنید.
آیا می‌توانم استقرار Edge Microgateway خود را به یک منطقه خاص (اگر مشتری چند منطقه‌ای هستم) مرتبط کنم؟
Edge Microgateway به طور خودکار بهترین منطقه را برای تعامل خود با Apigee Edge انتخاب می‌کند. شما می‌توانید نمونه‌های Edge Microgateway را در هر منطقه‌ای که می‌خواهید به آن سرویس دهید، مستقر کنید.

اداره

آیا برای پیکربندی و استقرار Edge Microgateway باید مدیر سازمانی باشم؟
بله. برای پیکربندی و استقرار Edge Microgateway باید اعتبارنامه‌های ادمین org را داشته باشید.
آیا برای اجرای Edge Microgateway باید مدیر سازمانی باشم؟
خیر. Edge Microgateway یک برنامه Node.js است و می‌تواند توسط هر کسی که مجوز اجرای چنین برنامه‌هایی را روی یک دستگاه مشخص دارد، اجرا شود.
آیا هیچ یک از کاربران سازمان من می‌توانند از Edge Microgateway استفاده کنند؟
برای برقراری تماس‌های API از طریق Edge Microgateway نیازی نیست که کاربر سازمانی Apigee Edge باشید. با این حال، برای ایجاد یا تغییر پروکسی‌های Edge Microgateway که روی Edge مستقر هستند، باید مجوزهای سطح سازمانی داشته باشید.

عملکرد

ملاحظات عملکردی برای استفاده از Edge Microgateway چیست؟
اگر Edge Microgateway در کنار برنامه هدف اجرا می‌شود، مطمئن شوید که سرور ظرفیت کافی دارد.
بهترین شیوه‌ها برای اجرای Edge Microgateway در مقیاس بزرگ چیست؟
شرکت Apigee توصیه می‌کند چندین نمونه از Edge Microgateway را روی سرورهای مختلف که توسط متعادل‌کننده‌های بار مانند NGINX پشتیبانی می‌شوند، اجرا کنید. همچنین به بخش مدیریت APIها با Apigee Edge Microgateway و NGINX و مقیاس‌بندی افقی عمودی در انجمن Apigee مراجعه کنید.
TPSهای Edge Microgateway به طور پیش‌فرض چیستند و الزامات سخت‌افزاری مورد نیاز برای یک نمونه Microgateway چیست؟
سنجش نیازمندی‌های سخت‌افزاری و اندازه‌گیری TPS با Edge Microgateway دشوار است. این بستگی به تنظیمات شما دارد که ترکیبی از تنظیم Edge Microgateway، استفاده از افزونه، افزونه‌های سفارشی و پیکربندی موارد دیگر مانند TLS است. Apigee معمولاً توصیه می‌کند که از ترکیب این موارد ایده بگیرید و آزمایش عملکرد را با تنظیمات خاص خود انجام دهید.

استقرار ابر خصوصی

آیا Edge Microgateway با Edge برای ابر خصوصی کار می‌کند؟
بله. برای جزئیات بیشتر، به مراحل پیکربندی Apigee Private Cloud مراجعه کنید.

افزونه‌ها

سهمیه‌بندی چگونه با Edge Microgateway اعمال می‌شود؟
شما می‌توانید به صورت اختیاری یک افزونه سهمیه‌بندی به نمونه Edge Microgateway خود اضافه کنید. برای جزئیات بیشتر به بخش «استفاده از افزونه سهمیه‌بندی» مراجعه کنید.
چگونه Spike Arrest با Edge Microgateway اعمال می‌شود؟
شما می‌توانید به صورت اختیاری یک افزونه‌ی Spike arrest به نمونه‌ی Edge Microgateway خود اضافه کنید. برای جزئیات بیشتر به بخش «استفاده از افزونه‌ی Spike arrest» مراجعه کنید.
آیا راه‌های دیگری برای نوشتن افزونه‌هایی غیر از Node.js برای Edge Microgateway وجود دارد؟
خیر. افزونه‌ها باید با Node.js نوشته شوند.
چه اتفاقی می‌افتد وقتی Edge Microgateway قادر به آپلود داده‌های Analytics به Edge نباشد؟
Edge Microgateway یک بافر درون حافظه‌ای دارد. اگر بافر پر شود، بارهای داده قدیمی‌تر حذف می‌شوند تا ترافیک API به راحتی جریان یابد.
آیا می‌توانم به Edge Microgateway سیاست اضافه کنم؟
اگر سیاست‌های معمول Apigee Edge را به پروکسی‌های microgateway-aware در Apigee Edge متصل کنید، نادیده گرفته می‌شوند. در عوض، Edge Microgateway از افزونه‌هایی برای ارائه قابلیت‌هایی مشابه سیاست‌های Edge، مانند سهمیه‌بندی، جلوگیری از افزایش ناگهانی سرعت، امنیت کلید API و امنیت OAuth2، استفاده می‌کند. همچنین می‌توانید افزونه‌های سفارشی بنویسید. به بخش «استفاده از افزونه‌ها» و «توسعه افزونه‌های سفارشی» مراجعه کنید.

پست‌ها و وبلاگ‌های انجمن Apigee که در ادامه آمده‌اند، موارد استفاده‌ی افزونه‌های دیگر را مورد بحث قرار می‌دهند:

امنیت

چگونه می‌توانم از منبع /products محافظت کنم؟
نمای کلی
وقتی Edge Microgateway را پیکربندی می‌کنید ، یک پروکسی API به نام edgemicro-auth به organization:environment شما در Apigee Edge مستقر می‌شود. این پروکسی یک نقطه پایانی /products را در معرض نمایش قرار می‌دهد که لیستی از محصولات API را برمی‌گرداند. اگر Edge Microgateway را در تاریخ 5 اکتبر 2018 یا قبل از آن نصب کرده‌اید، Apigee توصیه می‌کند که برای محافظت از این نقطه پایانی اقداماتی انجام دهید، زیرا پاسخ حاوی آدرس ایمیل توسعه‌دهنده‌ای است که محصولات API را در سازمان Apigee شما ایجاد و اصلاح کرده است.
شما می‌توانید با ارتقاء Edge Microgateway یا با پیکربندی Mutual TLS از نقطه پایانی محافظت کنید. هر دوی این گزینه‌ها در زیر شرح داده شده‌اند.
بررسی کنید که آیا نقطه پایانی /products محافظت شده است یا خیر

اگر مطمئن نیستید که آیا نقطه پایانی /products محافظت شده است یا خیر، به بخش «تأیید کنید که منبع /products محافظت شده است» بروید و قبل از ادامه مراحل را در آنجا انجام دهید.

گزینه ۱: ارتقاء Edge Microgateway

اگر Edge Microgateway را در تاریخ ۵ اکتبر ۲۰۱۸ یا قبل از آن نصب کرده‌اید، Apigee توصیه می‌کند که آن را به آخرین نسخه Edge Microgateway ارتقا دهید. در صورت اتصال به اینترنت، مراحل موجود در بخش «ارتقاء Edge Microgateway» را دنبال کنید.

اگر در حال حاضر قادر به ارتقا نیستید، به گزینه ۲ بروید.

گزینه ۲: پیکربندی TLS متقابل

اگر در حال حاضر قادر به ارتقاء Edge Microgateway نیستید، Apigee توصیه می‌کند که ارتباط بین Edge Microgateway و edgemicro-auth proxy را با TLS متقابل (که به عنوان TLS دو طرفه نیز شناخته می‌شود) محافظت کنید.

  1. فایل $HOME/.edgemicro/ org - env -config.yaml را باز کنید. اگر نمی‌توانید این فایل را پیدا کنید، به بخش «محل نصب Edge Microgateway» مراجعه کنید.
  2. بلوک tlsOptions زیر را به فایل org - env -config.yaml اضافه کنید تا TLS متقابل بین Edge Microgateway و Apigee Edge فعال شود:
    edge_config:
      bootstrap: >-
        https://domain/edgemicro/bootstrap/organization/org/environment/env
      jwt_public_key: 'https://domain/edgemicro-auth/publicKey'
      managementUri: 'https://api.enterprise.apigee.com'
      tlsOptions:
        agentOptions:
          requestCert: true
          cert: 'path/to/cert'
          key: 'path/to/key'

    برای مثال:

    tlsOptions:
      agentOptions:
        requestCert: true
        cert: '/Users/jdoe/twowayssl/ssl/client.key'
        key: '/Users/jdoe/twowayssl/ssl/ca.crt'

    همچنین می‌توانید پارامترهای اختیاری agentOptions زیر را نیز وارد کنید:

    • ca : مسیر مرجع صدور گواهی را مشخص می‌کند.
    • pfx : اگر می‌خواهید به جای cert و key از فایل p12/pfx استفاده کنید، آن را وارد کنید.
    • passphrase : عبارت عبور برای یک فایل pfx.
    • ciphers : رمزهای TLS را مشخص می‌کند.
  3. مطمئن شوید که میزبان مجازی که پروکسی edgemicro-auth روی آن مستقر شده است، TLS متقابل را فعال کرده باشد. برای جزئیات بیشتر، به تعریف میزبان مجازی برای TLS دو طرفه در مستندات Apigee Edge مراجعه کنید.

    تصویر زیر نحوه فعال کردن TLS متقابل روی یک میزبان مجازی در رابط کاربری Apigee Edge را نشان می‌دهد:

  4. به پروکسی edgemicro-auth API در رابط کاربری Edge نگاه کنید و مطمئن شوید که میزبان مجازی صحیح در پیکربندی پروکسی مشخص شده است. برای مثال، اگر یک میزبان مجازی با قابلیت TLS به نام mutualtls ایجاد کرده‌اید، عبارت HTTPProxyConnection پروکسی باید به این شکل باشد:
    <HTTPProxyConnection>
        <BasePath>/edgemicro-auth</BasePath>
        <Properties/>
        <VirtualHost>mutualtls</VirtualHost>
    </HTTPProxyConnection>
تأیید کنید که منبع /products محافظت شده است
این بخش نحوه‌ی آزمایش محافظت از منبع /products را توضیح می‌دهد. انجام این آزمایش پس از تکمیل مراحل (گزینه ۱ یا گزینه ۲) برای محافظت از منبع، بسیار مهم است. برای مثال، می‌توانید این کار را با cURL انجام دهید:
curl -v https://your_domain/edgemicro-auth/products
اگر پاسخی مانند یکی از موارد زیر مشاهده کردید، نقطه پایانی /products محافظت شده است:
{
  "error":"unauthorized",
  "error_description": "authentication failed"
}

یا

curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

اگر پاسخی شبیه به این می‌بینید، پس منبع /products محافظت نشده است و ایمیل‌های توسعه‌دهندگان می‌تواند در معرض خطر قرار گیرد:

{
   "apiProduct":[
      {
         "apiResources":[
            "/",
            "/**"
         ],
         "approvalType":"auto",
         "attributes":[

         ],
         "createdAt":1537374680948,
         "createdBy":"jdoe@foo.com",
         "description":"",
         "displayName":"mock",
         "environments":[
            "test"
         ],
         "lastModifiedAt":1537374680948,
         "lastModifiedBy":"test@test.com",
         "name":"mock",
         "proxies":[
            "edgemicro-auth",
            "edgemicro_mock"
         ],
         "quota":"null",
         "quotaInterval":"null",
         "quotaTimeUnit":"null",
         "scopes":[
            ""
         ]
      }
   ]
}

Apigee همچنین توصیه کرد که میزبان مجازی HTTP را آزمایش کنید:

برای مثال:

curl -v http://your_domain/edgemicro-auth/products

اگر فراخوانی cURL فهرستی از محصولات API را برمی‌گرداند، ممکن است ایمیل‌های توسعه‌دهندگان در معرض خطر قرار گرفته باشند. اگر نمی‌خواهید نقطه پایانی با این میزبان مجازی غیر TLS در معرض خطر قرار گیرد، حتماً آن را از پیکربندی edgemicro-auth HTTPProxyConnection حذف کنید.

برای محافظت از منبع، یکی از گزینه‌های زیر را انجام دهید:

چگونه می‌توانم یک توکن دسترسی منقضی شده را تمدید کنم؟

در حال حاضر، شما نمی‌توانید توکن JWT را برای یک نمونه‌ی مشخص از Edge Microgateway تمدید کنید.

راه حل:

هر توکن JWT یک ویژگی exp دارد که تاریخ انقضای توکن را مشخص می‌کند. یک برنامه می‌تواند با برقراری یک فراخوانی API مستقیماً به نقطه پایانی توکن edgemicro-auth زمان انقضا را محاسبه کرده و یک توکن جدید درخواست کند. برای مثال، می‌توانید یک فراخوانی API را به این صورت انجام دهید:

POST https: //{your_org}-{your_env}.apigee.net/edgemicro-auth/token

... با یک بدنه JSON مانند این:

{ "client_id": {your_id}, "client_secret": {your_secret}, "grant_type": "client_credentials" }

همچنین ببینید:

پیکربندی SSL در ویندوز
اگر Edge Microgateway را روی ویندوز اجرا می‌کنید، OpenSSL باید روی دستگاه نصب شده و به PATH اضافه شود. همه دستگاه‌های ویندوز با OpenSSL عرضه نمی‌شوند. برای اطلاعات بیشتر در مورد دانلود و نصب OpenSSL به مستندات OpenSSL مراجعه کنید.
آیا می‌توانم با استفاده از محصول API مرتبط با یک پروکسی Edge Micro-aware، دسترسی به منابع API را مجاز کنم؟

در حال حاضر، فقط مسیر پایه بررسی می‌شود تا مشخص شود که آیا یک API برای محصولات API مرتبط با یک توکن OAuth خاص تأیید شده است یا خیر.

برای مثال:

  1. شما یک پروکسی با پیشوند edgemicro_ به همراه مسیر پایه و هدف ایجاد می‌کنید.
  2. شما این پروکسی را به یک محصول اضافه می‌کنید. بیایید آن را edgemicro-prod1 بنامیم.
  3. وقتی یک فراخوانی API از طریق Edge Microgateway با استفاده از کلید API یا توکن OAuth انجام می‌شود، Edge Microgateway بررسی می‌کند که آیا مسیر پایه API با مسیر پایه پروکسی edgemicro_* که برای لیست محصولات تأیید شده برای آن کلید یا توکن تأیید شده است، مطابقت دارد یا خیر.

همچنین به بخش «هنگام استفاده از دروازه edgemicro در محصولاتی که در بخش منابع استفاده می‌شوند، کدام آدرس اینترنتی (URL) نیاز به قرار گرفتن در لیست سفید دارد؟» در انجمن Apigee مراجعه کنید.

آیا می‌توانم از گواهینامه‌های SSL سفارشی با Edge Microgateway استفاده کنم؟

در حال حاضر فقط گواهی SSL پیش‌فرض Apigee پشتیبانی می‌شود. در حال حاضر گواهی‌های SSL سفارشی پشتیبانی نمی‌شوند.

راه حل ها:

اگر مایل به استفاده از گواهی SSL سفارشی (غیر پیش‌فرض Apigee) هستید، این گزینه‌ها را دارید:

  • از یک نقطه پایانی jwt_public_key غیر SSL استفاده کنید. فایل پیکربندی Edge Microgateway را برای استفاده از http://{org}-{env}.apigee.net/edgemicro-auth/publicKey -or- تغییر دهید.
  • قبل از شروع Edge Microgateway، این متغیر محیطی را تنظیم کنید: export NODE_TLS_REJECT_UNAUTHORIZED ="0"

همچنین به بخش «بررسی خطاهای نصب Edge Micro در گواهی SSL» در انجمن Apigee مراجعه کنید.

آیا می‌توانم از استفاده از حساب‌های کاربری Org Admin با Edge Microgateway اجتناب کنم؟
اسکریپت پیکربندی Edge Microgateway یک پروکسی edgemicro-auth را در Edge مستقر می‌کند و این استقرار نیاز به اعتبارنامه‌های Org Admin دارد.
با این حال، پس از این استقرار اولیه، باید بتوانید تنظیمات و پیکربندی باقی‌مانده را بدون نیاز به اعتبارنامه‌های ادمین سازمان انجام دهید. همچنین به این پست انجمن در مورد اعتبارنامه‌های ادمین سازمان مراجعه کنید.
آیا می‌توانم از توکن OAuth خودم با Edge Microgateway استفاده کنم؟

شما می‌توانید از توکن خودتان استفاده کنید، اما ابتدا باید مجوز داخلی Edge Microgateway را غیرفعال کنید. برای انجام این کار:

  1. فایل پیکربندی Edge Microgateway را باز کنید.
  2. دو تنظیم oauth را به صورت زیر به true تغییر دهید:

    oauth:
        allowNoAuthorization: true
        allowInvalidAuthorization: true
هنگام شروع Edge Microgateway با خطای عدم دسترسی مواجه می‌شوم.
اگر هنگام اجرای Edge Microgateway با این دستور، خطای عدم دسترسی دریافت کردید:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
ممکن است کلید و رمز به دلایلی معتبر نباشند. بهترین کار این است که کلید و رمز را با دستور edgemicro genkeys دوباره تولید کنید.

تست و اشکال‌زدایی

چگونه می‌توانم از خطاهای "فایل‌های باز زیادی" در طول تست بارگذاری جلوگیری کنم؟

در برخی موارد، سیستم شما ممکن است در شرایطی قرار گیرد که تعداد زیادی اتصال فایل باز وجود داشته باشد و این می‌تواند باعث از کار افتادن Edge Micro شود. ثبت وقایع پیش‌فرض برای تراکنش‌های ورودی و خروجی از طریق Microgateway به دو اتصال HTTP نیاز دارد.

برای آزمایش و سنجش، Apigee توصیه می‌کند دستور ulimit سیستم خود را روی unlimited تنظیم کنید: ulimit -n unlimited . همچنین به خطای Edge Microgateway هنگام آزمایش بار در انجمن Apigee مراجعه کنید.

نکاتی برای توسعه سریع و اشکال‌زدایی

اگر در حال توسعه افزونه‌هایی برای Edge Microgateway هستید، ممکن است متوجه شوید که پشتیبانی از توسعه سریع محدود است.

فعلاً، چند نکته را در اینجا مطرح می‌کنیم:

  • برای شروع Edge Microgateway، می‌توانید متغیرهای محیطی EDGEMICRO_KEY و EDGEMICRO_SECRET را روی جفت کلید/رمز مورد نیاز دستور راه‌اندازی Microgateway تنظیم کنید. این به شما امکان می‌دهد Edge Microgateway را بدون وارد کردن کلید/رمز در خط فرمان شروع کنید. همچنین به بخش تنظیم متغیرهای محیطی در مستندات Edge Microgateway مراجعه کنید.
  • برای مشاهده خروجی‌های بیشتر در ترمینال فرمان، Edge Microgateway را در حالت DEBUG اجرا کنید: DEBUG=* edgemicro start -o [org] -e [env] -k [key] -s [secret]

کسب و کار و اخذ مجوز

چه رابطه‌ای بین مدل‌های پشتیبانی Apigee-127 و Edge Microgateway وجود دارد؟

Apigee-127 یک پروژه نرم‌افزاری متن‌باز است که در مدل متن‌باز پشتیبانی می‌شود. یعنی می‌توانید مشکلات را در پروژه GitHub مطرح کنید و در صورت تلاش برای رفع مشکل، درخواست pull ارسال کنید. Apigee-127 هیچ گونه توافق‌نامه مجوز نرم‌افزاری با Apigee ندارد و شامل آن نمی‌شود.

از سوی دیگر، Edge Microgateway یک محصول سازمانی است که توسط Apigee برای مشتریان Apigee پشتیبانی می‌شود. به این معنی که مشتریان Apigee می‌توانند با استفاده از Google Cloud Apigee Edge Support تیکت‌های پشتیبانی، درخواست‌های ویژگی و گزارش‌های اشکال ایجاد کنند.