הגדרה והגדרה של Edge Microgateway

מוצג המסמך של Apigee Edge.
עוברים אל מסמכי תיעוד של Apigee X.
מידע

Edge Microgateway v. 2.4.x

סקירה כללית

במדריך הזה נפרט את השלבים הדרושים כדי להעלות מכונה של Edge Microgateway ופועלים.

אחרי שתשלימו את השלבים שמתוארים כאן, תהיה לכם גישה ל-Edge Microgateway תקין ומוגדרת באופן מלא המסוגלת לעבד בקשות API. כדי לבדוק את ההגדרה צריך לבצע קריאות מאובטחות ל-API דרך Edge Microgateway ליעד עורפי. נסביר גם איך להוסיף עצירת ביניים ל-Microgateway.

המדריך הזה מחולק לחלקים הבאים:

דרישות מוקדמות: התקנת Edge Microgateway

פועלים לפי ההוראות בקטע התקנת Edge Microgateway בסיום ההתקנה, תוכלו לפעול לפי השלבים המפורטים של המדריך.

בסיום ההתקנה, ממשיכים לקטע הבא: Part 1: Configure Edge Microgateway".

חלק 1: הגדרת Edge מיקרוגייט

בחלק הזה תשתמשו בפקודת ממשק שורת פקודה (CLI) כדי להגדיר את Edge Microgateway לתקשר עם Apigee Edge. אם משתמשים ב-Apigee Edge Cloud, צריך לפעול לפי שלבי ההגדרה של Apigee Edge Cloud. אם אתם משתמשים בענן הפרטי של Apigee, פועלים לפי השלבים של Apigee Edge Private ענן.

שלבי ההגדרה של Cloud ב-Apigee Edge

כדי להשתמש ב-Edge Microgateway עם Apigee Edge Cloud:

  1. אם עדיין לא עשיתם זאת, עליכם לאתחל את Edge Microgateway (צריך לעשות זאת רק שלב אחד):
    edgemicro init
  2. (אופציונלי) עזרה בהדפסה עבור הפקודה dgemicro configuration:
    edgemicro configure -h
  3. מריצים את הפקודה הבאה כדי להגדיר את Edge Microgateway:
    edgemicro configure -o [org] -e [env] -u [username] 

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך מנהל החשבון הארגוני).
    • env הוא סביבה בארגון (כמו בדיקה או מוצר).
    • username היא כתובת האימייל שמשויכת אל חשבון Apigee.

דוגמה

edgemicro configure -o docs -e test -u jdoe@example.com

פלט

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v6.1.0
current edgemicro version is 2.2.3-beta
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
creating vault
adding private_key
adding public_key
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1

saving configuration information to: /Home/.edgemicro/wwitman-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCaDpaTttaDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTYxAxMjA0NzIyWhcNMTYxMTAyMjA0NzIyWjAUMRIwEAYD
VQQDEwlsb2NhbGhvcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDA
YbtbsFe50GgBrI8QTih5yzxxxvCfdubGrLWmovwwCCFthno3u8lS54ekOL9jQu
JTJsocJfNhZxvnXifDsCk5Muwx87Z/D0BYLw9ZhM8TMyA2MCkXgC6RfKT69IdJ
jT3X+3D0s+apr3lACsDhgOfaeQfeHAm1SSwH/VemaJqdImGkQMtM8uscMDwG6k
vBbCSNS+hh6ZH1m3tAkcKXqvj/E1hbrHNTWr+uiYFRByUzeo1I607daQD4Lxid
il4Ng3hr3LC1gEzvobWgVyhQ2ovYB57T886H7dGghTnOUxLm2y/TwmQya+44SL
JSsDwauArMF38cRKZZ7VAgMBAAEwDQYJKoZIhvcNAQELBQADEBAHwwu+gOn8Tq
jKOYBTXtOX11HPMTxmyvZ/I57R4roE7Z/lXg/DXwbiFpFG2uamXNKq7yTDJH2i
iiqdERZOGfv7TJMjRlxEnfVHoCV7UKguKq4zeeAEU2x55yFwpWNrarx0kMXRwI
v3WgGfo2bimFQrCjDCNIkDKmYYt4SXIF5zUJmBWPCaK9aJoQb7ARXQO9s2zoOI
XZ5bCUDbehQZ+6LyqC0hgDXiIZYy7R0j93yCbQgoHaHUMEprJEEjE24SHdsWBO
nxGZxB20JLq5AHTm8lbZp7XtvbU0jVpxyrBo2/olFnmpvBVOq9eIp042IVD7nT
J4rPejdK6C4=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: e88ec9d5da17cd88ca338d532b7c7a8c4f43ddd3da139d95955ab345af30352d
  secret: d7f64854eb6889d06b809dd7c161dba5eeba4a2657277fd819921bf992221a8f

