הפניות CLI ל-Edge Microgateway

אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X.
מידע

Edge Microgateway גרסה 3.2.x

סקירה כללית

ה-CLI של Edge Microgateway מאפשר לכם לשלוט בכל ההיבטים של מופע Edge Microgateway ולנהל אותו.

ניהול אישורים

הפקודות cert מאפשרות להתקין ולנהל את זוג המפתחות הציבורי/פרטי שמשמש לחתימה על אסימוני מוכ"ז שמשמשים לקוחות לביצוע קריאות מאובטחות דרך Edge Microgateway. המפתחות מאוחסנים ב-Apigee Edge במפת מפתח-ערך (KVM) מוצפנת. ‫Edge Microgateway משתמש במפתח הציבורי כדי לאמת טוקנים של נושאי הרשאה חתומים. המפתחות האלה נוצרים כשמריצים את הפקודה edgemicro configure, כמו שמוסבר במאמר הגדרה של Edge Microgateway. במקרה הצורך, אפשר להשתמש בפקודות cert שמתוארות כאן כדי ליצור מחדש את המפתחות האלה ולנהל אותם.

התקנת אישור

הפונקציה מתקינה את המפתחות במפת ערכי מפתח (KVM) מוצפנת ומחזירה את המפתח הציבורי כפלט. היקף ההרשאה של זוגות מפתחות מוגבל לארגון שצוין.

שימוש

edgemicro cert install -o [organization] -e [environment] -u [username] -p [password] --force

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-f, --force (אופציונלי) אם מפתח כבר מאוחסן ב-KVM המוצפן, אפשר לכפות את ההחלפה שלו.
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro cert install -o docs -e test -u jdoe@example.com -f

פלט

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
password:
deleting vault
creating vault
adding private_key
adding public_key
installed cert

מחיקת אישור

מחיקת זוג המפתחות של הארגון.

שימוש

edgemicro cert delete -o [organization] -e [environment] -u [username] -p [password]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-h, --help מידע על השימוש בפלט.

דוגמה

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

פלט

deleting vault
Vault deleted!

בדיקת אישור

בודק אם מותקן אישור בארגון.

שימוש

edgemicro cert check -o [organization] -e [environment] -u [username] -p [password]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-h, --help מידע על השימוש בפלט.

דוגמה

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

פלט (הצלחה)

checked cert successfully

פלט (כשל)

אם האישור לא קיים, מוחזרת שגיאה.

קבלת המפתח הציבורי

הפונקציה מחזירה את המפתח הציבורי של הארגון שצוין. לא נדרש אימות.

שימוש

edgemicro cert public-key -o [organization] -e [environment]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro cert public-key -o docs -e test

פלט (דוגמה)

-----BEGIN CERTIFICATE-----

MIICpDCCAYwCCQCKpXWGum9uTjANBgkq9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3cNMTYxMTAyMjAxNTA2WhcNMTYxMTAzMjAxNTA2WjAUMRIwEAYD
VQQDEwlsb2Nvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDD
ETr/ne/gP47+9LgjLvBJjpbFVdaeUabZZ3wbA7sSIVnnNXWt3yPklrWSfIh+
L2+dq4k+YunsQE2+dwPdXA2x8DPGvqGcCdWPxnpZ7ix5Akbs8i/J+Ue0pXT4
jkpWbaDDftGL2tcxwP45yI+slpDYvmWRps07TFXkAPjGEHYPvCT9/v/35GkL
0h4v0S+XfpcjS5c47o7CIWlkgEM5GBosQUb17kuVR48392vGFPsnCP34iNe7
zguhiCXYg2zkOcj/N3AE4xKIhCz0QcewULy08GltWMmyjJ/30zs8P41JqoA4
RwfeEZ8RenN3rJQim1ppAAEwDQYJKoZIhvcNAQELBQADggEBAHcORIfc+ySe
2FMmqicNe6Wt5V/5zOaBMLsGQdqGOHB5cQc79sMBrk680KVhrwHXZ2nBIkVe
UEL+2qLY1VLfswBNAvcNwV9U4TwHq4eIANiD751oJK1tHmM/ujThQkwNf96o
6I7Ws+wfpGO3ppJCttRbtnATIxrwsCHN4i5lbW/tJSL7t/Zf6T1B+YSJU9AF
xuvLq22cCqyYJQdmKq2vVS55WRZdllm+mRtJrv7MLM9gfDPRxVlwrBz/eQHy
Fv+dwzxcvQjkz03RNhZUodzuD34DPJoYeK++rItsddwQ26KTahH80yYTAFzY
x9gfPf1/+qo=?

