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

    הזדהות מאובטחת ומותאמת אישית בAPI - מפתח קבוע - API KEY

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

      ב״ה

      השימוש בAPI של ימות המשיח מתחלק לקבוצה של לקוחות שמתמשים בapi בממשקים באתרים שלהם, ללקוחות שמשלבים תקשורת מול ימות המשיח ביישומים צד שרת וכד.

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

      ניהול מפתחות הAPI נעשה באמצעות ממשק הניהול הייעודי בכתובת https://www.call2all.co.il/firewall - אליו ניתן להתחבר על ידי יצירת מפתח API שעבר אימות דו שלבי - או בצורה פשוטה יותר, באתר הניהול בלשונית ״אבטחה>ניהול מפתחות גישה״.

      השימוש במפתח גישה טוב בגלל כמה סיבות:

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

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

      ההגבלות וההתאמות אישית מפורטות בממשק ״חומת האש״ של ניהול המפתחות, אבל נביא דוגמא כדי להמחיש את הגמישות:


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


      מפתח API לטובת שימוש במנוע המרת YMGR רק בשלוחה מסויימת ספציפית בלבד:

      ניצור מפתח - ונגביל אותו לשימוש בשירות ספציפי של המרת ymgr - דרך לשונית ״הגבלות שירותים״:

      76763654-e2d8-4807-9abe-01a7a7667995-image.png

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

      d2ade3b3-bd47-4a49-9333-feeadc2a2697-image.png

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

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

      3c8b9b59-1fb9-40d3-b489-d8e8b52dc73a-image.png

      בא נשים לב מה קורה פה.
      בעצם ״שירות״ לא רלוונטי אלינו, כי הרי המפתח כולו מוגבל לשירות אחד בלבד, אז אין עניין לכתוב אותו שוב פה.
      אנחנו צריכים להגדיר רק את שם הפרמטר - wath שהוא הפרמטר שהלקוח שולח בו את הנתיב של הקובץ, ואנחנו צריכים לוודא שהערך מתחיל ב ivr2:/Log/ ומכיל כל קובץ שמסתיים ב ymgr, אבל לא בתוך תת תיקיה, למשל, אנחנו לא רוצים שהמפתח יכל לגשת לתיקיה LogConfBridgeEnterExit שמכילה דוחות של חדרי ועידה...

      אז נגדיר ככה:

      39cadf17-b42a-4385-8e2c-cf94d08b2533-image.png

      או לחלופין, אם נרצה שיהיה אפשר להשתמש עם המפתח גם לתת תיקיות, פשוט במקום * פעם אחת, נעשה פעמיים:

      d51df01e-b0ac-470c-a149-285f0edc8deb-image.png

      או לחלופין, אם נרצה שיהיה אפשר להשתמש עם המפתח רק באותה התיקיה, אבל רק לתבנית של קבצים מסויימת, שימו לב:

      451b562e-0635-4108-a935-7aa5a8ce588d-image.png

      הסימני שאלה מציינים שמדובר במשהוא כל שהוא, אבל לפי מספר הפעמים שיש את סימני השאלה, כך ש:

      ivr2:/Log/LogFolderEnterExit-2024-022.ymgr // יחסם
      ivr2:/Log/LogFolderEnterExit-2024-02.ymgr // יצליח
      ivr2:/Log/LogFolderEnterExit-2026-02.ymgr // יצליח
      ivr2:/Log/LogFolderEnterExit-2031-02.ymgr // יחסם
      ivr2:/Log/LogFolderEnterExitGlobal.ymgr // יחסם
      

      כן על זו הדרך.

      טיפ נוסף: נעילת סוג ההמרה לhtml בלבד.

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

      אז נגדיר:

      035afd95-c643-495f-84a1-327422c45bab-image.png

      ואז, הפרמטרים האלה יכתבו - כאילו שלחו אותם.


      מפתח API לטובת העתקת קובץ מסויים - בצורה שלא צריך לשלוח שום פרמטר:


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

      לצורך הדוגמא, ניצור מפתח שמעתיק את קובץ ivr2:/M0000.wav ל ivr2:/M0000-new.wav בצורה שלא ניתן לשנות שום דבר.

      הגבלה לשימוש בFileAction:

      e34b5478-ce7f-416d-bfd1-77b94a0fc0b3-image.png

      רשימה לבנה של פרמטרים ברמת כל המפתח לפרמטר שלא ישלח בחיים ולא רלוונטי, תוך כדי הסרת כל הפרמטרים האחרים - ככל וישלחו:

      266f30f2-37a5-4259-8d73-067126d6e480-image.png

      חסימת כל הבקשות שלא מתאימות לכלל חומת אש:

      9a65670c-0405-4f63-8982-b4ed9a26d6c1-image.png

      יצירת כלל שמתאים תמיד - (ללא שום הגדרות) - אבל ב״פרמטרים להגדרה״ נגדיר את הפמרטרים שלנו:

      960d0d5f-4cc2-4d20-b03e-db479f700eea-image.png

      בעצם ״הכנו״ בשביל המפתח כל מה שהוא צריך / יכול לעשות.

      נקרא לשירות, ולא משנה איזה פרמטרים נשלח, תמיד נקבל:

      {
      {
          responseStatus: "OK",
          reports: [{
              what: "ivr2:/M0000.wav",
              target: "ivr2:/M0000-new.wav",
              success: true
          }],
          message: "ok",
          success: true,
          action: "copy",
          yemotAPIVersion: 7
      }
      

      ללא שום אפשרות לשנות שום דבר אחר עם המפתח.


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

      בברכה,

      לפניות בנוגע לפורום: shmuel@yemot.co.il

      תגובה 1 תגובה אחרונה תגובה ציטוט 7
      • פוסט ראשון
        פוסט אחרון