✕ סגור 
צור קשר
תודה על ההתעניינות .

Thank you! Your submission has been received!

Oops! Something went wrong while submitting the form

מה טוב יותר – Logic Apps או Flow?

Eli Shlomo
|
קלה
|
Dec 1, 2018
alt="facebook"alt="linkedin"להרשמה לניוזלטר

במקרים רבים, צוותים מתכננים או מתחילים לבנות תהליך מסוים בענן, ואז הם מגיעים למצב שבו שואלים "איזו טכנולוגיה טובה יותר - Microsoft Flow או Azure Logic Apps? רגע, מה עם Azure Functions ועם Azure App Service WebJobs?"

אז, מהם ההבדלים בין כל אותם תשתיות וכלים המוצעים כיום?

Azure Logic Apps או Microsoft Flow

מטרת הכלים המוצעים בשירות הענן של Microsoft היא לבצע אוטומציה על תהליכים עסקיים לפי תנאים, מידע קיים, אינפוטים מסוימים וכו', ועל סמך אותה אינפורמציה לבצע פעולות שונות (לרוב אוטומטיות). הכלים המאפשרים לבצע אוטומציה על תהליכים שונים הם:

Microsoft Flow
Azure Logic Apps
Azure Functions
Azure App Service WebJobs

הערה: המאמר מתמקד בכלים: Microsoft Flow וכן ב-Azure Logic Apps.
התשתיות והכלים Microsoft Flow + Azure Logic Apps הם למעשה כלים המתבססים תחילה על designer-first, ומטרתם היא לבצע אינטגרציה מול שירותי ענן שונים ואפליקציות SaaS למיניהם.

חשוב מאוד להדגיש כי Microsoft Flow מבוסס על Azure Logic Apps, ושניהם עובדים על מאפיינים דומים כמו למשל, על גבי אותם קונקטורים.

Microsoft Flow

התשתית של Microsoft Flow בנויה על Azure Logic Apps, אך עדיין ישנם הבדלים בין שני הכלים:

תשתית Microsoft Flow היא שירות SaaS אשר פותח ע"י קבוצת המוצר של Microsoft Flow, זאת במטרה לאפשר למשתמשי הקצה ליצור תהליכים ללא צורך במעורבות של אדמין או אנשי פיתוח.

הכלי Microsoft Flow הוא חלק מתוך Business Applications Group וחלק מתוך כלי פרודוקטיביות של Office 365, ביניהם ניתן למנות את PowerApps, PowerBI ועוד.

ישנם שני מצבים עיקריים של בנית Flows:
• Flow אוטומטי – טפסים אוטומטיים המבוססים על Azure Logic Apps
• Business Process flows – תהליכים הקשורים אל Dynamic 365 ומייצגים תהליכים מורכבים יותר

2019-11-02_13h01_29.png


בשני המצבים, עובדים מול ממשק אחד של https://flow.microsoft.com בלבד, ויצירת התהליכים נעשית על סמך מאפיינים שונים:

תבניות – משתמש יכול ליצור תהליך תוך דקות בודדות באמצעות תבניות קיימות, או הנחיה ליצירת תבניות מותאמות אישית. התבניות נוצרו ע"י קבוצת המוצר, אנשי MVP, קבוצות מוצר אחרות (למשל Cloud App Security), וחברות צד שלישי.

2019-11-02_13h03_30.png



קונקטור – חלק מהותי בהיצע של Microsoft Flow (ושל Azure Logic Apps). ישנם מעל 250 קונקטורים המאפשרים לבצע חיבור מול אפליקציות צד שלישי, שירותי ענן אחרים וסביבות מקומיות במטרה ליצור תהליכים עם ערך מול כל אפליקציה וגורם, והם מתחלקים לסוג Standard ולסוג Premium.