-----END CERTIFICATE-----

הגדרת Edge Microgateway ל-Apigee Edge Cloud

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

שימוש

edgemicro configure -o [organization] -e [environment] -u [username] -p [password]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-r, --url (אופציונלי) מציינים את הכינוי של המארח הווירטואלי עבור הארגון:סביבה. מידע נוסף על מארחים וירטואליים זמין במאמרי העזרה של Edge. ברירת מחדל: org-env.apigee.net
-c, --configDir (אופציונלי) מציין את הנתיב לקובץ ההגדרות של Edge Microgateway. כברירת מחדל, קובץ התצורה נמצא במיקום ./config/config.yaml. (נוסף בגרסה 2.4.x)
-x, --proxyName (אופציונלי) מגדיר את נתיב הבסיס לשרת ה-proxy edgemicro-auth. אם ה-proxy‏ edgemicro-auth נפרס בנתיב שונה מנתיב ברירת המחדל, ‎/edgemicro-auth, התכונה הזו מאפשרת להגדיר את הנתיב החדש ב-Edge Microgateway. כברירת מחדל, נתיב הבסיס הוא /edgemicro-auth. (נוסף בגרסה 2.4.x)
-t, --token (אופציונלי) מאפשר להשתמש בטוקן OAuth לאימות במקום בשם משתמש ובסיסמה. אפשר גם לעיין במאמר אבטחת קריאות ל-API באמצעות אסימון גישה מסוג OAuth2. לדוגמה:

edgemicro configure -o docs -e test -t <your token>
-v, --virtualHosts (אופציונלי) מחליף את המארחים הווירטואליים שמוגדרים כברירת מחדל, שהם default,secure. משתמשים באפשרות הזו אם יש מארחים וירטואליים שצוינו עבור סביבת הארגון של Edge, שאינם ברירות המחדל האלה. מידע נוסף על מארחים וירטואליים זמין במסמכי התיעוד של Edge.
-d, --debug (אופציונלי) מספק מידע על ניפוי באגים.
-h, --help מידע על השימוש בפלט.

הערות לגבי שימוש

הפקודה הזו שומרת את פרטי ההגדרה ב-‎~/.edgemicro/org-env-config.yaml.

דוגמה

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

פלט

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

...

The following credentials are required to start edge micro
  key: d2f0a246ad52b5d2a8b04ba65b43c76348aba586691cf6185cd7bb9fb78fe9f
  secret: 59813bc1db4a7ada182705ae40893c28a6fae680c3deb42aefbf1a4db42e372

edgemicro configuration complete!

יצירת מפתחות

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

שימוש

edgemicro genkeys -o [organization] -e [environment] -u [username] -p [password]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-t, --token (אופציונלי) מאפשר להשתמש בטוקן OAuth לאימות במקום בשם משתמש ובסיסמה. אפשר גם לעיין במאמר אבטחת קריאות ל-API באמצעות אסימון גישה מסוג OAuth2. לדוגמה:

edgemicro genkeys -o docs -e test -t <your token>
-h, --help מידע על השימוש בפלט.

הערות לגבי שימוש

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

  • כתובת URL של bootstrap: כתובת ה-URL הזו מפנה לשירות Apigee Edge שמאפשר למופע של Edge Microgateway לשלוח נתוני ניתוח ל-Apigee Edge. צריך להעתיק את כתובת ה-URL הזו לקובץ ההגדרות של Edge Microgateway: ‏ ‎~/.edgemicro/org-env-config.yaml.
  • key: המפתח. המפתח הזה והסוד נדרשים כקלט לפקודת ה-CLI שמשמשת להפעלת מופע של Edge Microgateway.
  • secret: הסוד.

דוגמה

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

פלט (דוגמה)

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

configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1
Please copy the following property to the edge micro agent config
  bootstrap: https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/jdoe/environment/test

The following credentials are required to start edge micro
  key: db39324077989c75eac34c13d285772ea8e3b982b957b3f52916f3048511443f
  secret: 5bf8da39de0056f88fdd5f25a8602d22f312c1c8c870580a5fef55ac6637b7ae

finished

הגדרת Edge Microgateway ל-Apigee Edge Private Cloud