edgemicro configuration complete!
    

שלבי ההגדרה של הענן הפרטי ב-Apigee

כדי להשתמש ב-Edge Microgateway עם ענן פרטי של Apigee:

  1. מידע עזרה להדפסה עבור dgemicro private הגדרה. אפשר להדפיס את העזרה הזו בכל סוג של CLI של Edge Microgateway פקודה או פקודה.
    edgemicro private configure -h
  2. מריצים את הפקודה הבאה. נדרש מידע סטנדרטי לגבי ה-Apigee Edge שלך חשבון בענן פרטי: שם הארגון, שם הסביבה, שם משתמש (כתובת אימייל), סיסמה, כתובת ה-IP של שרת הניהול וה-IP של הנתב. צריך להיות אדמין ארגוני ב-Edge כדי להשתמש באפשרות הזו הפקודה:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך שם מנהל החשבון הארגוני).
    • env הוא סביבה בארגון שלך (כמו בדיקה או מוצר).
    • runtime_url היא כתובת ה-URL של סביבת זמן הריצה של הסרטון הפרטי במכונה בענן.
    • mgmt_url היא כתובת ה-URL של שרת הניהול עבור במכונה הפרטית.
    • username היא כתובת האימייל שמשויכת אל חשבון Apigee.
    • virtual_host היא רשימה של מארח וירטואלי שמופרד בפסיקים שמות. ערכי ברירת המחדל הם default,secure

דוגמה

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default

לחלופין, אם יש לך כינוי של מארח וירטואלי של myorg-test.mycompany.com, משתמשים בפקודה כמו:

edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default

פלט

delete cache config
checking for previously deployed proxies
configuring edgemicro internal proxy
deploying edgemicro internal proxy
deploying  edgemicro-auth  app
copy auth app into tmp dir
copy config into tmp deer
Give me a minute or two... this can take a while...
App edgemicro-auth added to your org. Now adding resources.

checking org for existing vault creating vault adding private_key adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: /Users/ApigeeCorporation/.edgemicro/jdoe-test-config.yaml 
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0= 
-----END CERTIFICATE----- 

The following credentials are required to start edge micro 
   key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4dd09389b645147151ba3 
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac30ace944c097a726a1263

edgemicro configuration complete!
    

אימות ההתקנה

מריצים את הפקודה הזו כדי לבדוק את ההתקנה. אם לא דווחו שגיאות, הכול מוכן בצורה נכונה, ותוכלו להפעיל את Edge Microgateway בהצלחה.

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

כאשר:

  • org הוא שם הארגון ב-Edge (שם הארגון שלך צריך להיות ארגון) ).
  • env הוא סביבה בארגון (כמו בדיקה או מוצר).
  • key הוא המפתח שהוחזר בעבר על ידי ההגדרה הפקודה.
  • secret הוא המפתח שהוחזר בעבר על ידי ההגדרה הפקודה.

דוגמה

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

מידע על ההגדרה

כל ההגדרות שבוצעו עד עכשיו מאפשרות ל-Edge Microgateway לאתחל את עצמו ב-Apigee קצה. אחרי שהאתחול יצליח, Edge Microgateway מאחזר מטען ייעודי (payload) של את פרטי התצורה מ-Apigee Edge.

למה משמשים פרטי ההגדרות האישיות? כפי שנגלה בחלק הבא של התהליך כש-Edge Microgateway מתחיל לפעול, הוא צריך לקבל רשימה של מכשירים מיוחדים של Edge. שרתי proxy של Microgateway-API מ-Apigee Edge. בחלק הבא של המדריך הזה ליצור שרת proxy מבוסס-Microgateway. חברת Edge Microgateway מגבילה לקוחות לקרוא רק לממשקי ה-API מול שרתי ה-proxy האלה של Microgateway-API, והלקוחות יידרשו (כברירת מחדל) להציג אסימון אבטחה תקף לכל קריאה. כדי לקרוא מידע נוסף על שרתי ה-proxy האלה, אפשר לעיין ב"מה את מה אתם צריכים לדעת על שרתי proxy של Edge עם בקרת גישה ל-Edge Microgateway".