Approvals – חלק נוסף בתהליך Microsoft Flow, המציע בקרה נוספת על פעולות אוטומטיות. מטרת האפשרות Approvals היא להגיב על תהליכים ולאפשר לתהליך להמשיך לפי תנאים המוגדרים מראש.

2019-11-02_12h36_27.png


ישנם מאפיינים נוספים של Microsoft Flow כדוגמת: Application Lifecycle Management ובמיוחד אפשרויות Governance, לאכיפת מדיניות אבטחת מידע.

Azure Logic Apps

תשתית Azure Lofic Apps היא למעשה תשתית SaaS, שמטרתה היא לבצע תהליכים עסקיים, לתזמן פעולות, לנהל משימות, לאפשר אינטגרציה מול אפליקציות ונתונים על גבי שירותי ענן ואפליקציות שונות.

מכיוון שתשתית Azure Logic Apps מאפשרת לבצע בניה ופיתוח של תהליכים מול מערכות שונות, ניתן לבצע תרחישים כגון:

• פעולות ענן, כגון: העברת קבצים בין Azure Storage או העלאת נתונים מתוך ענן צד שלישי
• תגובה אוטומטית לתרחישי ניטור של מערכות שו"ב
• תגובה אוטומטית לאירועי אבטחה

בכדי להתחיל בבניית תהליכים עם Azure Logic Apps, ניתן לעבוד עם קונקטורים של Azure Service Bus או Azure Functions ונוספים, או לבנות תהליכים מקוסטמים אישית.

איך Azure Logic Apps עובד?

כל תהליך אשר מתבסס על Azure Logic Apps, מכיל טריגר מסוים אשר מופעל בהתאם למידע שמתקבל אל השירות או על סמך אירוע מסוים שמתרחש. ישנם טריגרים רבים שמגיעים מתוך אותם קונקטורים, וניתנים להגדרה ע"י Logic app designer.

בכל פעם שטריגר מופעל, המנוע של Azure Logic Apps נכנס לפעולה ויוצר Instance אשר רץ ברגע ומבצע פעולות שונות על סמך תנאים ולולאות (לפי הגדרות statements).

לאחר שתנאי עונה על הדרישות השונות (המוגדרות מראש) התהליך ממשיך, והמנוע של Azure Logic Apps ממשיך לבצע פעולות נוספות.

רכיבים עיקריים בתשתית Azure Logic Apps:

2019-11-02_15h08_27.png


• Workflow – מיועד לבניית תהליכים, לביצוע אוטומציה וליישם סט של תהליכים
• Connectors – רכיב המאפשר גישה למידע, למערכות ואפליקציות
• Triggers – רכיב לביצוע פעולות על סמך מידע אשר מתקבל במערכת
• Actions – רכיב שמטרתו לבצע פעולות על סמך הטריגרים במערכת

דוגמאות לתהליכים

תרחיש להתראות מתוך Azure Security Center

2019-11-02_15h29_21.png


תרחיש למחיקת Azure Blobs מעל פרק זמן מסוים

2019-11-02_15h25_57.png


הבדלים עיקריים

מתי ניתן להשתמש

כלים שאיתם ניתן לעבוד


אפשרויות נוספות



מה ביומיום ותרחיש

התחלתם לבנות תהליך מסוים, ואז ראיתם שצריך לבצע אוטומציה ולהגיב לתנאים מסוימים. מה אז? אם ניקח למשל את אחת הדוגמאות שאיתה אני עובד ביומיום כמו ניהול גישה, נראות, אירועי אבטחה ומעקב אחר פעולות על גבי Microsoft Cloud App Security במצב של תשתית MCAS, המחוברת אל רוב התשתיות הקריטיות בארגון.

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

מכיוון שאפשרויות התגובה של Microsoft Cloud App Security ניתנות להרחבה עם כלים נוספים, כגון Microsoft Flow, Azure Logic Apps ואחרים, המטרה היא לקחת תרחישים מסוימים ולבצע איתם אוטומציה ומענה אוטומטי ככל האפשר – ואפשר לבצע אינספור תרחישים, גם כאלו הנראים מסובכים.

