חומרי עזר

הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.

לעיון במסמכי התיעוד של Apigee Edge

ממשק שורת הפקודה (CLI) של apigee-remote-service-cli עוזר לכם להקצות ולנהל את Apigee Adapter ל-Envoy.

פקודות לכריכה

איגוד מקשר בין שירות שנפרס ב-Istio mesh לבין מוצר Apigee API. ה-CLI מאפשר ליצור, להסיר, להציג ולאמת קישורים.

הוספת קישור נתונים

הוספת קישור של יעד שירות מרוחק למוצר API.

Usage

ב-Apigee Hybrid:

apigee-remote-service-cli bindings add [target_name] [product_name] -o [organization] -e [environment] -r [runtime] -t [token]

כאשר:

  • ‫target_name הוא השם של שירות מרוחק שאליו רוצים לקשר את המוצר.
  • ‫product_name הוא שם המוצר שאליו רוצים לקשר את השירות.

דגלים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות לחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL
--legacy מגדירים את הדגל הזה אם משתמשים ב-Apigee Cloud. הוא מגדיר את כתובות ה-URL של הניהול ושל זמן הריצה של Edge Cloud.
--opdk מגדירים את הדגל הזה אם משתמשים ב-Apigee לענן פרטי.
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-p, --password String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) הסיסמה שלכם ב-Apigee. ניתן לציין את הסיסמה בקובץ .netrc, באופן אופציונלי. אם תעשה זאת, אינך נדרש לספק את הסיסמה שלך בשורת הפקודה. מידע נוסף זמין במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net.
-t, --token String (חובה) טוקן גישה.
-u, --username String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל). אפשר גם לציין את שם המשתמש בקובץ .netrc. אם תעשו זאת, לא תצטרכו לציין את שם המשתמש בשורת הפקודה. אפשר לעיין גם במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

./apigee-remote-service-cli bindings add httpbin.org my_product -o $ORG -e $ENV \
-c config.yaml -r $RUNTIME -t $TOKEN
product my_product is now bound to: httpbin.org

הצגת רשימה של קישורים

מפרטים את כל מוצרי ה-API שמקושרים לשירות המרוחק.

Usage

ב-Apigee Hybrid:

apigee-remote-service-cli bindings list -o [organization] -e [environment] -t [token] -r [runtime]

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות לחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL
--legacy מגדירים את הדגל הזה אם משתמשים ב-Apigee Cloud. הוא מגדיר את כתובות ה-URL של הניהול ושל זמן הריצה של Edge Cloud.
--opdk מגדירים את הדגל הזה אם משתמשים ב-Apigee לענן פרטי.
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-p, --password String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) הסיסמה שלכם ב-Apigee. אפשר גם לציין את הסיסמה בקובץ .netrc. אם תעשו את זה, לא תצטרכו להזין את הסיסמה בשורת הפקודה. מידע נוסף זמין במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-t, --token String (חובה) טוקן גישה.
-u, --username String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל). אפשר גם לציין את שם המשתמש בקובץ .netrc. אם תעשו זאת, לא תצטרכו לציין את שם המשתמש בשורת הפקודה. אפשר לעיין גם במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

apigee-remote-service-cli bindings list -o myorg -e test -c config.yaml \
-r $RUNTIME -t $TOKEN
PI Products
============
Bound
-----
envoy-test:
  Quota: 5 requests every 1 minute
  Target bindings:
    httpbin.org
  Paths:
httpbin:
  Quota: 5 requests every 1 minute
  Target bindings:
    httpbin.org
  Paths:
    /httpbin
    /

Unbound
-------
product-1:
  Quota: 100 requests every 1 hour
product-2:
  Quota: 1000 requests every 1 month
product-3:
product-4:

הסרת קישור

הסרת הקישור של Remote Service for Envoy ממוצר API.

Usage

ב-Apigee Hybrid:

apigee-remote-service-cli bindings remove [target_name] [product_name]  -o [organization] -e [environment] -r [runtime] -t [token]

כאשר:

  • ‫target_name הוא השם של שירות מרוחק שרוצים לבטל את הקישור שלו למוצר.
  • ‫product_name הוא שם של מוצר שממנו רוצים לבטל את הקישור של היעד.

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות לחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL
--legacy מגדירים את הדגל הזה אם משתמשים ב-Apigee Cloud. הוא מגדיר את כתובות ה-URL של הניהול ושל זמן הריצה של Edge Cloud.
--opdk מגדירים את הדגל הזה אם משתמשים ב-Apigee לענן פרטי.
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-p, --password String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) הסיסמה שלכם ב-Apigee. אפשר גם לציין את הסיסמה בקובץ .netrc. אם תעשו את זה, לא תצטרכו להזין את הסיסמה בשורת הפקודה. מידע נוסף זמין במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-t, --token String (חובה) טוקן גישה.
-u, --username String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל). אפשר גם לציין את שם המשתמש בקובץ .netrc. אם תעשו זאת, לא תצטרכו לציין את שם המשתמש בשורת הפקודה. אפשר לעיין גם במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

