شما در حال مشاهده مستندات 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 فقط روی ویژگیهای مربوط به مسیریابی اولیه و امنیت عمل میکند. با این حال، به عنوان راهحل، گزینههای احتمالی زیر را دارید:
- ویژگیهای سفارشی را به پروکسی
edgemicro-authکه Edge Microgateway به Apigee Edge مستقر میکند، اضافه کنید. این ویژگیها هنگام استفاده از کلید API یا امنیت توکن OAuth در دسترس خواهند بود. - افزونه 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-authproxy را با TLS متقابل (که به عنوان TLS دو طرفه نیز شناخته میشود) محافظت کنید.- فایل
$HOME/.edgemicro/ org - env -config.yamlرا باز کنید. اگر نمیتوانید این فایل را پیدا کنید، به بخش «محل نصب Edge Microgateway» مراجعه کنید. - بلوک
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 را مشخص میکند.
-
- مطمئن شوید که میزبان مجازی که پروکسی
edgemicro-authروی آن مستقر شده است، TLS متقابل را فعال کرده باشد. برای جزئیات بیشتر، به تعریف میزبان مجازی برای TLS دو طرفه در مستندات Apigee Edge مراجعه کنید.تصویر زیر نحوه فعال کردن TLS متقابل روی یک میزبان مجازی در رابط کاربری Apigee Edge را نشان میدهد:

- به پروکسی
edgemicro-authAPI در رابط کاربری 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" }
همچنین ببینید:
در حال حاضر، فقط مسیر پایه بررسی میشود تا مشخص شود که آیا یک API برای محصولات API مرتبط با یک توکن OAuth خاص تأیید شده است یا خیر.
برای مثال:
- شما یک پروکسی با پیشوند
edgemicro_به همراه مسیر پایه و هدف ایجاد میکنید. - شما این پروکسی را به یک محصول اضافه میکنید. بیایید آن را
edgemicro-prod1بنامیم. - وقتی یک فراخوانی API از طریق Edge Microgateway با استفاده از کلید API یا توکن OAuth انجام میشود، Edge Microgateway بررسی میکند که آیا مسیر پایه API با مسیر پایه پروکسی
edgemicro_*که برای لیست محصولات تأیید شده برای آن کلید یا توکن تأیید شده است، مطابقت دارد یا خیر.
همچنین به بخش «هنگام استفاده از دروازه edgemicro در محصولاتی که در بخش منابع استفاده میشوند، کدام آدرس اینترنتی (URL) نیاز به قرار گرفتن در لیست سفید دارد؟» در انجمن Apigee مراجعه کنید.
در حال حاضر فقط گواهی 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 مراجعه کنید.
edgemicro-auth را در Edge مستقر میکند و این استقرار نیاز به اعتبارنامههای Org Admin دارد.شما میتوانید از توکن خودتان استفاده کنید، اما ابتدا باید مجوز داخلی Edge Microgateway را غیرفعال کنید. برای انجام این کار:
- فایل پیکربندی Edge Microgateway را باز کنید.
دو تنظیم oauth را به صورت زیر به true تغییر دهید:
oauth: allowNoAuthorization: true allowInvalidAuthorization: true
edgemicro start -o [org] -e [env] -k [key] -s [secret]تست و اشکالزدایی
- چگونه میتوانم از خطاهای "فایلهای باز زیادی" در طول تست بارگذاری جلوگیری کنم؟
در برخی موارد، سیستم شما ممکن است در شرایطی قرار گیرد که تعداد زیادی اتصال فایل باز وجود داشته باشد و این میتواند باعث از کار افتادن 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 تیکتهای پشتیبانی، درخواستهای ویژگی و گزارشهای اشکال ایجاد کنند.