אז קצת מהשטח - אחד התרחישים שבהם ניתן לבצע אוטומציה היא בתרחיש של MCAS יחד עם Azure Logic Apps, כאשר התרחיש מצריך לבצע מחיקה של קובץ זדוני לצמיתות או העברת קבצים זדוניים להסגר. לצורך העניין, ביומיום MCAS מבצע זיהוי של קבצים זדוניים למיניהם, מתייג את אותם קבצים לפי סוג אותו Malware (או בעיה אחרת) ולאחר מכן מתריע (במידה והחוק הופעל).

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

• האם הקובץ משותף לגורם חיצוני
• סוג Malware ודירוג לפני MSRC
• האם ישנם קבצים נוספים הקשורים לאותו Malware
• האם ישנם משתמשים מסוימים אשר מבצעים שימוש בקובץ הבעייתי
• האם אותו Malware מסווג במנועים אחרים כסיכון

למה לבצע בדיקות נוספות כאשר ישנו MCAS? הסיבה פשוטה מאוד: לפני שאני מבצע פעולות תגובה על הקובץ ומרשיע את הקובץ והבעיה עצמה, אני מעונין לוודא פרמטרים נוספים על סמך תנאים נוספים, ולכן על סמך אותם תנאים, אני אוכל להגיב באופן אוטומטי, בין היתר לפי הפעולות הבאות:

• העברת קובץ להסגר ברמת תיקיית משתמש
• העברת קובץ להסגר ברמת תיקיית אדמין
• מחיקת הקובץ לצמיתות
• דיווח על האירוע במייל
• סגירת האירוע בפורטל MCAS

לסיכום

איך לבנות תהליכים ואוטומציה? באמצעות Microsoft Flow או Azure Logic Apps?

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


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

רוצים להתעדכן בתכנים נוספים הקשורים לארכיטקטורת ענן? הצטרפו לפורום המקצועי של IsraelClouds בתחום > להרשמה

במקרים רבים, צוותים מתכננים או מתחילים לבנות תהליך מסוים בענן, ואז הם מגיעים למצב שבו שואלים "איזו טכנולוגיה טובה יותר - Microsoft Flow או Azure Logic Apps? רגע, מה עם Azure Functions ועם Azure App Service WebJobs?"

אז, מהם ההבדלים בין כל אותם תשתיות וכלים המוצעים כיום?

Azure Logic Apps או Microsoft Flow

מטרת הכלים המוצעים בשירות הענן של Microsoft היא לבצע אוטומציה על תהליכים עסקיים לפי תנאים, מידע קיים, אינפוטים מסוימים וכו', ועל סמך אותה אינפורמציה לבצע פעולות שונות (לרוב אוטומטיות). הכלים המאפשרים לבצע אוטומציה על תהליכים שונים הם:

Microsoft Flow
Azure Logic Apps
Azure Functions
Azure App Service WebJobs

הערה: המאמר מתמקד בכלים: Microsoft Flow וכן ב-Azure Logic Apps.
התשתיות והכלים Microsoft Flow + Azure Logic Apps הם למעשה כלים המתבססים תחילה על designer-first, ומטרתם היא לבצע אינטגרציה מול שירותי ענן שונים ואפליקציות SaaS למיניהם.

חשוב מאוד להדגיש כי Microsoft Flow מבוסס על Azure Logic Apps, ושניהם עובדים על מאפיינים דומים כמו למשל, על גבי אותם קונקטורים.

Microsoft Flow

התשתית של Microsoft Flow בנויה על Azure Logic Apps, אך עדיין ישנם הבדלים בין שני הכלים:

תשתית Microsoft Flow היא שירות SaaS אשר פותח ע"י קבוצת המוצר של Microsoft Flow, זאת במטרה לאפשר למשתמשי הקצה ליצור תהליכים ללא צורך במעורבות של אדמין או אנשי פיתוח.