./apigee-remote-service-cli bindings remove httpbin.org my_product -o $ORG -e $ENV \
-c config.yaml -r $RUNTIME -t $TOKEN
product envoy-test is no longer bound to: httpbin.org

אימות קישור

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

Usage

ב-Apigee Hybrid:

apigee-remote-service-cli bindings verify [product_name]  -o [organization] -e [environment] -r [runtime] -t [token]

השדה 'איפה' product_name הוא אופציונלי. אם לא מציינים שם מוצר, כל המוצרים המקושרים נבדקים.

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות לחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL
--legacy מגדירים את הדגל הזה אם משתמשים ב-Apigee Cloud. הוא מגדיר את כתובות ה-URL של הניהול ושל זמן הריצה של Edge Cloud.
--opdk מגדירים את הדגל הזה אם משתמשים ב-Apigee לענן פרטי.
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-t, --token String (חובה) טוקן גישה.
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

/apigee-remote-service-cli bindings verify my_product -o $ORG -e $ENV \
-c config.yaml -r $RUNTIME -t $TOKEN

Verifying apps associated with product my-product:
  app my-app associated with product my-product is verified

פקודת עזרה

יש עזרה אונליין לכל הפקודות של apigee-remote-service-cli. פשוט מקלידים:

apigee-remote-service-cli help

כדי לקבל עזרה לגבי פקודה כלשהי, מקלידים:

apigee-remote-service-cli [command] help

לדוגמה:

apigee-remote-service-cli provision help

פקודת הקצאה

הפקודה apigee-remote-service-cli provision מתקינה שרת proxy בארגון Apigee, מגדירה אישור ויוצרת פרטי כניסה שתצטרכו כדי להגדיר את Apigee Adapter ל-Envoy.

Usage

ב-Apigee Hybrid:

apigee-remote-service-cli provision  -o $ORG -e $ENV -r $RUNTIME -t $TOKEN

פרמטרים

פרמטרים סוג תיאור
--analytics-sa String משתמשים בדגל הזה כדי לציין את הנתיב לקובץ המפתח של חשבון שירות ב-Google Cloud, שבו לחשבון השירות יש את התפקיד Apigee Analytics Agent. ה-SA משמש את המתאם להעלאה ישירה של נתוני ניתוח ל-Apigee. אם אתם משתמשים ב-Apigee hybrid, האפשרות הזו מאפשרת לכם להתקין את זמן הריצה של hybrid באשכול אחד ואת המתאם באשכול אחר. הדגל הזה זמין רק בהתקנות של Apigee Hybrid ו-Apigee ב-Google Cloud.
-c, --config String הנתיב לקובץ ההגדרות של Apigee Remote Service. אפשר לעיין גם במאמר בנושא שימוש באפשרות --config.
-e, --environment String (חובה) סביבה בארגון.
-f, --force-proxy-install (אופציונלי) מאלץ התקנה מחדש של שרת ה-proxy של remote-service אם הוא כבר מותקן בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
-k, --key String מציין את המפתח שמוחזר מהפקודה apigee-remote-service-cli provision.
--legacy ‫Apigee Edge (הגדרת כתובת URL לניהול ולזמן ריצה)
-m, --management String (נדרש אם אתם משתמשים ב-Apigee Private Cloud) כתובת ה-URL הבסיסית של ניהול Apigee. ברירת מחדל: https://api.enterprise.apigee.com
-n, --namespace String הגדרת הפליטה כ-Envoy ConfigMap במרחב השמות שצוין. ברירת מחדל: apigee
--opdk String מגדירים את הדגל הזה אם משתמשים ב-Apigee לענן פרטי.
-o, --organization String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-p, --password String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) הסיסמה שלכם ב-Apigee. אפשר גם לציין את הסיסמה בקובץ .netrc. אם תעשו את זה, לא תצטרכו להזין את הסיסמה בשורת הפקודה. מידע נוסף זמין במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
--rotate-int int אם n > 0, יוצרים מפתח פרטי חדש ושומרים n מפתחות ציבוריים (רק בהצפנה היברידית)
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-s, --secret String מציינים את הסוד שמוחזר מהפקודה apigee-remote-service-cli provision.
--strength int (אופציונלי) מציינים את עוצמת ההצפנה לאישורי SSL שמשמשים להקצאת המתאם. ברירת מחדל 2048
-t, --token String טוקן Apigee OAuth או SAML.
-u, --username String (נדרש רק לאימות בסיסי – לא זמין לשימוש היברידי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל). אפשר גם לציין את שם המשתמש בקובץ .netrc. אפשר לעיין גם במאמר בנושא שימוש ב-‎ .netrc לפרטי כניסה.
-v, --verbose (אופציונלי) יוצר פלט מפורט.
--virtual-hosts String המדיניות הזו מבטלת את המארחים הווירטואליים שמוגדרים כברירת מחדל.
--years int (אופציונלי) מספר השנים לפני פקיעת התוקף של אישור ה-SSL שמשמש להקצאת הרשאות. ברירת מחדל: 1