הגדרת Edge Microgateway לעבודה עם התקנה של Apigee Edge Private Cloud.

שימוש

edgemicro private configure -o [organization] -e [environment] -u [username] -p [password]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-r, --runtime-url מציינת את כתובת ה-URL של זמן הריצה עבור המופע של הענן הפרטי.
-m, --mgmt-url כתובת ה-URL של שרת הניהול של מופע הענן הפרטי.
-v, --virtualHosts רשימה של מארחים וירטואליים לארגון שלכם:סביבה, מופרדים בפסיקים. ברירת מחדל ‫default,secure.
-c, --configDir (אופציונלי) מציין את הנתיב לקובץ ההגדרות של Edge Microgateway. כברירת מחדל, קובץ התצורה נמצא במיקום ./config/config.yaml. (נוסף בגרסה 2.4.x)
-t, --token (אופציונלי) מאפשר להשתמש בטוקן OAuth לאימות במקום בשם משתמש ובסיסמה. אפשר גם לעיין במאמר אבטחת קריאות ל-API באמצעות אסימון גישה מסוג OAuth2. לדוגמה:

edgemicro configure -o docs -e test -t <your token>
-d, --debug (אופציונלי) מספק מידע על ניפוי באגים.
-h, --help מידע על השימוש בפלט.

הערות לגבי שימוש

הפקודה הזו שומרת את פרטי ההגדרה ב-‎~/.edgemicro/org-env-config.yaml.

דוגמה

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.55.100:9002 -m http://192.162.55.100:8080

פלט

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

...

The following credentials are required to start edge micro
  key: d2f0a246ad52b5d2a8b04ba65b43c76348aba586691cf6185cd7bb9fb78fe9f
  secret: 59813bc1db4a7ada182705ae40893c28a6fae680c3deb42aefbf1a4db42e372

edgemicro configuration complete!

הפעלת Edge Microgateway

לפני שמפעילים את Edge Microgateway, צריך להריץ קודם את הפקודה edgemicro configure (ענן ציבורי) או edgemicro private configure (ענן פרטי). הפקודה configure מחזירה את ערכי המפתח והסוד שנדרשים להפעלת Edge Microgateway.

שימוש

edgemicro start -o [organization] -e [environment] -k [public-key] -s [secret-key]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-k, --key הערך המרכזי שמוחזר כשמריצים את הפקודה edgemicro configure.
-s, --secret הערך הסודי שמוחזר כשמריצים את הפקודה edgemicro configure.
-p, --processes (אופציונלי) מספר התהליכים להתחלה. ברירת מחדל: מספר ליבות המעבד במערכת.
-d, --pluginDir (אופציונלי) הנתיב המוחלט לספריית הפלאגין.
-r, --port (אופציונלי) מחליף את מספר היציאה שצוין בקובץ /.edgemicro/org-env-config.yaml. ברירת מחדל: 8000
-c, --cluster

(אופציונלי) מפעיל את Edge Microgateway במצב אשכול.

הערה: האפשרות הזו הוסרה החל מגרסה 2.3.1. בגרסה v2.3.1 ואילך, Edge Micro תמיד מופעל במצב אשכול.

-c, --configDir (אופציונלי) מציין את הנתיב לקובץ ההגדרות של Edge Microgateway. כברירת מחדל, קובץ התצורה נמצא במיקום ./config/config.yaml. (נוסף בגרסה 2.4.x)
-u, --configUrl (אופציונלי) מציין נקודת קצה שממנה Edge Microgateway יוריד את קובץ התצורה שלו. (נוסף בגרסה v2.5.x)
-d, --debug (אופציונלי) מספק מידע על ניפוי באגים.
-h, --help מידע על השימוש בפלט.

הגדרת היציאה

הפקודה start מאפשרת לציין מספר יציאה כדי לבטל את היציאה שצוינה בקובץ התצורה. אפשר גם לציין מספר יציאה באמצעות משתנה הסביבה PORT. לדוגמה:

edgemicro start -o docs -e test -k abc123 -s xyz456 -p 2 --port 8002

או

export PORT=8002
edgemicro start -o org -e test -k key -s secret -p 2

אם היציאה נמצאת בשימוש, Edge Microgateway מחזיר שגיאה.

מידע על אשכולות

‫Edge Microgateway משתמש במודול האשכול של Node.js כדי להפעיל אשכולות. האפשרות Clustering מאפשרת ל-Edge Microgateway לנצל את היתרונות של מערכות מרובות ליבות. פרטים נוספים זמינים במסמכי Node.js.

