שימוש ב-acurl

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

כלי השירות acurl(1) מספק עטיפה נוחה סביב פקודה רגילה של curl. acurl:

  • החלפת פרטי הכניסה של Apigee באסימון גישה מסוג OAuth2.
  • מזהה מתי פג התוקף של אסימון גישה, ומשתמש באסימון הרענון כדי לקבל אסימון גישה חדש.
  • הטוקן מועבר בכותרת Authorization של בקשת ה-API.

משתמשים באסימוני גישה כדי לקרוא לנקודות קצה של Edge API עם OAuth2, כולל תהליכי עבודה של LDAP ו-SAML.

אם אתם משתמשים ב-OAuth2 כדי לגשת ל-Edge API, אבל לא משתמשים ב-acurl, אתם צריכים לקבל אסימון גישה ולהוסיף אותו בעצמכם לכותרת של בקשת ה-API. אחת הדרכים לקבל אסימון גישה היא באמצעות כלי השירות get_token.

התקנת acurl

כדי להשתמש ב-acurl, צריך להתקין אותו.

תחביר acurl

כלי השירות acurl משתמש בתחביר הבא:

acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]

או

acurl API_URL -p PASSCODE

כאשר:

אפשרות חובה? תיאור
API_URL חובה נקודת קצה ל-API של Apigee Edge. רשימה מלאה של נקודות הקצה מופיעה במאמר Apigee Edge API Reference.
USERNAME אופציונלי. נדרש שם משתמש וסיסמה או קוד גישה. שם המשתמש שלכם ב-Apigee, שהוא בדרך כלל כתובת האימייל שמשויכת לחשבון שלכם ב-Apigee. בפעם הראשונה שמתקשרים אל get_token, צריך להזין את שם המשתמש או קוד אימות. לא תצטרכו להעביר שוב את כתובת האימייל עד שתוקף האסימונים של הגישה והרענון יפוג. אם אתם שומרים במטמון טוקנים של יותר ממשתמש אחד, אתם צריכים לציין את שם המשתמש בכל קריאה.
PASSWORD אופציונלי. נדרש שם משתמש וסיסמה או קוד גישה. הסיסמה לחשבון Apigee. אם לא תזינו את הסיסמה, תתבקשו להזין אותה בפעם הראשונה שתשתמשו ב-acurl ובכל שיחה שלאחר מכן ללא טוקן רענון תקין. אם אתם לא רוצים להשתמש בסיסמה שלכם ישירות בפקודה, אתם יכולים להשתמש בקוד גישה חד-פעמי במקום בסיסמה.
MFACODE אופציונלי קוד זמני בן 6 ספרות של אימות רב-שלבי (MFA). הקוד הזה נדרש אם אתם משתמשים ב--u והפעלתם אימות דו-שלבי. אם לא תזינו את הסיסמה, תופיע בקשה להזין אותה (אלא אם המכשיר במצב קוד גישה). אם לא הפעלתם אימות דו-שלבי או אם יש לכם תהליך מבוסס-סקריפט, אתם יכולים לציין -m "" כדי להימנע מהנחיות.
PASSCODE אופציונלי. נדרש שם משתמש וסיסמה או קוד גישה. קוד אימות חד-פעמי שאפשר להשתמש בו במקום בסיסמה. כשמבצעים אימות באמצעות ספק זהויות SAML, נדרש קוד גישה. אפשר להשתמש בקוד גישה גם כדי לבצע אימות באמצעות ספק זהויות LDAP.

לדוגמה:

acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com -p 424242
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd -m 123456

בנוסף לאפשרויות שמוצגות למעלה, acurl מקבל את כל האפשרויות של curl. לדוגמה, אפשר להעביר כותרות, לציין את פועל ה-HTTP, להוסיף גוף ולאפשר את רמת הפירוט באמצעות אפשרויות curl רגילות:

אפשרות acurl meaning curl meaning
‎-u username username
‎-m MFA code max time (חובה להשתמש בגרסה ארוכה --max-time)
‎-p passcode proxy tunnel (חובה להשתמש בגרסה ארוכה --proxytunnel)
‎-v verbose verbose
‎-h help help (חובה להשתמש בגרסה ארוכה --help)
acurl -v -X POST -H 'Content-Type: application/json' \
    https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apiproducts/myproduct/attributes/attr \
    -u ahamilton@apigee.com -d '{"value":42}'

קריאה מוצלחת ל-API‏ acurl מחזירה תוצאות על סמך נקודת הקצה של Edge API שאליה בוצעה הקריאה. בנוסף, acurl מאחסן את אסימוני הגישה והרענון ב-~/.sso-cli.

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

העברה מ-curl

אם אתם משתמשים ב-curl, קל מאוד לעבור לכלי acurl, ולא תצטרכו לקודד את פרטי הכניסה באופן ידני. אחרי שמורידים ומתקינים את כלי השירות, אפשר לבצע את הפעולות הבאות: להחליף:

curl -u username
עם:
acurl -u username

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

אפשר להשתמש בכלי acurl גם כדי להחליף את curl עבור משתמשי מכונה. מידע נוסף זמין במאמרים OAuth2 for machine users ו-Machine users in SAML zones.

התקשרות ל-acurl בפעם הראשונה

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

בדוגמה הבאה מוצגת קריאה ראשונית עם acurl כדי לקבל פרטים על ארגון באמצעות נקודת הקצה Get organization:

acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \
  -u ahamilton@apigee.com
Enter the password for user 'ahamilton@apigee.com':
[hidden input]
Enter the six-digit code (no spaces) if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:
1a2b3c
{
  "createdAt" : 1491854501264,
  "createdBy" : "noreply_iops@apigee.com",
  "displayName" : "ahamilton",
  "environments" : [ "prod", "test" ],
  "lastModifiedAt" : 1491854501264,
  "lastModifiedBy" : "noreply_iops@apigee.com",
  "name" : "ahamilton",
  "properties" : {
    "property" : [ {
      "name" : "features.isSmbOrganization",
      "value" : "false"
    }, {
      "name" : "features.isCpsEnabled",
      "value" : "true"
    } ]
  },
  "type" : "trial"
}

כלי השירות acurl מקבל טוקן גישה ומוסיף אותו לקריאה לנקודת קצה ל-API של Edge:

curl -H "Authorization: Bearer oauth2_access_token" ...

טוקן הגישה מאוחסן באופן מקומי ב-~/.sso-cli ומשמש לקריאות הבאות.

אחרי שפג התוקף של אסימון הגישה, acurl משתמש אוטומטית באסימון הרענון כדי לקבל אסימון גישה חדש. כשתוקף אסימון הרענון יפוג, acurl יבקש מכם את פרטי הכניסה שלכם ל-Apigee.

הבקשה הזו מקבלת פרטים על הארגון ahamilton-eval. רשימה מלאה של נקודות הקצה של Edge API מופיעה במאמר Apigee Edge API Reference.


(1) זכויות יוצרים © 2023 Google LLC
הכלי acurl זמין כ'תוכנה' בהתאם להסכם שחל על השימוש שלכם ב-Google Cloud Platform, כולל התנאים הספציפיים לשירות שזמינים בכתובת https://cloud.google.com/terms/service-terms.