כמנהלי חשבון ארגוני של Edge, תרצו לדעת ששרתי proxy שתומכים ב-Edge Microgateway יכולים נוסף למוצרי Edge, בדיוק כמו לכל שרת proxy אחר. באמצעות שימוש במוצרים ובמפתחים תוכלו ליצור אסימוני אבטחה ספציפיים ללקוח כדי לשלוט בגישה לממשקי API שנקראים דרך Microsoft Edge Microgateway. שוב, הדפוסים הנדרשים זהים לעבודה עם שרתי proxy ל-API, מוצרים ואפליקציות למפתחים ב-Apigee Edge. אם אתם רוצים לקבל מידע על מוצרים, כדאי להתחיל עם מהו מוצר API? ב-Edge התיעוד.

בשלב הבא נסביר איך ליצור שרתי proxy שתומכים ב-Edge Microgateway, ולאחר מכן מפעילים את Edge Microgateway ובודקים את ההגדרה.

חלק 2: יצירת ישויות ב-Apigee Edge

בחלק הזה יוצרים את הישויות הבאות ב-Edge:

  • א שרת proxy שתומך ב-microgateway – זהו שירות מיוחד שרת proxy ש-Edge Microgateway יכול לגלות במהלך ההפעלה. לשרתי proxy שתומכים ב-Microgateway יש מוסכמה למתן שמות שלפיה עליך לפעול: השם חייב להיות עם edgemicro_. עבור לדוגמה edgemicro_hello או edgemicro_userinfo. כשמפעילים את Edge Microgateway, היא מאחזרת מ-Edge רשימה של שרתי proxy שתומכים ב-microgateway מ- אותו הארגון והסביבה של Edge שציינתם כשהפעלתם את Edge מיקרו-שער.

    לכל שרת proxy שתומך ב-microgateway, Edge Microgatway מאחזר את כתובת היעד של שרת ה-proxy, הנתיב הבסיסי שלו. שרתי proxy שתומכים ב-Microgateway גם מספקים דרך נוחה לשייך ניתוח נתונים. שנוצרו על ידי Edge Microgateway באמצעות שרת proxy בפלטפורמת Edge. כ-Microgateway מטפל בקריאות API, והוא דוחף באופן אסינכרוני נתוני ניתוח ל-Edge. נתוני Analytics יופיעו בממשק המשתמש של Edge Analytics תחת השמות של שרת ה-proxy שמודע למיקרו-שער, כמו בכל הגדרה אחרת של שרת proxy.
  • מוצר, אפליקציה למפתחים ואפליקציה למפתחים – ב-Edge Microgateway משתמש מוצרים, מפתחים ואפליקציות למפתחים כדי להפעיל אסימון גישה מסוג OAuth2 או אבטחה של מפתח API. כשאפליקציית Edge Microgateway מופעלת, היא מורידה את כל הגדרות המוצר מ-Apigee ארגון קצה. היא משתמשת במידע הזה כדי לאמת קריאות ל-API שבוצעו דרך Edge Microgateway באמצעות מפתחות API או אסימוני גישה מסוג OAuth2.

מידע נוסף: אפשר לעיין גם במאמר מה אתם צריכים לדעת על שרתי proxy שתומכים ב-Edge Microgateway".