דוגמה

edgemicro start -o docs -e test -k abc123 -s xyz456

פלט לדוגמה:

...

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
info: jwk_public_keys download from null returned 200 undefined
info: jwt_public_key download from https://docs-test.apigee.net/edgemicro-auth/publicKey returned 200 OK
info: products download from https://docs-test.apigee.net/edgemicro-auth/products returned 200 OK
info: config download from https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test returned 200 OK
PROCESS PID : 17991

ניהול טוקנים

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

פענוח טוקן

מפענח טוקן bearer חתום ומקודד לייצוג שלו בטקסט פשוט של JWT (טוקן אינטרנט מבוסס Java). הטוקן מעביר מידע על אפליקציית הפיתוח של Apigee Edge שסיפקה את המפתחות ששימשו ליצירת הטוקן, כולל שם האפליקציה, client_id, רשימת מוצרים ועוד.

שימוש

edgemicro token decode -f [filename]

פרמטרים

פרמטרים תיאור
-f, --file השם של קובץ שמכיל את אסימון ה-JWT שרוצים לפענח.
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro token decode -f token.jwt

פלט (דוגמה)

{ header: { typ: 'JWT', alg: 'RS256' },

  payload:
   { application_name: 'b43342ef-86f6-4666-a121-b9ac2025d217',
     client_id: 'O9ZQRZKnn1rdgcKQgsABSMdOsKS',
     scopes: [],
     api_product_list: [ 'MicroTest' ],
     iat: 1436280566,
     exp: 1436282365 },
  signature: '' }

יצירת טוקן

יוצרת אסימון Bearer חתום. הטוקן מאפשר לאפליקציות לקוח לבצע קריאות מאומתות ל-API אל Edge Microgateway. האסימון הוא אסימון JWT (‏JSON Web Token) שתואם ל-OAuth 2.0. הוא דורש כקלט את הערכים של מפתח הצרכן (מזהה הלקוח) וסוד הצרכן (סוד הלקוח) מאפליקציית מפתחים רשומה ב-Apigee Edge. אפשר גם לעיין במאמר אבטחת קריאות ל-API באמצעות אסימון גישה מסוג OAuth2.

שימוש

edgemicro token get -o [org] -e [env] -i [client_id] -s [client_secret]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-1, --key מספר הלקוח מאפליקציית המפתחים שמשויך לשרת proxy עם מודעות ל-Microgateway.
-s, --secret סוד הלקוח מאפליקציית הפיתוח שמשויכת לשרת proxy עם מודעות ל-Microgateway.
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro token get -o docs -e test -i 5UzOwAXGoOeo60aew94PPG5MAZE3aJp -s 6vahKFGS9a3qMLwz

פלט (דוגמה)

{ token: 'eyJ0eXAiOiJKV1JhbGciOiJSUzI1NiJ9Glvbl9uYW1lIjoiNWNiMGY0NTV6TV3
EtOWMzOC00YmJjLWIzNzEtZGMxZTQzOGMxIiwiY2xpZW50X2lkIjoiNVV6T3dBWEdvSU9lbz
YwYWV3OTRQN0c1TUFaRTNhSnAiLCJzY2MiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIkVkZ2
VNaWNyb1Rlc3RQcm9kdWN0Il0sImlhdCI3ODEyMzQ2MSwiZXhwIjoxNDc4MTI1MjYwfQ.Dx5
f5U7PXm8koNGmFX4N6VrxKMJnpndKgoJ5zWSJvBZ6Ccvhlpd85ipIIA5S2A5nx4obYWp_rpY
RJpIGYwyxP6Oq2j0rxnVjdCC4qyYMgthZjhKgEBVBe3s1ndP72GP2vV6PsSA9RQ2-yzsy9r0
TzhAZ3NJTxT1tS0XKqKngE-OhR3fJHVLAzdMDT0AmS9H0Z2NAJtQOuK6RTpCjG9B6Bc48AEM
sj7QSM-1LWiQ8LdY8k_BoC06qsTI7bCQGWwTuqL-ismbcx2bxovUxSemZIaoROfuF-dCZHG3
2aTP75WxBvvNgBBvPvQtPzbeSOtEaww' }

אפשר גם ליצור JWT באמצעות Management API:

curl -i -X POST "http://$ORG-$ENV.apigee.net/edgemicro-auth/token" \
  -H "Content-Type: application/json" \
  -d '{
    "$CLIENT_ID": "your consumer key",
    "$CLIENT_SECRET": "your consumer secret",
    "grant_type": "client_credentials"
  }'

