הגדרת מארחים וירטואליים בענן

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

לקוחות Cloud עם חשבון בתשלום יכולים ליצור מארח וירטואלי בארגון.

מידע נוסף:

מי יכול ליצור ולשנות מארחים וירטואליים בענן

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

לדוגמה, לקוחות משלמים יכולים:

  • הפעלת TLS חד-כיווני ודו-כיווני
  • צריך לציין את מאגר המפתחות/מאגר המהימנות שבו המארח הווירטואלי משתמש

בחשבונות בחינם ובחשבונות לתקופת ניסיון לא ניתן ליצור או לשנות מארחים וירטואליים, והם מוגבלים למארחים הווירטואליים שנוצרו עבורם בזמן הרישום ל-Edge. מידע נוסף על תוכניות התמחור והתשלומים של Edge זמין בכתובת https://apigee.com/api-management/#/pricing.

הדרישות להגדרת מארח וירטואלי בענן

הטבלה הבאה מסכמת את הדרישות ליצירת מארח וירטואלי:

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

אתם מוגבלים ל-20 מארחים וירטואליים לכל ארגון או סביבה בענן.

הערה: אין הגבלה על מספר המארחים הווירטואליים בענן הפרטי.

ברוב הארגונים או הסביבות, שני מארחים וירטואליים: אחד ל-HTTP ואחד לגישת HTTPS. יכול להיות שתצטרכו מארחים וירטואליים נוספים אם הארגון או הסביבה שלכם מאפשרים גישה באמצעות שמות דומיינים שונים.