1. הוספת פרטי חיוב שרת proxy של Edge Microgateway API ב-Edge

  1. מתחברים לארגון שלכם ב-Apigee Edge.
  2. לוחצים על מעבר לגרסה הקלאסית כדי לעבור לממשק המשתמש הקלאסי של Edge.
  3. בוחרים באפשרות APIs > ממשקי API ל-API מתוך התפריט העליון.
  4. בדף proxy ל-API, לוחצים על + API Proxy.
  5. באשף Build a Proxy, בוחרים באפשרות הפוך שרת Proxy (הנפוץ ביותר).
  6. לוחצים על הבא.
  7. בדף Details של האשף, קובעים את ההגדרות הבאות. חשוב למלא את האשף בדיוק כפי שמוצג:
    • שם שרת ה-proxy: edgemicro_hello
    • נתיב הבסיס של שרת ה-proxy: /hello
    • ממשק API קיים: http://mocktarget.apigee.net/
  8. לוחצים על הבא.
  9. בדף 'אבטחה' באשף, בוחרים באפשרות מעבר (ללא).
  10. לוחצים על הבא.
  11. בדף 'מארחים וירטואליים' של האשף, מאשרים את ברירות המחדל.
  12. לוחצים על הבא.
  13. בדף Build באשף, בודקים את ההגדרות של שרת ה-proxy. כדאי לוודא סביבת הבדיקה נבחרת.
  14. לוחצים על Build and Deploy (יצירה ופריסה).

2. יצירת מוצר