כאשר:

  • $ORG הוא שם הארגון שלכם ב-Edge (צריכות להיות לכם הרשאות אדמין בארגון).
  • $ENV היא סביבה בארגון (למשל 'בדיקה' או 'ייצור').
  • $CLIENT_ID הוא מספר הצרכן באפליקציית הפיתוח שיצרתם קודם.
  • $CLIENT_SECRET הוא סוד הצרכן באפליקציית הפיתוח שיצרתם קודם לכן.

אימות טוקן

מאמת את טוקן ה-bearer החתום מול המפתח הציבורי שמאוחסן ב-Apigee Edge עבור הארגון והסביבה שצוינו.

שימוש

edgemicro token verify -o [org] -e [env] -f [filename]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-f, --file השם של קובץ שמכיל את ה-JWT לאימות.
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro token get -o docs -e test -f token.jwt

פלט לדוגמה של אסימון תקין

{ application_name: 'b43342ef-86f6-4666-a121-b9ac2025d217',

  client_id: 'O9ZQRZKnn1rdgcKQsAZUBkQSMdOsKS',

  scopes: [],

  api_product_list: [ 'MicroTest' ],

  iat: 1436396155,

  exp: 1436397954 }

פלט לדוגמה לטוקן לא תקין

{ [JsonWebTokenError: invalid token] name: 'JsonWebTokenError', message: 'invalid token' }

פלט לדוגמה לטוקן שפג תוקפו

{ [TokenExpiredError: jwt expired]

  name: 'TokenExpiredError',

  message: 'jwt expired',

  expiredAt: Tue Jul 07 2015 09:19:25 GMT-0600 (MDT) }

הפעלת הגדרות חדשות של Edge Microgateway

מריצים את הפקודה הזו פעם אחת אחרי שמתקינים את Edge Microgateway בפעם הראשונה. יוצר קובץ תצורה חדש שמוגדר כברירת מחדל: ‎~/.edgemicro/default.yaml.

שימוש

edgemicro init

פרמטרים

פרמטרים תיאור
-c, --configDir (אופציונלי) מציין את הנתיב לקובץ ההגדרות של Edge Microgateway. כברירת מחדל, קובץ התצורה נמצא במיקום ./config/config.yaml. (נוסף בגרסה 2.4.x)
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro init

פלט (הצלחה)

config initialized to /MyHome/.edgemicro/default.yaml

אימות ההגדרות של Edge Microgateway

בודק שההגדרה של Edge Microgateway תקינה.

שימוש

edgemicro verify -o [organization] -e [environment] -k [public-key] -s [secret-key]

פרמטרים

דוגמה

edgemicro verify -o docs -e test -k abc123 -s xyz456

פלט (הצלחה)

logging to /var/tmp/edgemicro-My-Machine.local-a0c48610-a148-11e6-8466-93f081b05988
installed plugin from analytics
installed plugin from oauth
a0c48610-a148-11e6-8466-93f081b05988 edge micro listening on port 8000
verifying analytics negative case: OK
verifying bootstrap url availability:OK
verifying jwt_public_key availability: OK
verifying products availability: OK
verifying quota with configured products: OK
verifying analytics with payload: OK
verification complete

בדיקת הסטטוס של אשכול מיקרו-שערים

כברירת מחדל, Edge Microgateway מופעל במצב אשכול. אפשר להשתמש בפקודה הזו כדי לבדוק את הסטטוס של האשכול.

שימוש

edgemicro status

פרמטרים

פרמטרים תיאור
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro status

פלט (הצלחה)

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
edgemicro is running with 8 workers

הפסקת אשכול המיקרו-שער

עצירה של אשכול Edge Microgateway.

שימוש

edgemicro stop

פרמטרים

פרמטרים תיאור
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro stop

פלט (הצלחה)

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
Stop Completed Successfully

טעינה מחדש של אשכול המיקרו-שער

ההגדרה הזו מאפשרת הפעלה מחדש ללא השבתה אחרי שינוי בהגדרות. טעינה מחדש של Edge Microgateway על ידי שליפה של הגדרה חדשה.

שימוש

