הפעלה של SAP Gateway

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

לפני שמתחילים

  • אם אתם מתכננים ליצור או להגדיר חיבור חדש לטריגר SAP Gateway, ודאו שיש לכם את תפקיד ה-IAM הבא בפרויקט:
    • אדמין של מחבר (roles/connectors.admin)
    • מידע על הקצאת תפקידים מופיע במאמר ניהול הגישה.

  • מקצים לחשבון השירות שרוצים להשתמש בו בשביל הטריגר של SAP Gateway את תפקידי ה-IAM הבאים:
  • הוספת הטריגר SAP Gateway

    כדי להוסיף טריגר של SAP Gateway לשילוב, מבצעים את השלבים הבאים:

    1. נכנסים לדף Application Integration במסוף Google Cloud .

      מעבר אל Application Integration

    2. בתפריט הניווט, לוחצים על Integrations (שילובים).

      מוצגת רשימה של כל השילובים שזמינים בפרויקט Google Cloud בדף Integrations List.

    3. בוחרים שילוב קיים או לוחצים על יצירת שילוב כדי ליצור שילוב חדש.

      אם יוצרים שילוב חדש:

      1. מזינים שם ותיאור בחלונית יצירת שילוב.
      2. בוחרים אזור לשילוב.
      3. בוחרים חשבון שירות לאינטגרציה. אפשר לשנות או לעדכן את פרטי חשבון השירות של שילוב בכל שלב מחלונית סיכום השילוב בסרגל הכלים של השילוב.
      4. לוחצים על יצירה.

      השילוב החדש שנוצר ייפתח בכלי השילובים.

    4. בסרגל הניווט של כלי העריכה של השילוב, לוחצים על טריגרים כדי לראות את רשימת הטריגרים הזמינים.
    5. לוחצים על הרכיב SAP Gateway trigger (טריגר של SAP Gateway) וממקמים אותו בכלי לעריכת שילובים.
    6. כדי להגדיר את הטריגר של SAP Gateway, אפשר להשתמש בחיבור קיים של SAP Gateway שזמין ב-Integration Connectors, או ליצור חיבור חדש של SAP Gateway באמצעות האפשרות ליצירת חיבור מוטבע.

    הגדרת טריגר של SAP Gateway באמצעות חיבור קיים

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

    מידע על הגדרת טריגר SAP Gateway באמצעות חיבור חדש ל-SAP Gateway זמין במאמר הגדרת טריגר SAP Gateway באמצעות חיבור חדש

    כדי להגדיר טריגר של SAP Gateway באמצעות חיבור קיים ל-SAP Gateway, מבצעים את השלבים הבאים:

    1. לוחצים על הרכיב SAP Gateway trigger (טריגר של SAP Gateway) בכלי לעריכת שילובים כדי לפתוח את חלונית הגדרת הטריגר.
    2. לוחצים על Configure trigger (הגדרת הטריגר).
    3. בדף Connector Event Trigger Editor (עורך טריגרים של אירועים של מחבר), מזינים את פרטי ההגדרה הבאים:
      1. אזור: בוחרים את האזור של חיבור SAP Gateway.
      2. חיבור: בוחרים את חיבור SAP Gateway שרוצים להשתמש בו.

        ב-Application Integration מוצגים רק חיבורים ל-SAP Gateway שהם פעילים ושהופעל בהם מינוי לאירועים.

      3. מזינים את שם השדה של סוג האירוע. בשדה הזה מצוין סוג האירוע שמשויך לבקשת האירוע הנכנסת.
        {
            "event_type": "user.created",
            ...
            // other request fields
            ...
            }
      4. חשבון שירות: בוחרים חשבון שירות עם תפקידי ה-IAM הנדרשים להפעלת הטריגר של SAP Gateway.
    4. לוחצים על סיום כדי להשלים את הגדרת הטריגר ולסגור את הדף.

    הגדרה של טריגר SAP Gateway באמצעות חיבור חדש

    1. לוחצים על הרכיב SAP Gateway trigger (טריגר של SAP Gateway) בכלי לעריכת שילובים כדי לפתוח את חלונית הגדרת הטריגר.
    2. לוחצים על Configure trigger (הגדרת הטריגר).
    3. מדלגים על השדה אזור.
    4. לוחצים על Connection (חיבור) ובוחרים באפשרות Create Connection (יצירת חיבור) מהתפריט הנפתח.
    5. בקטע פרטי החיבור, ממלאים את הפרטים הבאים:
      1. מחבר: בוחרים באפשרות SAP Gateway מהרשימה הנפתחת של המחברים הזמינים.
      2. גרסת כלי החיבור: בוחרים את גרסת כלי החיבור מהרשימה הנפתחת של הגרסאות הזמינות.
      3. בשדה Connection Name (שם החיבור), מזינים שם למופע החיבור.

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

        • שמות החיבורים יכולים לכלול אותיות, מספרים או מקפים.
        • האותיות צריכות להיות קטנות.
        • שמות החיבורים צריכים להתחיל באות ולהסתיים באות או במספר.
        • שמות החיבורים לא יכולים לכלול יותר מ-49 תווים.
        • במחברים שתומכים בהרשמה לאירועים, שמות החיבורים לא יכולים להתחיל בקידומת goog.
      4. אופציונלי: מזינים תיאור למופע החיבור.
      5. חשבון שירות: בוחרים חשבון שירות שיש לו את התפקידים הנדרשים.
      6. כדי להשתמש בחיבור למינויים לאירועים, בוחרים באפשרות הפעלת מינוי לאירועים. אם בוחרים באפשרות הזו, מוצגות האפשרויות הבאות:
        • הפעלת הרשמה לאירועים עם ישות ופעולות: בוחרים באפשרות הזו כדי להשתמש בחיבור גם להרשמה לאירועים וגם לפעולות של מחבר (יחידות ופעולות).
        • הפעלה של מינוי לאירועים בלבד: בוחרים באפשרות הזו כדי להשתמש בחיבור רק למינוי לאירועים. אם בוחרים באפשרות הזו, לוחצים על הבא ואז מגדירים מינוי לאירועים.
      7. מרחב שמות: מציינים את מרחב השמות של השירות שממנו רוצים לאחזר נתונים. המאפיין הזה נדרש אם השירות לא מצוין בכתובת ה-URL.
      8. שירות: מציינים את השירות שממנו רוצים לאחזר נתונים. המאפיין הזה נדרש אם השירות לא מצוין בכתובת ה-URL.
      9. CustomUrlParams: מציינים פרמטרים מותאמים אישית של מחרוזת שאילתה שנכללים בבקשת ה-HTTP. צריך לקודד את הפרמטרים כמחרוזת שאילתה בפורמט הבא: field1=value1&field2=value2. הערכים במחרוזת השאילתה חייבים להיות מקודדים בכתובת ה-URL.
      10. פורמט נתונים: פורמט הנתונים שרוצים לאחזר. בוחרים XML או JSON.
      11. שימוש בשמות לתצוגה: ערך בוליאני שקובע אם להשתמש בתוויות של SAP.
      12. אופציונלי: מגדירים את ההגדרות של צומת החיבור:

        • מספר מינימלי של צמתים: מזינים את המספר המינימלי של צמתי חיבור.
        • מספר הצמתים המקסימלי: מזינים את מספר צמתי החיבור המקסימלי.

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

      13. אופציונלי: לוחצים על + הוספת תווית כדי להוסיף תווית לקישור בצורה של צמד מפתח/ערך.
      14. לוחצים על הבא.
    6. בקטע יעדים, מגדירים את כתובת ה-URL של סביבת SAP Gateway או את כתובת ה-URL המלאה של שירות OData. לדוגמה, הפורמט הוא ${ENVIRONMENT_URL}/sap/opu/odata/${NAMESPACE}/${SERVICE}/ וכתובת ה-URL לדוגמה היא https://sapes5.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE_BASIC/. מוסיפים מאפיינים נוספים באמצעות המאפיין CustomUrlParams.
      1. סוג היעד: בוחרים סוג יעד.
        • כדי לציין את שם המארח או את כתובת ה-IP של היעד, בוחרים באפשרות כתובת המארח ומזינים את הכתובת בשדה מארח 1.
        • כדי ליצור חיבור פרטי, בוחרים באפשרות Endpoint attachment (צירוף נקודת קצה). ברשימה Endpoint Attachment, בוחרים את קובץ ה-Endpoint Attachment שנוצר עבור מערכת ה-Backend.

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

        כדי להזין יעדים נוספים, לוחצים על +הוספת יעד.

      2. לוחצים על הבא.
    7. בקטע אימות, מזינים את פרטי האימות.
      1. בוחרים סוג אימות ומזינים את הפרטים הרלוונטיים.

        סוגי האימות הבאים נתמכים בחיבור SAP Gateway:

        • שם משתמש וסיסמה
        • אנונימי
        • תהליך קוד הרשאה OAuth 2.0
        • ‫SAP BTP (OAuth 2.0 – פרטי כניסה של לקוח)
      2. כדי להבין איך להגדיר את סוגי האימות האלה, אפשר לעיין במאמר בנושא הגדרת אימות.

      3. לוחצים על הבא.
    8. בדיקה: בודקים את פרטי החיבור והאימות.
    9. לוחצים על יצירה.

    הגדרת אימות

    מזינים את הפרטים בהתאם לאימות שבו רוצים להשתמש.

    • שם משתמש וסיסמה
      • שם משתמש: שם המשתמש של המחבר
      • סיסמה: סוד ב-Secret Manager שמכיל את הסיסמה שמשויכת למחבר.
    • אנונימי

      אם רוצים להשתמש בכניסה אנונימית, בוחרים באפשרות לא זמין.

      • מפתח API: מפתח ה-API של המשתמש שאומת כרגע.
    • תהליך קוד הרשאה של OAuth 2.0
      • Client ID: מזינים את מזהה הלקוח שהתקבל מדף לקוח ה-API.
      • היקפים: מזינים רשימה מופרדת בפסיקים של ההיקפים הרצויים.
      • סוד לקוח: מזינים את סוד הלקוח שהתקבל מדף לקוח ה-API.
      • Secret version (גרסת סוד): מזינים את גרסת הסוד של Client Secret (סוד לקוח) שנבחר.
      • כתובת URL לאישור: מזינים את כתובת ה-URL לאישור שנוצרה כשיוצרים לקוח OAuth במופע SAP Gateway.
      • הפעלת ביטול של אימות: בוחרים באפשרות הזו כדי לאפשר לחיבור לקבל אימות שונה באופן דינמי במהלך זמן הריצה.
    • SAP BTP (OAuth 2.0 – פרטי כניסה של לקוח)
      • Client ID: מזינים את מזהה הלקוח שהתקבל מדף לקוח ה-API.
      • סוד לקוח: מזינים את סוד הלקוח שהתקבל מדף לקוח ה-API.
      • גרסה של סוד: מזינים את הגרסה של הסוד שנבחר למעלה.
      • OAuthAccessTokenURL: מזינים את כתובת ה-URL של אסימון הגישה ל-OAuth.
      • שם היעד: מזינים את השם של היעד ב-SAP BTP.
      • כתובת היעד: מזינים את כתובת היעד של SAP BTP.
      • הפעלת עקיפת אימות: בוחרים באפשרות הזו כדי לאפשר לחיבור לקבל אימות שונה באופן דינמי במהלך זמן הריצה.

    הגדרת מינוי לאירועים

    אם הפעלתם את המינוי לאירועים, מזינים את הערכים הבאים בקטע פרטי המינוי לאירועים:

    1. בוחרים אחד מסוגי האימות הבאים עבור רכיב event listener.
    2. מזינים את שם השדה של סוג האירוע. בשדה הזה מצוין סוג האירוע שמשויך לבקשת האירוע הנכנסת.
      {
      "event_type": "user.created",
      ...
      // other request fields
      ...
      }
    3. בוחרים באפשרות הפעלת קישוריות פרטית כדי ליצור קישוריות מאובטחת בין אפליקציית הקצה העורפי לבין החיבור. אם בוחרים באפשרות הזו, צריך לבצע שלבי הגדרה נוספים אחרי יצירת הקישור. מידע נוסף זמין במאמר בנושא קישוריות פרטית למינוי לאירועים.
    4. מזינים את ההגדרה של תור ההודעות המתות. אם מגדירים תיבת דואר להודעות שלא נמסרו, החיבור כותב את האירועים שלא עברו עיבוד אל נושא Pub/Sub שצוין. ממלאים את הפרטים הבאים:
      1. מזהה פרויקט של הודעות שלא ניתן למסור: מזהה הפרויקט ב-Google Cloud שבו הגדרתם את נושא ה-Pub/Sub של הודעות שלא ניתן למסור.
      2. נושא להודעות ללא מוצא: נושא Pub/Sub שבו רוצים לכתוב את הפרטים של האירוע שלא עבר עיבוד.

    הגדרת אימות ב-SAP

    מגדירים את האימות ב-SAP לפי ההוראות במדריך סקירה כללית על אימות למהדורה מקומית או למהדורה בענן של ABAP SDK for Google Cloud.

    אימות הטריגר

    כדי לאמת את הטריגר, אפשר ליצור תוכנית ABAP. הדוגמה הבאה היא של תוכנית ABAP שאפשר להשתמש בה כהפניה. השדה ls_event_payload משתנה בהתאם לדרישות שלכם:

    *&---------------------------------------------------------------------*
    *& Report ZR_TEST_INT_CONNECTOR
    *&---------------------------------------------------------------------*
    *&
    *&---------------------------------------------------------------------*
    REPORT zr_test_int_connector.
    PARAMETERS: p_auth TYPE char1 RADIOBUTTON GROUP rbg1 USER-COMMAND uc DEFAULT 'X',
     p_apik TYPE char1 RADIOBUTTON GROUP rbg1.
    DATA:
     lv_p_projects_id TYPE string,
     lv_p_locations_id TYPE string,
     lv_p_connections_id TYPE string,
     ls_input TYPE /goog/cl_connectors_v1=>ty_103.
    TYPES: BEGIN OF event_payload,
     event_type TYPE string,
     event_id TYPE string,
     name TYPE string,
     org_id TYPE string,
     END OF event_payload.
    DATA: ls_event_payload TYPE event_payload.
    ls_event_payload = VALUE #(
     event_type = 'create-entity'
     event_id = '1'
     name = 'demo-org'
     org_id = 'SAP'
     ).
    TRY.
     IF p_Auth = abap_true.
     DATA(lv_client_key) = 'IC_DEMO_GOOGLE_AUTH'.
     lv_p_connections_id = 'conn-event-triggers-from-sap-gateway'.
     ELSE.
     lv_client_key = 'IC_DEMO_GOOGLE_APIK'.
     lv_p_connections_id = 'conn-event-triggers-from-sap-gateway-apik'.
     ENDIF.
    * Open HTTP Connection
     DATA(lo_client) = NEW /goog/cl_connectors_v1( iv_key_name = CONV #( lv_client_key ) ).
    * Populate relevant parameters
     lv_p_projects_id = lo_client->gv_project_id.
     lv_p_locations_id = 'us-central1'.
     GET REFERENCE OF ls_event_payload INTO ls_input-payload .
    * Call API method: connectors.projects.locations.connections.listenEvent
     CALL METHOD lo_client->listen_event_connections
     EXPORTING
    
    
    iv_p_projects_id = lv_p_projects_id
     iv_p_locations_id = lv_p_locations_id
     iv_p_connections_id = lv_p_connections_id
     is_input = ls_input
     IMPORTING
    * es_raw =
     es_output = DATA(ls_output)
     ev_ret_code = DATA(lv_ret_code)
     ev_err_text = DATA(lv_err_text)
     es_err_resp = DATA(ls_err_resp).
     IF lo_client->is_success( lv_ret_code ).
     MESSAGE 'Success' TYPE 'S'.
     ELSE.
     MESSAGE lv_err_text TYPE 'E'.
     ENDIF.
    * Close HTTP Connection
     lo_client->close( ).
     CATCH /goog/cx_sdk INTO DATA(lo_exception).
     MESSAGE lo_exception->get_text( ) TYPE 'E'.
    ENDTRY.
    

    מכסות ומגבלות

    מידע על מכסות ומגבלות זמין במאמר מכסות ומגבלות.

    המאמרים הבאים