יוצרים מוצר שמכיל שני שרתי proxy:

  • שרת proxy שתומך ב-microgateway: edgemicro_hello
  • שרת ה-proxy לאימות שהותקן על ידי Edge Microgateway: edgemicro-auth.
  1. בממשק המשתמש של Edge (בגרסה הקלאסית), עוברים לפרסום > מוצרים.
  2. בדף 'מוצרים', לוחצים על + מוצר. ממלאים את פרטי המוצר באופן הבא:
    • שם: EdgeMicroTestProduct
    • שם תצוגה: EdgeMicroTestProduct
    • סביבה: בדיקה וייצור
    • גישה:ציבורית
    • סוג אישור מפתח: אוטומטי
    • מקורות מידע:
      • API Proxy: בוחרים באפשרות dgemicro_hello
      • גרסה: 1
      • נתיב המשאב: /**
  3. לוחצים על ייבוא משאב.
  4. בקטע 'משאבים', לוחצים על +API Proxy.
  5. בוחרים באפשרות edgemicro-auth.
  6. לוחצים על שמירה.

3. (אופציונלי) יוצרים מפתח לבדיקה

לצורך המדריך הזה, אפשר להשתמש בכל מפתח קיים בשלב הבא, יוצרים אפליקציה למפתחים. אבל אם רוצים, אפשר ליצור עכשיו מפתח לבדיקה:

  1. עוברים אל פרסום > מפתחים.
  2. בדף 'מוצרים', לוחצים על + מפתח.
  3. צריך למלא את תיבת הדו-שיח כדי ליצור מפתח לבדיקה.

4. יצירת אפליקציה למפתחים

בחרת להשתמש בפרטי הכניסה של הלקוח מהאפליקציה הזו כדי לבצע קריאות מאובטחות ל-API דרך Microsoft Edge Microgateway:

  1. עוברים אל פרסום > אפליקציות למפתחים.
  2. בדף 'אפליקציות למפתחים', לוחצים על + אפליקציה למפתחים.
  3. ממלאים את דף האפליקציה למפתחים באופן הבא:
    1. שם: EdgeMicroTestApp
    2. שם תצוגה: EdgeMicroTestApp
    3. מפתח: אם יצרתם מפתח לבדיקה, בוחרים אותו. או: יכול להשתמש בכל מפתח קיים למטרת המדריך הזה.
    4. פרטי כניסה:
      1. בוחרים באפשרות 'תפוגה': אף פעם.
      2. לוחצים על + מוצר ואז בוחרים את EdgeMicroTestProduct (המוצר שפשוט רוצים נוצר)
  4. לוחצים על שמירה.
  5. חזרת לדף הרשימה של אפליקציות למפתחים.
  6. בוחרים את האפליקציה שיצרתם, EdgeMicroTestApp.
  7. לוחצים על הצגה לצד צרכן מפתח וסוד צרכן.

חלק 3: הפעלת Microgateway של Edge

עכשיו, אחרי שהגדרתם את Edge Microgateway ותומכת לפחות Microgateway אחד שרת proxy ב-Edge, הגיע הזמן להפעיל את Edge Microgateway. שרת HTTP של Edge Microgateway יפעל במחשב המקומי שלכם, ואתם תבצעו קריאות ל-API ישירות לשרת הזה.

1. התחלת Microsoft Edge Microgateway

כדי להפעיל את Edge משתמשים בפקודה dgemicro start. מיקרו-שער.

  1. חשוב לוודא שיש לך את המפתחות שהוחזרו בעבר כשהרצת הפקודה dgemicro configuration. הפלט הזה נראה בערך כך הזה:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828ac9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e87189921ad00e6fc1ba8a8ae9f929ee2
  2. (אופציונלי) אפשר להדפיס פרטי עזרה עבור הפקודה edgemicro start.
    edgemicro start -h
  3. כדי להפעיל את Edge Microgateway, מריצים את הפקודה הבאה:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך מנהל החשבון הארגוני).
    • env הוא סביבה בארגון (כמו בדיקה או מוצר).
    • key הוא המפתח שהוחזר בעבר על ידי ההגדרה הפקודה.
    • secret הוא המפתח שהוחזר בעבר על ידי להגדיר את הפקודה.

    דוגמה

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824

    פלט

    פקודת ההתחלה מאחזרת הרבה פרטי תצורה מ-Apigee Edge ( גולל לחלון הטרמינל. בפלט תופיע רשימה של גורמים תוך התייחסות ל-microgateway שרתי proxy ומוצרים שהתגלו. בסוף הפלט אתם אמורים לראות משהו כך:

    ...
    
    PROCESS PID : 9757
    installed plugin from analytics
    installed plugin from oauth
    eb725020-a2b0-11e6-8a52-6de156e3a6e2 edge micro listening on port 8000
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    eb77ce60-a2b0-11e6-8a88-b96278c0c198 edge micro listening on port 8000
    eb78b8c0-a2b0-11e6-bf36-717b986c91fe edge micro listening on port 8000
    eb77f570-a2b0-11e6-883e-472b9104351e edge micro listening on port 8000

מה קרה?

בודקים את הטרמינל שבו הופעלה הפקודה dgemicro config. אם תגללו למעלה בפלט הסטנדרטי, תוכלו לראות שהפקודה מאחזרת מטען ייעודי (payload) פרטי תצורת Microgateway מ-Apigee Edge. המידע הזה כולל:

  • המפתח הציבורי שיצרנו ואחסנו בעבר במפת ערכי מפתחות מוצפנת (KVM).
  • ייצוג JSON של כל שרתי ה-proxy שתומכים ב-Edge Microgateway שקיימים של הארגון/סביבה. כל שרתי ה-proxy האלה בעלי שם edgemicro_.
  • ייצוג JSON של כל מוצרי ה-API שקיימים של הארגון/סביבה.

על סמך המידע הזה, אפליקציית Edge Microgateway יודעת לאילו שרתי proxy ונתיבים של שרתי proxy היא מותרת תהליך האימות. היא משתמשת בפרטי המוצר כדי לאכוף אבטחה (בדיוק באותו אופן כמו כל ממשק API שרת proxy פועל ב-Apigee Edge, שבו למפתחות של אפליקציות למפתחים יש שיוך למוצרים). נלך את השלבים לאבטחת Edge Microgateway בקרוב.

2. Microsoft Edge Microgateway

כש-Edge Microgateway פועל, אפשר להתקשר לשרת ה-Proxy. ההגדרות של בוצעה הורדה של שרת ה-proxy edgemicro_hello מ-Edge כשהתחלתם Microsoft Edge Microgateway. חשוב לזכור, הנתיב Basepath של שרת ה-Proxy הוא /hello.

כדי לבדוק את Edge Microgateway, מתחילים עם הנתיב הבסיסי ומוסיפים משאב נתיב /echo. חשוב לשים לב שכל מה שמופיע אחרי הנתיב הבסיסי (כולל כל שאילתות) פרמטרים) פשוט מועברות ליעד העורפי:

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

השגיאה מתרחשת כי לא שלחתם עם הבקשה מפתח API או אסימון גישה חוקיים. על ידי כברירת מחדל, ב-Edge Microgateway נדרשים מפתח API או אסימון גישה בכל קריאה ל-API. לחשבון בשלב הבא במדריך, נאבטח את ה-API בצורה תקינה ונראה לך איך לקבל אסימון הגישה ולכלול אותו בבקשה.

4. Microsoft Edge Microgateway

  1. בחלון טרמינל נפרד, cd עד אותו הספרייה שבה הפעלת את Edge Microgateway.
  2. מזינים את פקודת העצירה:
    edgemicro stop

חלק 4: Secure Edge מיקרוגייט

אפשר לאבטח קריאות ל-API שמבוצעות דרך Edge Microgateway באמצעות מפתח API או גישה ב-Assistant.

קריאות מאובטחות ל-API באמצעות אסימון גישה מסוג OAuth2

כדי לאמת קריאות ל-API באמצעות אסימון גישה מסוג OAuth2, צריך לבצע את השלבים הבאים:

1. לוקחים את המפתחות הנדרשים

  1. בממשק המשתמש של Edge, עוברים לאפליקציית המפתח שיצרתם קודם, כפי שמתואר. בחלק 2: יצירת ישויות ב-Apigee Edge. שם האפליקציה היה EdgeMicroTestApp.
  2. בדף של אפליקציית המפתח, מציגים את מפתח הצרכן ואת סוד הצרכן ומעתיקים אותם. הערכים האלה נדרשים כדי לקבל אסימון גישה בכל פעימה.

2. קבלת אסימון גישה

יש שתי דרכים לקבל אסימון גישה. נציג לך את שתי השיטות.

שימוש ב-CLI כדי לקבל אסימון גישה

השיטה הראשונה היא נוחה לפי הדפוס שבו השתמשנו לאורך כל המדריך. בדרך כלל השיטה השנייה שימושית יותר למפתחים של אפליקציות לקוח שצריכים לבקש אסימונים. נקודת הקצה בפועל של האסימון מוטמעת שרת ה-proxy edgemicro-auth שנפרס כשהגדרתם את Edge מיקרו-שער.

  1. (אופציונלי) הצגת עזרה לגבי הפקודה token get:
    edgemicro token get -h
  2. ליצור את האסימון, ולהחליף את הערכים של מפתח הצרכן וסוד הצרכן אפליקציית מפתחים שיצרת ב-Apigee Edge ב- הפרמטרים -i ו--s:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך מנהל החשבון הארגוני).
    • env הוא סביבה בארגון (כמו בדיקה או מוצר).
    • consumer_id הוא מזהה הצרכן באפליקציית המפתח שיצרתם קודם.
    • consumer_secret הוא סוד הצרכן אפליקציית מפתחים שיצרת בעבר.

    דוגמה

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy

    פלט (דוגמה)

    current nodejs version is v4.4.4
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIkVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }

(אופציונלי) שימוש ב-API כדי לקבל אסימון

אם התרגלת להתקשר לשרתי proxy של Edge באמצעות curl או לקוח HTTP אחר, יכול להיות שכדאי לך לדעת שאפשר להפעיל ישירות את נקודת הקצה של האסימון במקום להשתמש בה באמצעות הפקודה dgemicro To. הנה דוגמה ל-curl. רק החלפה את שמות הארגון והסביבה בכתובת ה-URL, ומעבירים את מפתח הצרכן:צרכן שמופרד בנקודתיים ערכים סודיים בכותרת 'אימות בסיסי':

curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "grant_type": "client_credentials" }' -H "Content-Type: application/json"

כאשר:

  • org הוא שם הארגון ב-Edge (שם הארגון שלך צריך להיות ארגון) ).
  • env הוא סביבה בארגון (כמו בדיקה או מוצר).
  • client_id הוא מזהה הצרכן באפליקציית המפתח שלך שנוצר בעבר.
  • client_secret הוא סוד הצרכן של המפתח אפליקציה שיצרתם בעבר.

פלט (דוגמה)

הפקודה, האם השתמשתם בפקודת אסימון מיקרו-קצה ב-CLI או שנקראת נקודת הקצה באמצעות curl, מחזירה אסימון גישה חתום שאפשר להשתמש בו כדי להפוך שיחות. משהו כזה:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0=
      

3. בדיקת ההגדרות ב-Edge Microgateway

  1. לפתוח את הקובץ ~/.edgemicro/org-env-config.yaml. למידע נוסף על איפה האם אפליקציית Edge Microgateway מותקנת.
  2. מוודאים שמאפייני הפלאגין של OAuth מוגדרים ל-false. אלו כברירת מחדל, אבל מומלץ לבדוק שוב את הפרטים הבאים:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. בנוסף, בקובץ org-env-config.yaml יש לוודא שהפלאגין של OAuth נוסף לרכיב plugins:sequence, כך:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
  4. אם מבצעים שינויים בקובץ, טוענים מחדש את השינויים שמריצים את מכונת Edge Microgateway. הפקודה הזו מגדירה מחדש את Edge Microgateway עם אפס זמן השבתה:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך מנהל החשבון הארגוני).
    • env הוא סביבה בארגון (כמו בדיקה או מוצר).
    • key הוא המפתח שהוחזר בעבר על ידי ההגדרה הפקודה.
    • secret הוא המפתח שהוחזר בעבר על ידי להגדיר את הפקודה.

    דוגמה

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

4. קריאה מאובטחת ל-API

כשיש לך אסימון גישה, עכשיו אפשר לבצע את הקריאה ל-API באופן מאובטח. לדוגמה:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PN30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

ה-API מחזיר כותרות ומידע אחר משרת ה-mock.

אבטחת ה-API באמצעות מפתח API

כדי להשתמש במפתח API לצורך קבלת הרשאה, מבצעים את השלבים הבאים:

1. קבלת מפתח ה-API

  1. בממשק המשתמש של Edge, עוברים לאפליקציית המפתח שיצרתם קודם, כפי שמתואר. בחלק 2: יצירת ישויות ב-Apigee Edge. שם האפליקציה היה EdgeMicroTestApp.
  2. בדף האפליקציה למפתחים, מציגים את מפתח הצרכן ומעתיקים אותו. הערך הזה הוא מפתח ה-API. המפתח הזה ישמש אותך כדי לבצע קריאות מאומתות ל-API.

2. בדיקת ההגדרות ב-Edge Microgateway

  1. לפתוח את הקובץ ~/.edgemicro/org-env-config.yaml. למידע נוסף על איפה האם אפליקציית Edge Microgateway מותקנת.
  2. מוודאים שמאפייני הפלאגין של OAuth מוגדרים ל-false. אלו כברירת מחדל, אבל מומלץ לבדוק שוב את הפרטים הבאים:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. בנוסף, בקובץ org-env-config.yaml יש לוודא שהפלאגין של OAuth נוסף לרכיב plugins:sequence, כך:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
  4. אם מבצעים שינויים בקובץ, טוענים מחדש את השינויים שמריצים את מכונת Edge Microgateway. הפקודה הזו מגדירה מחדש את Edge Microgateway עם אפס זמן השבתה:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך מנהל החשבון הארגוני).
    • env הוא סביבה בארגון (כמו בדיקה או מוצר).
    • key הוא המפתח שהוחזר בעבר על ידי ההגדרה הפקודה.
    • secret הוא המפתח שהוחזר בעבר על ידי להגדיר את הפקודה.

    דוגמה

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

3. קוראים ל-API בצורה מאובטחת באמצעות מפתח API

קוראים ל-API עם הכותרת x-api-key באופן הבא. מפתח הצרכן הערך שהעתקת מהאפליקציה למפתחים הוא מפתח ה-API. כברירת מחדל, אפליקציית Edge Microgateway מצפה לכם כדי להעביר את המפתח בכותרת שנקראת x-api-key, כך:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

כאשר:

  • apikey הוא ערך מפתח הצרכן שנלקח מ- EdgeMicroTestApp.

לדוגמה:


curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'

עכשיו יש לך Edge Microgateway פועל ותקין. בחלק הבא של במדריך הזה נבחן יישומי פלאגין שמוסיפים פונקציונליות ל-Edge Microgateway.

חלק 5: הוספת מעצרת שיא יישומי פלאגין

בחלק הזה נוסיף למופע שלכם ב-Edge תכונה להגבלת קצב שנקראת 'מעצר שיא'. מיקרו-שער.

מהם יישומי פלאגין?

פלאגין הוא מודול Node.js שמוסיף פונקציונליות ל-Edge Microgateway. מודולים של יישומי פלאגין להשתמש בדפוס עקבי והם מאוחסנים במיקום שמוכר ל-Edge Microgateway, כך מעבר למיקרו-שער כדי לגלות ולטעון אותן באופן אוטומטי. מידע נוסף על יישומי פלאגין זמין ב שימוש ביישומי פלאגין.

מתבצעת הוספה של עצירת הביניים יישומי פלאגין

מעצר עם נקודות שיא מגן מפני עליות חדות בתעבורת הנתונים. היא מווסתת את מספר הבקשות שעוברות עיבוד על ידי מכונת Edge Microgateway.

ב-Edge Microgateway, עצירת נקודות שיא מוטמעת כמודול פלאגין. כדי להפעיל את האפשרות, צריך כדי להוסיף אותו לקובץ התצורה של Edge Microgateway.

  1. לפתוח את הקובץ ~/.edgemicro/org-env-config.yaml. למידע נוסף על איפה האם אפליקציית Edge Microgateway מותקנת.
  2. צריך להוסיף את הרכיב הבא. אפשר להוסיף אותה בכל מקום בקובץ.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
  3. הוספת spikearrest אל את הרכיב edgemicro:sequence, כמו שאפשר לראות בהמשך. הרצף מאפיין התצורה מורה ל-Edge Microgateway את הסדר שבו המודולים של הפלאגין בוצעה.
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - spikearrest
        - oauth 
  4. שומרים את קובץ התצורה.
  5. טעינה מחדש של Edge Microgateway באמצעות הפקודה reload. צריך להריץ את הפקודה הזו מתוך הספרייה שבה הפעלת את Edge Microgateway.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    כאשר:

    • org הוא שם הארגון שלך ב-Edge (צריך להיות לך מנהל החשבון הארגוני).
    • env הוא סביבה בארגון (כמו בדיקה או מוצר).
    • key הוא המפתח שהוחזר בעבר על ידי ההגדרה הפקודה.
    • secret הוא המפתח שהוחזר בעבר על ידי להגדיר את הפקודה.

    דוגמה

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
  6. אפשר לנסות לשלוח קריאה ל-API כמה פעמים ברצף במהירות. אחרי השיחה השנייה, Edge Microgateway מחזיר את השגיאה הזו:
    {"message":"SpikeArrest engaged","status":503}

הסיבה לכך היא שמעצרת עליות חדות עוזרת להפחית את מספר השיחות שאפשר לבצע ביחידת הזמן שצוינה. במקרה כזה, תוכלו לבצע 10 שיחות בדקה, או אחת מתוך כל 6 שניות.

מידע נוסף זמין בקטע איך פועלת מעצרת שיא? בקטע שימוש ביישומי פלאגין.

קרדיט נוסף: הוספת פלאגין המכסה

בהתאם לאותו דפוס שמשמש להגדרה של עצירת שיא, אפשר להוסיף יישומי פלאגין אחרים, כמו פלאגין המכסה. כמו במעצר חד-פעמיים, פלאגין המכסה נכלל בכל רישיון Microsoft Edge Microgateway בתהליך ההתקנה. מכסה מציינת את מספר הודעות הבקשות שהאפליקציה מורשית לשלוח ל-API בפרק זמן מוגדר (דקות או שעות).

הסבר על המכסות זמין במאמר איך משתמשים בפלאגין של המכסה בקטע שימוש ביישומי פלאגין.

חלק 6: הצגה ניתוח נתונים ב-Apigee Edge

עכשיו יש לנו מכונה של Edge Microgateway שמתפקדת באופן מלא. בואו נראה מה היא יצאה! כברירת מחדל, המודול של הפלאגין לניתוח נתונים מתווסף ל-Edge Micro. המודול הזה דוחף באופן שקט ניתוח נתונים מ-Edge Micro עד קצה Apigee, שבו מערכת Edge Analytics משתמשת בהם. בואו נראה:

  1. מתחברים לארגון שלכם ב-Apigee Edge.
  2. בוחרים באפשרות Analytics > ביצועים של שרת proxy.
  3. בלוח הבקרה של ביצועי שרת ה-proxy, בוחרים ב-dgemicro_hello שרת proxy.
  4. התרשים מציג מידע על דפוסי התנועה של שרת ה-proxy, כמו התנועה הכוללת, זמן תגובה ממוצע, יעד זמן תגובה ממוצע ועוד.

מידע נוסף על מרכזי הבקרה של Edge Analytics זמין בדף הבית של 'מרכזי הבקרה של Analytics' ב מסמכי תיעוד של Edge. למידע נוסף על יישומי פלאגין, עיינו במאמר שימוש ביישומי פלאגין