edgemicro reload -o [organization] -e [environment] -k [public-key] -s [secret-key]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-k, --key הערך המרכזי שמוחזר כשמריצים את הפקודה edgemicro configure.
-s, --secret הערך הסודי שמוחזר כשמריצים את הפקודה edgemicro configure.
-h, --help מידע על השימוש בפלט.

דוגמה

edgemicro reload -o docs -e test -k abc123 -s xyz456

פלט (הצלחה)

...

Reload Completed Successfully

שדרוג פרוקסי edgemicro-auth

כדי להשתמש ברוטציית מפתחות, צריך לפרוס פרוקסי משודרג של edgemicro-auth בארגון Apigee Edge. (נוסף בגרסה v2.5.x)

הערה: אם הגדרתם את מופע Edge Micro הנוכחי לפני גרסה 2.5.2, אתם צריכים לשדרג את ה-proxy הזה אם אתם רוצים להשתמש ברוטציית מפתחות. צריך לבצע את השדרוג הזה רק פעם אחת.

שימוש

edgemicro upgradeauth -o [organization] -e [environment] -u [username]

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-u, --username שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-v, --virtualhost (אופציונלי) המארח הווירטואלי של ה-proxy.
-b, --baseuri (אופציונלי) ה-URI הבסיסי של הארגון ב-Apigee Edge. ברירת המחדל היא URI בסיסי. בפריסות בענן של Apigee, ה-URI הבסיסי הוא api.enterprise.apigee.com. בפריסות מקומיות, כתובת ה-URL הבסיסית עשויה להיות שונה.

דוגמה

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

פלט (הצלחה)

אם הפקודה מסתיימת בלי שגיאות, היא תחזיר פלט דומה לזה:

Going to create revision 2 of API edgemicro-auth
Using /Users/jdoe/npm/lib/node_modules/edgemicro/node_modules/microgateway-edgeauth/apiproxy/edgemicro-auth.xml as the root file
Creating revision 2 of API edgemicro-auth
Uploading java resource micro-gateway-products-javacallout-2.0.0.jar
Uploading jsc resource generate-verify-jwt.js
Uploading jsc resource send-public-key.js
Uploading jsc resource set-jwt-variables.js
Uploading jsc resource set-response.js
Uploading node resource index.js
Uploading node resource node_modules_apigee-access.zip
Uploading node resource node_modules_base64url.zip
Uploading node resource node_modules_buffer-equal-constant-time.zip
Uploading node resource node_modules_ecdsa-sig-formatter.zip
Uploading node resource node_modules_jsrsasign.zip
Uploading node resource node_modules_jwa.zip
Uploading node resource node_modules_jws.zip
Uploading node resource node_modules_safe-buffer.zip
Uploading node resource package.json
Uploading policy Access-App-Info-2.xml
Uploading policy Access-App-Info.xml
Uploading policy AccessTokenRequest.xml
Uploading policy Add-Custom-Claims.xml
Uploading policy Create-OAuth-Request.xml
Uploading policy Create-Refresh-Request.xml
Uploading policy Extract-API-Key.xml
Uploading policy Extract-OAuth-Params.xml
Uploading policy Extract-Refresh-Params.xml
Uploading policy Get-Private-Key.xml
Uploading policy Get-Public-Key.xml
Uploading policy Get-Public-Keys.xml
Uploading policy JavaCallout.xml
Uploading policy Products-to-JSON-2.xml
Uploading policy Products-to-JSON.xml
Uploading policy Raise-Fault-Unknown-Request.xml
Uploading policy RefreshAccessToken.xml
Uploading policy Send-Public-Key.xml
Uploading policy Set-JWT-Variables.xml
Uploading policy Set-Response.xml
Uploading policy Verify-API-Key.xml
Uploading target TargetEndpoint-1
Uploading proxy default
Deploying revision 2 of edgemicro-auth to test
Deployment on test successful
edgemicro-auth proxy upgraded

שדרוג של מפת צמדי מפתח/ערך (KVM)

משתמשים בפקודה edgemicro upgradekvm כדי לשדרג את KVM בארגון Apigee. אם רוצים להשתמש ברוטציית מפתחות, צריך לשדרג את KVM.

שימוש

‫Edge for Public Cloud:

edgemicro upgradekvm -o [organization] -e [environment] -k [key] -s [secret]

‫Edge for Private Cloud:

edgemicro private upgradekvm -o [organization] -e [environment] -k [key] -s [secret] -p 'https://[hostname]/edgemicro-auth'