דוגמה

חשוב לשמור את הפלט של הפקודה provision בקובץ, שמשמש כקלט לפעולות אחרות של Apigee Adapter ל-Envoy.

דוגמה ל-Apigee Hybrid:

apigee-remote-service-cli provision --organization $ORG --environment $ENV --runtime $RUNTIME \
--namespace $NAMESPACE --token $TOKEN > config.yaml

הפקודה Samples

יוצר קובצי תצורה לדוגמה לפריסות של Envoy או Istio.

Usage

apigee-remote-service-cli samples create [flags]

תיאור

הפקודה דורשת קובץ config.yaml תקין שנוצר באמצעות הקצאת הרשאות. כברירת מחדל, קובצי הדוגמה מועברים לספרייה בשם ./samples. הפקודה יוצרת את הספרייה הזו בשבילכם.

אם משתמשים ב-Envoy מקורי, הפקודה מקבלת את מארח שירות היעד ואת השם הרצוי לאשכול שלו. היא גם מגדירה חיבור SSL מותאם אישית מ-Envoy proxy לאשכול של שירות מרוחק אם מספקים תיקייה שמכילה את tls.key ו-tls.crt דרך --tls.

אם אתם משתמשים ב-Istio, שבו שרת ה-Proxy של Envoy פועל כ-sidecar, אם היעד לא צוין, ייווצר httpbin לדוגמה. אחרת, אתם אחראים להכנת קובצי תצורה שקשורים לפריסה של שירותי היעד.

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-f, --force לכפות החלפה של הספרייה הקיימת.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--host המארח של שירות היעד (ברירת המחדל היא httpbin.org)
-n, --name שם שירות היעד (ברירת המחדל היא httpbin)
--out הספרייה שבה ייצרו קובצי ההגדרות לדוגמה. ברירת מחדל: ./samples
-t, --template

שם התבנית. אם אתם מבצעים פריסה של Istio (היברידית בלבד), בוחרים באחת מהאפשרויות הזמינות של Istio. משתמשים באפשרות המקורית להטמעות מקוריות של Envoy. האפשרויות הזמינות הן:

  • istio-1.6 (ברירת מחדל)
  • istio-1.7
  • native
--tls הספרייה שבה יישמרו קובצי המפתח וה-crt של TLS.

דוגמה

apigee-remote-service-cli samples create -c ./config.yaml

פקודות טוקן

אתם יכולים להשתמש באסימון JWT כדי לבצע קריאות מאומתות ל-proxy ל-API במקום להשתמש במפתח API. פקודות האסימון מאפשרות ליצור, לבדוק ולשנות אסימוני JWT למטרה הזו.

יצירת טוקן JWT

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

Usage

ב-Apigee Hybrid:
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות להשתמש בחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL.
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

./apigee-remote-service-cli token create -o $ORG -e $ENV -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 \
-s icTARgaKHqvUH1dq -c config.yaml -r $RUNTIME -t $TOKEN

תשובה

אם הפעולה תצליח, יוצג אסימון JST שדומה לזה:
eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q

בדיקת טוקן JWT

אפשר לבדוק אסימון JWT באמצעות הפקודה הזו. אפשר לעיין גם במאמר בדיקת אסימון.

Usage

ב-Apigee Hybrid:
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות להשתמש בחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL.
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

apigee-remote-service-cli token inspect -c config.yaml <<< $TOKEN

תשובה

אם הפעולה תצליח, יוצג פלט דומה לזה:
{
	"aud": [
		"remote-service-client"
	],
	"exp": 1591741549,
	"iat": 1591740649,
	"iss": "https://apigee-docs-test.apigee.net/remote-service/token",
	"jti": "99325d2e-6440-4278-9f7f-b252a1a79e53",
	"nbf": 1591740649,
	"access_token": "VfzpXzBGAQ07po0bPMKY4JgQjus",
	"api_product_list": [
		"httpbin"
	],
	"application_name": "httpbin",
	"client_id": "GYDGHy5TRpV8AejXCOlreP7dPVepA8H",
	"developer_email": "user@example.com",
	"scope": ""
}
verifying...
token ok.

ביצוע רוטציה של טוקן JWT

