הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
ממשק שורת הפקודה (CLI) של apigee-remote-service-cli עוזר לכם להקצות ולנהל את Apigee Adapter ל-Envoy.
פקודות לכריכה
איגוד מקשר בין שירות שנפרס ב-Istio mesh לבין מוצר Apigee API. ה-CLI מאפשר ליצור, להסיר ולהציג ברשימה את הקישורים.
הערה: בממשק המשתמש של 'יצירת מוצר', אפשר לציין שירות אחד או יותר שקשורים למוצר. הפעולה הזו שקולה ליצירת הקישור באמצעות ה-CLI.הוספת קישור נתונים
הוספת קישור של יעד מרוחק למוצר API.
Usage
ב-Apigee Hybrid:
apigee-remote-service-cli bindings add [service_name] [product_name] -o [organization] -e [environment] -t [token]
פרמטרים
| פרמטרים | סוג | תיאור |
|---|---|---|
-c, --config
|
String | (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service. טיפ: כשמציינים את האפשרות הזו, אפשר להשמיט את רוב הפרמטרים האחרים של הפקודה.
--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 הבסיסית של זמן הריצה של Apigee (נדרשת ל-Hybrid או ל-OPDK). |
-t, --token
|
String | (נדרש רק לאימות אסימוני OAuth) אסימון OAuth או SAML שיוצרים מפרטי החשבון ב-Apigee. למידע על יצירת אסימונים, ראו קבלת אסימון גישה מסוג OAuth 2.0 וסקירה כללית על SAML. |
-u, --username
|
String | (נדרש רק לאימות בסיסי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל).
אפשר גם לציין את שם המשתמש בקובץ .netrc. אם תעשו זאת, לא תצטרכו לציין את שם המשתמש בשורת הפקודה. אפשר לעיין גם במאמר בנושא שימוש ב- .netrc לפרטי כניסה.
|
-v, --verbose
|
(אופציונלי) יוצר פלט מפורט. |
דוגמה
./apigee-remote-service-cli bindings add httpbin.org envoy-test -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx product envoy-test is now bound to: httpbin.org
הצגת רשימה של קישורים
מפרטים את כל מוצרי ה-API שמקושרים לשירות המרוחק.
Usage
פרמטרים
| פרמטרים | סוג | תיאור |
|---|---|---|
-c, --config
|
String | (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service. טיפ: כשמציינים את האפשרות הזו, אפשר להשמיט את רוב הפרמטרים האחרים של הפקודה.
--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 הבסיסית של זמן הריצה של Apigee (נדרשת ל-Hybrid או ל-OPDK). |
-t, --token
|
String | (נדרש רק לאימות אסימוני OAuth) אסימון OAuth או SAML שיוצרים מפרטי החשבון ב-Apigee. למידע על יצירת אסימונים, ראו קבלת אסימון גישה מסוג OAuth 2.0 וסקירה כללית על SAML. |
-u, --username
|
String | (נדרש רק לאימות בסיסי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל).
אפשר גם לציין את שם המשתמש בקובץ .netrc. אם תעשו זאת, לא תצטרכו לציין את שם המשתמש בשורת הפקודה. אפשר לעיין גם במאמר בנושא שימוש ב- .netrc לפרטי כניסה.
|
-v, --verbose
|
(אופציונלי) יוצר פלט מפורט. |
דוגמה
apigee-remote-service-cli bindings list -o myorg -e test -u user@example.com -c config.yaml -p abc123
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.
הערה: אפשר גם להסיר שירות מרוחק עבור קישור Envoy על ידי הסרת שם השירות מהמוצר בממשק המשתמש.Usage
ב-Apigee Hybrid:
apigee-remote-service-cli bindings remove [service_name] [product_name] -o [organization] -e [environment] -t [token]
פרמטרים
| פרמטרים | סוג | תיאור |
|---|---|---|
-c, --config
|
String | (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service. טיפ: כשמציינים את האפשרות הזו, אפשר להשמיט את רוב הפרמטרים האחרים של הפקודה.
--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 הבסיסית של זמן הריצה של Apigee (נדרשת ל-Hybrid או ל-OPDK). |
-t, --token
|
String | (נדרש רק לאימות אסימון OAuth) אסימון OAuth או SAML שיוצרים מפרטי החשבון ב-Apigee. מידע על יצירת אסימונים זמין במאמרים קבלת אסימון גישה מסוג OAuth 2.0 וסקירה כללית על SAML. |
-u, --username
|
String | (נדרש רק לאימות בסיסי) שם המשתמש שלכם ב-Apigee (בדרך כלל כתובת אימייל).
אפשר גם לציין את שם המשתמש בקובץ .netrc. אם תעשו זאת, לא תצטרכו לציין את שם המשתמש בשורת הפקודה. אפשר לעיין גם במאמר בנושא שימוש ב- .netrc לפרטי כניסה.
|
-v, --verbose
|
(אופציונלי) יוצר פלט מפורט. |
דוגמה
./apigee-remote-service-cli bindings remove httpbin.org envoy-test -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx product envoy-test is no longer bound to: httpbin.org
פקודת עזרה
יש עזרה אונליין לכל הפקודות של 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
פרמטרים
| פרמטרים | סוג | תיאור |
|---|---|---|
-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 במרחב השמות שצוין. |
--opdk
|
String | Apigee OPDK. |
-o, --organization
|
String | (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון. |
-p, --password
|
String | (נדרש רק לאימות בסיסי) הסיסמה שלכם ב-Apigee. אפשר גם לציין את הסיסמה בקובץ .netrc. אם תעשו את זה, לא תצטרכו להזין את הסיסמה בשורת הפקודה. מידע נוסף זמין במאמר בנושא שימוש ב- .netrc לפרטי כניסה.
|
--rotate-int
|
int | אם n > 0, יוצרים מפתח פרטי חדש ושומרים n מפתחות ציבוריים (רק בהצפנה היברידית) |
-r, --runtime
|
String | כתובת ה-URL הבסיסית של זמן הריצה של Apigee (נדרשת ל-Hybrid או ל-OPDK) |
-s, --secret
|
String | מציינים את הסוד שמוחזר מהפקודה apigee-remote-service-cli provision.
|
--strength
|
int | (אופציונלי) מציינים את עוצמת ההצפנה לאישורי SSL שמשמשים להקצאת המתאם. ברירת מחדל 2048 |
-t, --token
|
String | (Hybrid בלבד) טוקן 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
פקודות טוקן
אתם יכולים להשתמש באסימון 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. טיפ: כשמציינים את האפשרות הזו, אפשר להשמיט את רוב הפרמטרים האחרים של הפקודה.
--config
|
-e, --env
|
String | (חובה) סביבה בארגון. |
-h, --help
|
הצגת עזרה לגבי פרמטרים של פקודות. | |
--insecure
|
אפשרות להשתמש בחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL. | |
-o, --org
|
String | (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון. |
-r, --runtime
|
String | כתובת URL בסיסית של זמן הריצה של Apigee (נדרשת רק ל-Hybrid או ל-OPDK). |
-v, --verbose
|
(אופציונלי) יוצר פלט מפורט. |
דוגמה
apigee-remote-service-cli token create -o myorg -e test -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 -s icTARgaKHqvUH1dq -c config.yaml
תשובה
אם הפעולה תצליח, יוצג אסימון 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. טיפ: כשמציינים את האפשרות הזו, אפשר להשמיט את רוב הפרמטרים האחרים של הפקודה.
--config
|
-e, --env
|
String | (חובה) סביבה בארגון. |
-h, --help
|
הצגת עזרה לגבי פרמטרים של פקודות. | |
--insecure
|
אפשרות להשתמש בחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL. | |
-o, --org
|
String | (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון. |
-r, --runtime
|
String | כתובת URL בסיסית של זמן הריצה של Apigee (נדרשת רק ל-Hybrid או ל-OPDK). |
-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
פרמטרים
| פרמטרים | סוג | תיאור |
|---|---|---|
-c, --config
|
String | (חובה) הנתיב לקובץ ההגדרות של Apigee Remote Service. טיפ: כשמציינים את האפשרות הזו, אפשר להשמיט את רוב הפרמטרים האחרים של הפקודה.
--config
|
-e, --env
|
String | (חובה) סביבה בארגון. |
-h, --help
|
הצגת עזרה לגבי פרמטרים של פקודות. | |
--insecure
|
אפשרות לחיבורים לא מאובטחים לשרת כשמשתמשים ב-SSL | |
--truncate
|
int | מספר האישורים לשמירה ב-jwks (ברירת מחדל היא 2) |
-o, --org
|
String | (חובה) ארגון Apigee. צריך להיות לכם תפקיד אדמין בארגון. |
-r, --runtime
|
String | כתובת ה-URL הבסיסית של זמן הריצה של Apigee (נדרשת ל-Hybrid או ל-OPDK). |
-v, --verbose
|
(אופציונלי) יוצר פלט מפורט. |
דוגמה
apigee-remote-service-cli token rotate-cert -c config.yaml -o myorg -e test -k 2e238ffa15dc5ab6a1e97868e7581f6c60ddb8575478582c256d8b7e5b2677a8 -s 51058077223fa7b683c3bea845c5cca138340d1d5583922b6d465f9f918a4b08
תשובה
certificate successfully rotated
שימוש בקובץ .netrc לפרטי כניסה
apigee-remote-service-cli מאחזר באופן אוטומטי את username ואת password (לאימות בסיסי כשצריך) מקובץ .netrc בספריית הבית, אם אתם משתמשים ב-Apigee ויש לכם רשומה למכונה api.enterprise.apigee.com. אם אתם משתמשים ב-Apigee Private Cloud, הערך של המכונה זהה לכתובת ה-URL של management (לדוגמה:
http://192.162.55.100).
פקודת גרסה
מדפיסים את גרסת ה-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