פרמטרים

פרמטרים תיאור
-o, --org הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env סביבה שהגדרתם עבורה את Edge Microgateway.
-k, --key הערך המרכזי שמוחזר כשמריצים את הפקודה edgemicro configure.
-s, --secret הערך הסודי שמוחזר כשמריצים את הפקודה edgemicro configure.
-p, --proxyuri ה-URI של edgemicro_auth proxy

Edge Public Cloud: אופציונלי.‫
Edge Private Cloud: חובה.

דוגמה ל-Edge Public Cloud:

 -p 'https://[org]-[env].apigee.net/edgemicro-auth'

דוגמה ל-Edge Private Cloud:

-p 'https://[hostname]/edgemicro-auth'

דוגמה

edgemicro upgradekvm -o docs -e test \
-k 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb \
-s 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47

פלט (הצלחה)

אם הפקודה מסתיימת בלי שגיאות, היא תחזיר פלט דומה לזה:

current nodejs version is v12.5.0
current edgemicro version is 3.1.5
password:
Checking for certificate...
Certificate found!
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsT6yVoT/h6pvkPlkUUtv
Hgs7MbDPcWxto7dZqJBwQ4oOQ0IJ2P4XGigc3kYUyPp5lFHg1ssP9+0onRpqn6Lq
z7N5iaTSv5YXb26bU2kSOl4hbwcljIzauAnBzQ13VaQ5SoflRxMGSZmTqZeu5jkQ
3JZ7F6k2bCar5sk1k84vd4WXcCVyngFlrMtlux5z0vOU56QYZFvvKYl/wOHNPLLB
Js54531CV1ZfhV3nDDq9Lh5D1C/oQVlm1Lc7BJoEUmKeFATmSsi50c14ScsmdtJ1
HqC/brSXCd185P6ifu2RH7IHKzNfcD4NlfAVmDScng4w5RxBan2avbmAJrokQ4b5
WQIDAQAB
-----END PUBLIC KEY-----
KVM update complete

רוטציית מפתחות

משתמשים בפקודה edgemicro rotatekey כדי לבצע רוטציה של זוגות המפתחות הציבורי/פרטי ששימשו ליצירת אסימוני ה-JWT שמשמשים לאבטחת OAuth ב-Edge Microgateway.

מידע נוסף זמין במאמר בנושא רוטציה של מפתחות JWT.

שימוש

‫Edge for Public Cloud:

edgemicro rotatekey -o [organization] -e [environment] -k [key] -s [secret]

‫Edge for Private Cloud:

edgemicro private rotatekey -o [organization] -e [environment] -k [key] -s [secret] -r '[hostname]/edgemicro-auth/rotateKey'

פרמטרים

פרמטרים תיאור
-o, --org (חובה) הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env (חובה) סביבה שהגדרתם עבור Edge Microgateway.
-k, --key הערך המרכזי שמוחזר כשמריצים את הפקודה edgemicro configure.
-s, --secret הערך הסודי שמוחזר כשמריצים את הפקודה edgemicro configure.
-p נתיב למפתח פרטי מותאם אישית לשימוש ב-Apigee Edge. (נוסף בגרסה 3.1.6)
-c נתיב לאישור בהתאמה אישית לשימוש ב-Apigee Edge. (נוסף בגרסה 3.1.6)
-n, --nbf

מגדירים את העיכוב בדקות עד שמפתח פרטי חדש ייכנס לתוקף. העיכוב הזה מאפשר לרענן את מופעי המיקרו-שער עם המפתח הציבורי החדש. מומלץ להגדיר את העיכוב כך שיהיה ארוך יותר מהגדרת התצורה config_change_poll_internal, שמוגדרת כברירת מחדל ל-10 דקות. מידע נוסף מופיע במאמר בנושא הגדרת עיכוב מסוג 'לא לפני'. (נוסף בגרסה 3.1.6)

הערה: אם משתמשים באפשרות הזו עם גרסאות של edgemicro-auth שקודמות לגרסה שמופצת עם Edge Microgateway 3.1.6, הדגל מתעלם.

-i, --kid (אופציונלי) מזהה שמשמש להתאמה של מפתח ספציפי. ‫Edge Microgateway משתמש בערך הזה כדי לבחור מתוך קבוצת מפתחות במהלך רוטציית מפתחות. אם לא מציינים את הפרמטר הזה (מומלץ), Edge Microgateway יוצר מפתח שמבוסס על חותמת זמן. מידע נוסף מופיע בקטע 4.5 של מפרט JSON Web Key.
-r, --rotatekeyuri ביצוע רוטציה ל-URI של המפתח.