בשלב מסוים אחרי שיוצרים JWT, יכול להיות שתצטרכו לשנות את זוג המפתחות הציבוריים/הפרטיים שמאוחסן על ידי Apigee במפת מפתח/ערך (KVM) המוצפנת שלו. התהליך הזה של יצירת זוג מפתחות חדש נקרא רוטציית מפתחות. כשמבצעים רוטציה של מפתחות, נוצר זוג חדש של מפתחות פרטיים/ציבוריים והוא מאוחסן ב-KVM ‏(Key-Value Map) ‏istio בארגון או בסביבה שלכם ב-Apigee. בנוסף, המפתח הציבורי הישן נשמר יחד עם ערך מזהה המפתח המקורי שלו.

Usage

‫Apigee Hybrid

apigee-remote-service-cli token rotate-cert -o [organization] -e [environment] -t [token] -r [runtime] -k [provision_key] -s [provision_secret] --kid [new_key_id]

פרמטרים

פרמטרים סוג תיאור
-c, --config String (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service.
הערה: הדגל הזה מאפשר להשמיט את רוב הפרמטרים האחרים של הפקודה, כי ה-CLI יכול לשלוף אותם ישירות מקובץ ההגדרות. --config
-e, --env String (חובה) סביבה בארגון.
-h, --help הצגת עזרה לגבי פרמטרים של פקודות.
--insecure אפשרות לחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL
--truncate int מספר האישורים לשמירה ב-jwks (ברירת מחדל היא 2)
-o, --org String (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון.
-r, --runtime String כתובת URL שכוללת את hostAlias של מארח וירטואלי שהוגדר בהגדרה ההיברידית. כתובת ה-URL חייבת להתחיל ב-https://. לדוגמה: https://apitest.apigee-hybrid-docs.net
-v, --verbose (אופציונלי) יוצר פלט מפורט.

דוגמה

./apigee-remote-service-cli token create -o $ORG -e $ENV -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 \
-s icTARgaKHqvUH1dq -c config.yaml -r $RUNTIME -t $TOKEN

תשובה

certificate successfully rotated

שימוש בקובץ ‎ .netrc לפרטי כניסה

‫apigee-remote-service-cli מאתר באופן אוטומטי את username ואת password (לאימות בסיסי כשצריך) מקובץ .netrc בספריית הבית, אם אתם משתמשים ב-Edge Public Cloud ויש לכם רשומה למכונה api.enterprise.apigee.com. אם אתם משתמשים ב-Apigee Private Cloud, הערך של המכונה זהה לכתובת ה-URL של management (לדוגמה: http://192.162.55.100). לדוגמה ב-Edge Public Cloud:
‫
machine api.enterprise.apigee.com
login jdoe@google.com
password abc123
לדוגמה ב-Edge Private Cloud:
machine http://192.162.55.100
login jdoe@google.com
password abc123

פקודת גרסה

מדפיסים את גרסת ה-CLI.

apigee-remote-service-cli version

שימוש באפשרות הפקודה --config

האפשרות --config מציינת את המיקום של קובץ התצורה שנוצר על ידי הפקודה provision. יתרון חשוב של האפשרות הזו הוא שאפשר לדלג על רוב הפרמטרים האחרים של הפקודה, כי ה-CLI שולף אותם מקובץ ההגדרות. האפשרויות כוללות:
  • ארגון
  • environment
  • סביבת זמן ריצה
  • ניהול
  • לא מאובטח
  • מרחב שמות
  • מדור קודם
  • opdk

לדוגמה, אפשר להריץ את הפקודה provision כך:

apigee-remote-service-cli provision --config='old-config.yaml' > new-config.yaml

קובץ תצורה

בקטע הזה מוצגת דוגמה לקובץ הגדרות עם כל האפשרויות הזמינות.

global:
  temp_dir: /tmp/apigee-istio
  keep_alive_max_connection_age: 10m
  api_address: :5000
  metrics_address: :5001
  tls:
    cert_file: tls.crt
    key_file: tls.key
tenant:
  internal_api: https://istioservices.apigee.net/edgemicro
  remote_service_api: https://org-test.apigee.net/remote-service
  org_name: org
  env_name: env
  key: mykey
  secret: mysecret
  client_timeout: 30s
  allow_unverified_ssl_cert: false
products:
  refresh_rate: 2m
analytics:
  legacy_endpoint: false
  file_limit: 1024
  send_channel_size: 10
  collection_interval: 10s
  fluentd_endpoint: apigee-udca-myorg-test.apigee.svc.cluster.local:20001
  tls:
    ca_file: /opt/apigee/tls/ca.crt
    cert_file: /opt/apigee/tls/tls.crt
    key_file: /opt/apigee/tls/tls.key
    allow_unverified_ssl_cert: false
auth:
  api_key_claim: claim
  api_key_cache_duration: 30m
  api_key_header: x-api-key
  api_target_header: :authority
  reject_unauthorized: true
  jwks_poll_interval: 0s