כתובת אתר הבסיס כוללת את הפרוטוקול כשמגדירים את כתובת ה-URL הבסיסית למארח הווירטואלי בממשק המשתמש או דרך ה-API, צריך לציין את הפרוטוקול (כלומר http:// או https:// ) כחלק מכתובת ה-URL.
נמל 443

אפשר ליצור מארח וירטואלי רק ביציאה 443.

חשוב לזכור שאפשר ליצור כמה מארחים וירטואליים ביציאה 443, כל עוד יש להם כינויי מארח ייחודיים וכולם תומכים ב-TLS.

TLS חובה

אפשר ליצור רק מארח וירטואלי שתומך ב-TLS ב-HTTPS. צריך להיות לכם כבר מאגר מפתחות שמכיל את האישור והמפתח ל-TLS (אפשר גם להשתמש ב-Truststore).

יש צורך באישור חתום על ידי ישות מהימנה, כמו Symantec או VeriSign. לא ניתן להשתמש באישור בחתימה עצמית.

אם אתם צריכים גישת HTTP, פנו אל התמיכה של Apigee Edge.

פרוטוקול TLS TLS 1.2

Edge בענן תומך ב-TLS בגרסה 1.2 בלבד.

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

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

ספציפית, Edge בודק את הפרטים הבאים באישור:

  • CN - שם נפוץ
  • SAN - שם חלופי לנושא

אפשר להשתמש בתווים כלליים לחיפוש ב-SAN או ב-CN, לדוגמה: *.myco.net.

Edge גם מאמת שתוקף האישור לא פג.

תמיכת SNI של אפליקציות לקוח כל אפליקציות הלקוח שניגשים למארח הווירטואלי חייבות לתמוך ב-SNI.

נדרשת תמיכה ב-SNI לכל האפליקציות.

יצירת מארח וירטואלי באמצעות דפדפן

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

כדי ליצור מארח וירטואלי באמצעות ממשק המשתמש של Edge:

  1. נכנסים לאתר apigee.com/edge.
  2. בוחרים באפשרות ניהול > מארחים וירטואליים.
  3. בוחרים סביבה, למשל prod או test.
  4. כדי ליצור מארח וירטואלי, בוחרים באפשרות + מארח וירטואלי, או בוחרים בשם של מארח וירטואלי קיים כדי לערוך אותו.
  5. אפשר לעיין בטבלה שלמעלה כדי לקבל מידע מפורט על אכלוס שדות המארח הווירטואלי.

הגדרת מארח וירטואלי ל-TLS חד-כיווני

אובייקט XML שמגדיר את המארח הווירטואלי. לדוגמה, אובייקט ה-XML הבא מגדיר מארח וירטואלי ל-TLS חד-כיווני:

<VirtualHost name="myTLSVHost"> 
    <HostAliases> 
        <HostAlias>api.myCompany.com</HostAlias> 
    </HostAliases> 
    <Port>443</Port> 
    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>false</ClientAuthEnabled> 
        <KeyStore>ref://myTestKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
    </SSLInfo>
</VirtualHost>

בהגדרה הזו:

  • מציינים את השם בתור myTLSVHost. אפשר להשתמש בשם כדי להפנות למארח הווירטואלי בשרת proxy ל-API או בקריאה ל-API.
  • מציינים את כינוי המארח בתור api.myCompany.com. זהו הדומיין הפונה לציבור המשמש לגישה לממשקי ה-API, כפי שמוגדר על ידי הגדרת DNS ורשומת CNAME.
  • מציינים את מספר היציאה כך: 443. אם פרט זה יושמט, היציאה מוגדרת כברירת מחדל ל-443.
  • הפעלת TLS לפי הצורך.

    האלמנט <Enable> מוגדר כ-True כדי להפעיל TLS חד-כיווני, והרכיבים <KeyStore> מציינים את מאגר המפתחות ואת כינוי המפתח המשמש חיבור ה-TLS.

    כדי להפעיל TLS דו-כיווני, צריך להגדיר את <ClientAuthEnabled> כ-true ולציין Truststore באמצעות הרכיב <TrustStore>. ה-Truststore מכיל את מנפיק האישור של הלקוח ואת שרשרת ה-CA של האישור, שנדרש.

    הערה: מכיוון ש-Edge תמך במקור ב-SSL, התג שבו אתם משתמשים כדי להגדיר TLS נקרא <SSLInfo>.

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

החלטה איך לציין את שם מאגר המפתחות ואת שם ה-Truststore במארח הווירטואלי

כשמגדירים מארח וירטואלי לתמיכה ב-TLS, צריך לציין מאגר מפתחות באמצעות קובץ עזר. הפניה היא משתנה שמכיל את השם של מאגר המפתחות או ה-Truststore, ולא לציין ישירות את השם של מאגר המפתחות או ה-Truststore, כפי שמוצג בהמשך:

    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>false</ClientAuthEnabled> 
        <KeyStore>ref://myTestKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
    </SSLInfo>

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

אפשר להשתמש רק בהפניה ל-Keystore ול-Truststore. אי אפשר להשתמש בהפניה לכינוי. כשמשנים את ההפניה למאגר מפתחות, צריך לוודא שהשם החלופי של האישור זהה לשם בחנות המפתחות הקודמת.

הגבלות על השימוש בהפניות ל-Keystores ול-Truststore

כשמשתמשים בהפניות ל-Keystores ול-Truststores, צריך להביא בחשבון את ההגבלה הבאה:

  • אפשר להשתמש בהפניות של מאגר מפתחות ו-Truststore במארחים וירטואליים רק אם יש תמיכה ב-SNI והפסקת SSL ב-Apigee Routers.
  • אם יש מאזן עומסים מול הנתבים של Apigee, ואתם מסיימים את ה-TLS במאזן העומסים, לא ניתן להשתמש בהפניות של מאגר המפתחות ו-Truststore במארחים וירטואליים.

הגדרת מארח וירטואלי ל-TLS דו-כיווני

כדי להפעיל TLS דו-כיווני, מגדירים את הרכיב <ClientAuthEnabled> לערך true ומציינים Truststore באמצעות הפניה עם הרכיב <TrustStore>. ה-Truststore מכיל את מנפיק האישור של הלקוח ואת שרשרת ה-CA של האישור, שנדרש. בנוסף, צריך להגדיר את הלקוח בצורה נכונה ל-TLS דו-כיווני.

כדי ליצור מארח וירטואלי ל-TLS דו-כיווני, יוצרים אובייקט XML שמגדיר את המארח הווירטואלי:

<VirtualHost name="myTLSVHost"> 
    <HostAliases> 
        <HostAlias>api.myCompany.com</HostAlias> 
    </HostAliases> 
    <Port>443</Port> 
    <SSLInfo> 
        <Enabled>true</Enabled> 
        <ClientAuthEnabled>true</ClientAuthEnabled> 
        <KeyStore>ref://myTestKeystoreRef</KeyStore> 
        <KeyAlias>myKeyAlias</KeyAlias> 
        <TrustStore>ref://myTestTruststoreRef</TrustStore> 
    </SSLInfo>
</VirtualHost>

בהגדרה הזו:

  • כדי להפעיל TLS דו-כיווני, יש להגדיר את <ClientAuthEnabled> כ-True.
  • צריך לציין את ההפניה ל-Truststore באמצעות הרכיב <TrustStore>. ה-Truststore מכיל את מנפיק האישור של הלקוח ואת שרשרת ה-CA של האישור, שנדרש.

הגדרת מארח וירטואלי שמשתמש באישור ובמפתח של תקופת הניסיון בחינם של Apigee

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

האישור לתקופת ניסיון בחינם ב-Apigee מוגדר לדומיין של *.apigee.net. לכן, <HostAlias> של המארח הווירטואלי חייב להיות גם בצורה *.apigee.net.

גם אם מבצעים TLS דו-כיווני, עדיין צריך להגדיר את הרכיב <ClientAuthEnabled> לערך true ולציין מאגר מהימנות באמצעות reference עם הרכיב <TrustStore>, כפי שמתואר למעלה במאמר הגדרת מארח וירטואלי ל-TLS דו-כיווני.

אובייקט XML המגדיר את המארח הווירטואלי באמצעות האישור והמפתח של תקופת הניסיון בחינם של Apigee משמט את הרכיבים <KeyStore> ו-<KeyAlias> ומחליף אותם ברכיב <UseBuiltInFreeTrialCert>, כפי שמוצג כאן:

<VirtualHost name="myTLSVHost">
    <HostAliases>
        <HostAlias>myapi.apigee.net</HostAlias>
    </HostAliases>
    <Port>443</Port>
    <SSLInfo>
        <Enabled>true</Enabled>
        <ClientAuthEnabled>false</ClientAuthEnabled>
    </SSLInfo>
    <UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert>
</VirtualHost>

ערך ברירת המחדל של הרכיב <UseBuiltInFreeTrialCert> הוא False.

עבור TLS דו-כיווני, מגדירים את המארח הווירטואלי כך:

<VirtualHost name="myTLSVHost">
    <HostAliases>
        <HostAlias>myapi.apigee.net</HostAlias>
    </HostAliases>
    <Port>443</Port>
    <SSLInfo>
        <Enabled>true</Enabled>
        <ClientAuthEnabled>true</ClientAuthEnabled>
        <TrustStore>ref://myTestTruststoreRef</TrustStore>
    </SSLInfo>
    <UseBuiltInFreeTrialCert>true</UseBuiltInFreeTrialCert>
</VirtualHost>

בממשק המשתמש של Edge, צריך לבחור באפשרות שימוש באישור מובנה של תקופת ניסיון בחינם כשיוצרים את המארח הווירטואלי כדי להשתמש באישור ובמפתח Apigee בחינם:

בחירה באפשרות &#39;שימוש באישור מובנה של תקופת ניסיון בחינם

יצירת מארח וירטואלי

כדי ליצור את המארח הווירטואלי, מבצעים את התהליך הבא:

  1. יוצרים רשומת DNS ורשומת CNAME לדומיין הציבורי, api.myCompany.com, בדוגמה הזו, שמפנה אל [org]-[environment].apigee.net.
  2. בדוגמה הזו יוצרים ומגדירים מאגר מפתחות בשם myTestKeystore באמצעות התהליך שמתואר כאן: יצירת מאגרי מפתחות ו-Truststore באמצעות ממשק המשתמש של Edge. בדוגמה הזו, צריך לוודא שמאגר המפתחות משתמש בשם החלופי myKeyAlias לאישור ולמפתח הפרטי.
  3. מעלים את האישור ואת המפתח למאגר המפתחות. צריך לוודא ששם הדומיין שצוין באישור תואם לשם הדומיין החלופי שבו רוצים להשתמש במארח הווירטואלי.
  4. אפשר ליצור הפניה למאגר המפתחות באמצעות ממשק המשתמש של Edge או ה-API. בקובץ העזר מציינים את השם של מאגר המפתחות ואת סוג קובץ העזר באופן הבא: KeyStore. למידע נוסף על יצירה ושינוי של קובצי עזר, אפשר לעיין במאמר עבודה עם קובצי עזר.

  5. יוצרים את המארח הווירטואלי באמצעות Create a Virtual Host API. הקפידו לציין את ההפניה הנכונה של מאגר המפתחות ואת כינוי המפתח הנכון. כדי להשתמש ב-API, צריך להשתמש בקריאה הבאה ל-POST API כדי ליצור את מאגר המפתחות בשם myTLSVHost:
    curl -X POST -H "Content-Type:application/xml" \
      https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts \
      -d '<VirtualHost name="myTLSVHost">
        <HostAliases>
          <HostAlias>api.myCompany.com</HostAlias>
        </HostAliases>
        <Port>443</Port>
        <SSLInfo>
          <Enabled>true</Enabled>
          <ClientAuthEnabled>false</ClientAuthEnabled>
          <KeyStore>ref://myTestKeystoreRef</KeyStore>
          <KeyAlias>myKeyAlias</KeyAlias>
        </SSLInfo>
      </VirtualHost>' \
      -u orgAdminEmail:password

    אם מבצעים TLS דו-כיווני עם הלקוח, צריך להגדיר את <ClientAuthEnabled> לערך True ולציין את ה-Truststore באמצעות הרכיב <TrustStore>. צריך להגדיר את הלקוח בצורה נכונה ל-TLS דו-כיווני. כלומר, ל-Edge יש מאגר מהימנות שמכיל את מנפיק האישור ואת שרשרת האישורים של הלקוח. יוצרים את ה-Truststore באמצעות התהליך שמתואר כאן: יצירת מאגרי מפתחות ו-Truststore באמצעות ממשק המשתמש של Edge.

  6. אם יש לך שרתי proxy ל-API, צריך להוסיף את המארח הווירטואלי לרכיב <HTTPConnection> ב-ProxyEndpoint. המארח הווירטואלי מתווסף באופן אוטומטי לכל שרתי ה-proxy החדשים של ה-API. למידע נוסף, ראו הגדרת שרת proxy ל-API לשימוש במארח וירטואלי.

אחרי שמעדכנים שרת proxy ל-API לשימוש במארח הווירטואלי ויוצרים רשומת DNS ורשומת CNAME לכינוי המארח, אפשר לגשת לשרת ה-API של ה-API באופן הבא:

https://api.myCompany.com/v1/{project-base-path}/{resource-path}

לדוגמה:

https://api.myCompany.com/v1/weather/forecastrss?w=12797282

שינוי מארח וירטואלי

לקוחות Cloud בתשלום מבצעים שתי משימות עיקריות כדי לשנות מארח וירטואלי קיים:

  1. שינוי הערך של הפניה ל-Keystore או ל-Truststore

    הערה: אחרי שמגדירים <KeyStore> או <TrustStore> לשימוש בקובץ עזר, אפשר לשנות את הערך של קובץ העזר מתי שרוצים. עם זאת, אם תרצו לשנות את <KeyStore> או את <TrustStore> כדי להשתמש בהפניה אחרת, או לשנות את <KeyAlias> לכינוי אחר, תצטרכו לפנות לתמיכה של Apigee Edge.
  2. שינוי מאפייני ה-TLS של המארח הווירטואלי.

שינוי הערך של קובץ עזר

אפשר לשנות את הערך של הפניה כדי לשנות את מאגר המפתחות או ה-Truststore שמארח וירטואלי משתמש בהם.

לפני שתשנו את הערך של קובץ העזר:

  1. יוצרים מאגר מפתחות חדש ומעלים אישור ומפתח, כמו שמתואר במאמר יצירת מאגרי מפתחות ו-Truststore באמצעות ממשק המשתמש של Edge. במאגר המפתחות החדש, ודאו שהשם לכינוי המפתח זהה לשם שהשתמשתם במאגר המפתחות הקיים.
  2. במידת הצורך, יוצרים Truststore חדש ומעלים אישור כמו שמתואר במאמר יצירת מאגרי מפתחות ו-Truststore באמצעות ממשק המשתמש של Edge.
  3. משנים את קובץ העזר לפי ההוראות במאמר עבודה עם קובצי עזר.

שינוי מאפייני ה-TLS של המארח הווירטואלי

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

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

  • לא נעשה שימוש בדומיין, כפי שצוין בכינוי המארח, בארגון ובסביבה אחרים.
  • אתם הבעלים של שם הדומיין. באופן ספציפי, Edge בודק שהפרטים הבאים באישור תואמים לכינוי המארח:
    • CN - שם נפוץ
    • SAN - שם חלופי לנושא
    • Edge מאמת שתוקף האישור לא פג.

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

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

    curl -X PUT -H "Content-Type:application/xml" \
      https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts/{vhost_name} \
      -d '<VirtualHost name="myTLSVHost">
        <HostAliases>
          <HostAlias>api.myCompany.com</HostAlias>
        </HostAliases>
        <Port>443</Port>
        <SSLInfo>
          <Enabled>true</Enabled>
          <ClientAuthEnabled>false</ClientAuthEnabled>
          <KeyStore>ref://myTestKeystoreRef</KeyStore>
          <KeyAlias>myKeyAlias</KeyAlias>
        </SSLInfo>
        <Properties>
           <Property name="proxy_read_timeout">50</Property>
             </Properties>
      </VirtualHost>' \
      -u orgAdminEmail:password

שינוי מארח וירטואלי לשימוש בהפניות ל-Keystore ול-Truststore

כל המארחים הווירטואליים החדשים ל-Edge ב-Cloud משתמשים בהפניה ל-Keystore ול-Truststore. קובצי עזר מאפשרים לשנות את מאגר המפתחות ואת ה-Truststore בלי לפנות לתמיכה של Apigee Edge.

יכול להיות שמארחים וירטואליים ישנים יותר ב-Apigee Edge לא מוגדרים להשתמש בהפניות ל-Keystores ו-Truststores. במקרה כזה, תוכלו לעדכן את המארח הווירטואלי לשימוש בהפניה.

עדכון מארח וירטואלי כדי להשתמש בהפניה

כדי לעדכן את המארח הווירטואלי, מבצעים את התהליך הבא:

  1. אם צריך, יוצרים מאגר מפתחות חדש ומעלים אישור כמו שמתואר במאמר יצירת מאגרי מפתחות ו-Truststore באמצעות ממשק המשתמש של Edge. אם כבר יש לכם מאגר מפתחות, אפשר להגדיר הפניה שתצביע אליו.
  2. יוצרים קובץ עזר חדש למאגר המפתחות.
  3. במקרה הצורך, יוצרים Truststore חדש ומעלים אישור. אם כבר יש לך מאגר מהימנות, אפשר להגדיר קובץ עזר שיפנה אליו.
  4. יצירת הפניה חדשה ל-Truststore.
  5. צריך לעדכן את המארח הווירטואלי כדי להגדיר את מאגר המפתחות, הכינוי, ה-Truststore וכל מאפייני TLS (אבטחת שכבת התעבורה) אחרים. המטען הייעודי (payload) של השיחה הוא:
    curl -X PUT -H "Content-Type:application/xml" \
      https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/virtualhosts/{vhost_name} \
      -d '<VirtualHost  name="myTLSVHost">
            <HostAliases>
              <HostAlias>api.myCompany.com</HostAlias>
            </HostAliases>
            <Port>443</Port>
            <OCSPStapling>off</OCSPStapling>
            <SSLInfo>
              <Enabled>true</Enabled>
              <ClientAuthEnabled>true</ClientAuthEnabled>
              <KeyStore>ref://myKeyStore2Way</KeyStore>
              <KeyAlias>keyAlias</KeyAlias>
              <TrustStore>ref://myTrustStore2Way</TrustStore>
              <IgnoreValidationErrors>false</IgnoreValidationErrors>
            </SSLInfo>
          </VirtualHost>' \
        -u orgAdminEmail:pWord
  6. להשלמת התהליך, יש לפנות לתמיכה של Apigee ולהפעיל מחדש את נתבי Edge.