הכלי Microsoft Flow הוא חלק מתוך Business Applications Group וחלק מתוך כלי פרודוקטיביות של Office 365, ביניהם ניתן למנות את PowerApps, PowerBI ועוד.

ישנם שני מצבים עיקריים של בנית Flows:
• Flow אוטומטי – טפסים אוטומטיים המבוססים על Azure Logic Apps
• Business Process flows – תהליכים הקשורים אל Dynamic 365 ומייצגים תהליכים מורכבים יותר

2019-11-02_13h01_29.png


בשני המצבים, עובדים מול ממשק אחד של https://flow.microsoft.com בלבד, ויצירת התהליכים נעשית על סמך מאפיינים שונים:

תבניות – משתמש יכול ליצור תהליך תוך דקות בודדות באמצעות תבניות קיימות, או הנחיה ליצירת תבניות מותאמות אישית. התבניות נוצרו ע"י קבוצת המוצר, אנשי MVP, קבוצות מוצר אחרות (למשל Cloud App Security), וחברות צד שלישי.

2019-11-02_13h03_30.png



קונקטור – חלק מהותי בהיצע של Microsoft Flow (ושל Azure Logic Apps). ישנם מעל 250 קונקטורים המאפשרים לבצע חיבור מול אפליקציות צד שלישי, שירותי ענן אחרים וסביבות מקומיות במטרה ליצור תהליכים עם ערך מול כל אפליקציה וגורם, והם מתחלקים לסוג Standard ולסוג Premium.

Approvals – חלק נוסף בתהליך Microsoft Flow, המציע בקרה נוספת על פעולות אוטומטיות. מטרת האפשרות Approvals היא להגיב על תהליכים ולאפשר לתהליך להמשיך לפי תנאים המוגדרים מראש.

2019-11-02_12h36_27.png


ישנם מאפיינים נוספים של Microsoft Flow כדוגמת: Application Lifecycle Management ובמיוחד אפשרויות Governance, לאכיפת מדיניות אבטחת מידע.

Azure Logic Apps

תשתית Azure Lofic Apps היא למעשה תשתית SaaS, שמטרתה היא לבצע תהליכים עסקיים, לתזמן פעולות, לנהל משימות, לאפשר אינטגרציה מול אפליקציות ונתונים על גבי שירותי ענן ואפליקציות שונות.

מכיוון שתשתית Azure Logic Apps מאפשרת לבצע בניה ופיתוח של תהליכים מול מערכות שונות, ניתן לבצע תרחישים כגון:

• פעולות ענן, כגון: העברת קבצים בין Azure Storage או העלאת נתונים מתוך ענן צד שלישי
• תגובה אוטומטית לתרחישי ניטור של מערכות שו"ב
• תגובה אוטומטית לאירועי אבטחה

בכדי להתחיל בבניית תהליכים עם Azure Logic Apps, ניתן לעבוד עם קונקטורים של Azure Service Bus או Azure Functions ונוספים, או לבנות תהליכים מקוסטמים אישית.

איך Azure Logic Apps עובד?

כל תהליך אשר מתבסס על Azure Logic Apps, מכיל טריגר מסוים אשר מופעל בהתאם למידע שמתקבל אל השירות או על סמך אירוע מסוים שמתרחש. ישנם טריגרים רבים שמגיעים מתוך אותם קונקטורים, וניתנים להגדרה ע"י Logic app designer.

בכל פעם שטריגר מופעל, המנוע של Azure Logic Apps נכנס לפעולה ויוצר Instance אשר רץ ברגע ומבצע פעולות שונות על סמך תנאים ולולאות (לפי הגדרות statements).

לאחר שתנאי עונה על הדרישות השונות (המוגדרות מראש) התהליך ממשיך, והמנוע של Azure Logic Apps ממשיך לבצע פעולות נוספות.