Edge Public Cloud: אופציונלי.‫
Edge Private Cloud: חובה.

דוגמה לענן ציבורי:

-r 'https://[org]-[env].apigee.net/edgemicro-auth/rotateKey'

דוגמה ל-Edge Private Cloud:

-r '[hostname]/edgemicro-auth/rotateKey'

דוגמה

edgemicro rotatekey -o docs -e test \
-k 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb \
-s 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47

פלט (הצלחה)

אם הפקודה מסתיימת בלי שגיאות, היא תחזיר פלט דומה לזה:

current nodejs version is v12.5.0
current edgemicro version is 3.0.2
password:
Checking if private key exists in the KVM...
Checking for certificate...
Found Certificate
Generating New key/cert pair...
Extract new public key
Key Rotation successfully completed!

אחרי הרוטציה, אפשר לראות בממשק המשתמש של Edge שמפתחות חדשים נוספו ל-KVM של המיקרו-שער.

דוגמה

בדוגמה הזו נעשה שימוש בדגלים -p ו--c כדי לציין את הנתיב לזוג של מפתח פרטי/אישור. באמצעות האפשרויות האלה אפשר להעביר זוג של מפתח פרטי ואישור בהתאמה אישית.

edgemicro rotatekey -o docs -e test \
-k 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb \
-s 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47 \
-p /users/home/keys.pem -c /users/home/cert.cert

מעקב ללא הגבלת זמן

אפשר להשתמש בפקודה edgemicro forever כדי לנהל את התהליך Forever, כלי Node.js שמפעיל מחדש באופן אוטומטי אפליקציית Node.js אם היא מושבתת או אם מתרחשת בה שגיאה. אפשר לעיין גם במאמר בנושא מעקב ללא הגבלת זמן.

שימוש

לפני שמריצים את הפקודה edgemicro forever, צריך להגדיר את משתני הסביבה הבאים:

  • EDGEMICRO_ORG – הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
  • EDGEMICRO_ENV – סביבה שהגדרתם עבור Edge Microgateway.
  • EDGEMICRO_KEY – ערך המפתח שהוחזר כשמריצים את הפקודה edgemicro configure.
  • EDGEMICRO_SECRET – הערך הסודי שהוחזר כשמריצים את הפקודה edgemicro configure.
edgemicro forever -f [forever_file] -a [start|stop]

פרמטרים

פרמטרתיאור
-f, --fileמציין את המיקום של הקובץ forever.json.
-a, --actionstart או stop. ברירת המחדל היא start.

לדוגמה:

כדי להתחיל את Forever:

edgemicro forever -f ~/mydir/forever.json -a start

כדי להפסיק את המינוי ל-Forever:

edgemicro forever -a stop

ביטול מפתחות

משתמשים בפקודה edgemicro revokekeys כדי לבטל את פרטי הכניסה של המפתח והסוד להגדרת Edge Microgateway.

שימוש

edgemicro revokekeys -o [organization] -e [environment] -u [username]
-k [key] -s [secret]

פרמטרים

פרמטרים תיאור
-o, --org (חובה) הארגון ב-Apigee שעבורו הגדרתם את Edge Microgateway.
-e, --env (חובה) סביבה שהגדרתם עבור Edge Microgateway.
-u, --username (חובה) שם המשתמש שלכם ב-Apigee. אתם צריכים להיות אדמינים בארגון שצוין.
-p, --password (אופציונלי) הסיסמה שלכם. אם לא תציינו את הפרמטר הזה בשורת הפקודה, תופיע בקשה להזנה.
-k, --key (חובה) המפתח לביטול.
-s, --secret (חובה) הסוד לביטול.

דוגמאות

edgemicro revokekeys -o myorg -e test -u jdoe@apigee.com
-k 2c0064f5bd85f5573dcaffe21566fa7a2d49885cdbf8899370c8a4479285f -s 4b5d6355b874f7c46838893823e8d929dcb2e42fb9aebcb535089c9b98513

אם הפעולה הושלמה, תוצג ההודעה הבאה:

key 2c0064f5bd85f5573dcaffe21566fa7a2d49885cdbf8899370c8a4479285f revoked successfully