רכיבים עיקריים בתשתית Azure Logic Apps:

2019-11-02_15h08_27.png


• Workflow – מיועד לבניית תהליכים, לביצוע אוטומציה וליישם סט של תהליכים
• Connectors – רכיב המאפשר גישה למידע, למערכות ואפליקציות
• Triggers – רכיב לביצוע פעולות על סמך מידע אשר מתקבל במערכת
• Actions – רכיב שמטרתו לבצע פעולות על סמך הטריגרים במערכת

דוגמאות לתהליכים

תרחיש להתראות מתוך Azure Security Center

2019-11-02_15h29_21.png


תרחיש למחיקת Azure Blobs מעל פרק זמן מסוים

2019-11-02_15h25_57.png


הבדלים עיקריים

מתי ניתן להשתמש

כלים שאיתם ניתן לעבוד


אפשרויות נוספות



מה ביומיום ותרחיש

התחלתם לבנות תהליך מסוים, ואז ראיתם שצריך לבצע אוטומציה ולהגיב לתנאים מסוימים. מה אז? אם ניקח למשל את אחת הדוגמאות שאיתה אני עובד ביומיום כמו ניהול גישה, נראות, אירועי אבטחה ומעקב אחר פעולות על גבי Microsoft Cloud App Security במצב של תשתית MCAS, המחוברת אל רוב התשתיות הקריטיות בארגון.

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

מכיוון שאפשרויות התגובה של Microsoft Cloud App Security ניתנות להרחבה עם כלים נוספים, כגון Microsoft Flow, Azure Logic Apps ואחרים, המטרה היא לקחת תרחישים מסוימים ולבצע איתם אוטומציה ומענה אוטומטי ככל האפשר – ואפשר לבצע אינספור תרחישים, גם כאלו הנראים מסובכים.

אז קצת מהשטח - אחד התרחישים שבהם ניתן לבצע אוטומציה היא בתרחיש של MCAS יחד עם Azure Logic Apps, כאשר התרחיש מצריך לבצע מחיקה של קובץ זדוני לצמיתות או העברת קבצים זדוניים להסגר. לצורך העניין, ביומיום MCAS מבצע זיהוי של קבצים זדוניים למיניהם, מתייג את אותם קבצים לפי סוג אותו Malware (או בעיה אחרת) ולאחר מכן מתריע (במידה והחוק הופעל).

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

• האם הקובץ משותף לגורם חיצוני
• סוג Malware ודירוג לפני MSRC
• האם ישנם קבצים נוספים הקשורים לאותו Malware
• האם ישנם משתמשים מסוימים אשר מבצעים שימוש בקובץ הבעייתי
• האם אותו Malware מסווג במנועים אחרים כסיכון

למה לבצע בדיקות נוספות כאשר ישנו MCAS? הסיבה פשוטה מאוד: לפני שאני מבצע פעולות תגובה על הקובץ ומרשיע את הקובץ והבעיה עצמה, אני מעונין לוודא פרמטרים נוספים על סמך תנאים נוספים, ולכן על סמך אותם תנאים, אני אוכל להגיב באופן אוטומטי, בין היתר לפי הפעולות הבאות:

• העברת קובץ להסגר ברמת תיקיית משתמש
• העברת קובץ להסגר ברמת תיקיית אדמין
• מחיקת הקובץ לצמיתות
• דיווח על האירוע במייל
• סגירת האירוע בפורטל MCAS

לסיכום

איך לבנות תהליכים ואוטומציה? באמצעות Microsoft Flow או Azure Logic Apps?

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


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

רוצים להתעדכן בתכנים נוספים הקשורים לארכיטקטורת ענן? הצטרפו לפורום המקצועי של IsraelClouds בתחום > להרשמה

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
בואו נעבוד ביחד
support@israelclouds.com
צרו קשר