ניהול והקשחת זהויות Azure AD

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

  • Multi Factor Authentication
  • זיהוי באמצעות Token חומרה
  • הזדהות נוספת באמצעות פדרציה צד שלישי

השימוש ביכולות הזדהות חזקה על גבי MFA היא פעולה נדרשת לכל חשבון בעל הרשאות (גם הרשאות נמוכות), לכל משתמש עם גישה מחוץ לארגון וכן הלאה.

לאחר הפעלת הזדהות חזקה באמצעות MFA, בין אם מתוך האפשרויות הבסיסיות של MFA Service או מתוך האפשרויות של Azure AD Conditional Access שהיא למעשה הפעולה הראשונה והבסיסית, אנו צריכים להמשיך בהקשחה של הזהויות וישנם מספר דרכים ואפשרויות לביצוע הקשחות נוספות:

  • הפעלה והגדרת Password protection
  • הפעלה והגדרת MFA

הפעלת היכולות הנ”ל הן חלק מרישוי Azure AD Premuim ומאפשרות להקשיח זהויות במצבים בהם ישנם סביבה היברידית מול Active Directory או רק סביבת ענן.

הפעלה והגדרת Password protection

כאשר עובדים עם Password protection ישנם שתי תצורות: Cloud & Hybrid.

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

במקרים רבים נמצאים עם תשתית Active Directory מקומי ולכן בתרחיש כזה ישנו מנגנון שמורכב מתשתית ורכיבים שונים עם שלושה רכיבים עיקריים:

רכיב Azure AD Password Protection Proxy – שירות Proxy אשר רץ על שרתים החברים בדומיין החל מגרסת Windows Server 2012 ומעלה, ותפקידו להעביר בקשות מתוך Active Directory מקומי אל שירות Azure AD ולאחר מכן להחזיר את התושובת של אותה בקשה חזרת מתוך שירות Azure AD אל שרתי Domain Controllers מקומיים.

רכיב Azure AD Password Protection DC Agent – רכיב אשר רץ על שרתי Domain Controllers מבצע מספר פעולות, והראשונה בהן היא לקבל בקשות ואלידציה של סיסמאות ע”י שימוש בקובץ filter.dll, לאחר מכן מעבד את הבקשה מול הפוליסי (password policy) ובסיום מחזיר תשובה של הצלחה או כשלון ובהתאם לכך מתריע על על בעית סיסמאות או מגן על זהות המשתמש.
אחת לשעה מתבצע סנכרון בין Proxy לבין DC Agent במטרה לעדכן לגבי הפוליסי של הסיסמאות באמצעות RPC over TCP ולאחר מכן אותו שרת DC מבצע סנכרון ליתר שרתי DC באותו דומיין על גבי תיקיית Sysvol

רכיב DC Agent Password Filter – הרכיב שאחראי על שליחת תקינות הסיסמאות ותפקידו לבצע ולידציה של מדיניות הסיסמאות ולאחר מכן לסנכרן את הסיסמאות אל DC agent, מאחורי הקלעים DC Agent Password Filter מבצע רישום ועובד מול Password Filter DLL אשר מבצע רישום באותם שרתי DC’s.
כאשר מתבצע שינוי של סיסמה הרכיב LSA מבצע בקשה מול DC Agent (שעובד מול Password Filter) ובכל קריאה כזאת מתרחשים שני דברים:מתבצעת בקשה ראשונה של ואלידציה של הסיסמה החדשה וביצוע ואלידציה ורישום השינוי במערכת

How Azure AD password protection components work together

בכדי להגדיר את האפשרויות הקיימות של Password Protection יש לפעול לפי הפעולות הבאות:

  • Custom smart lockout – כמות כניסות אשר נכשלו ויעבירו את המשתמש לבצע נעילה, במידה והלוגין שלאחר מכן שוב נכשל המשתמש נכנס לבמצ נעילה שוב
  • Lockout duration seconds – משך הזמן שבו משתמש יהיה במצב נעילה
  • Custom banned passwords – אפשרות אשר מונעת שימוש בפרמטרים מסוימים בין היתר:
    • שימוש במילים מסוימות בעת הגדרה או החלפת סיסמה
    • הגדרה עד כמות מסוימת של מילים
    • אפשרויות שימוש בתווים וסימנים שונים

לרשימה של סיסמאות נפוצות Top 500 Worst Passwords

איך עובד המנגנון? כאשר רכיב Password Protection מופעל על גבי Azure AD, בכל איפוס סיסמה או הגדרה מחדש של הסיסמה, ישנו טריגר אשר מפעיל תנאי ותהליך (flow) אשר מבקשים מאותו משתמש להגדיר או לאפס סיסמה לפי הגדרות Password Protection.

כאשר משתמשים אינם עובדים לפי הפוליסי של Password Protection הם עלולים לקבל את השגיאה הבאה:

Unfortunately, your password contains a word, phrase, or pattern that makes your password easily guessable. Please try again with a different password.

2018-12-15_11h31_21

הקשחת MFA

עד כה הגדרות MFA היו בעיקר הגדרות מתוך הממשקים הבאים:

  • רכיב MFA Service Settings (ברגע שמבצעים הגדרות כלליות הן חלות על כלל הארגון)
  • כלי Azure AD Conditional Access (בחלקו מבוסס על הגדרות MFA Service הראשי)

הגדרות אלה נתנו אפשרויות ברמת משתמש, הגדרות גלובאליות וכן הגדרות לפי תנאים מבוססים Azure AD Conditional Access.

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

הגדרות MFA מתקדמות (מתוך Azure AD)

ישנם מספר הגדרות שניתן לעבוד עמן באמצעות Azure MFA Settings:

  • Account lockout – ביטול גישה למשתמש על בסיס MFA
    • הגדרת Number of MFA denials to trigger account lockout – מספר ניסיונות כושלים של משתמ באמצעות MFA לפני נעילה
    • Number until account lockout counter is reset – משך זמן (בדקות) איפוס הגישה של המשתמש באמצעות MFA
    • Number until account is automatically unblocked – משך הזמן (בדקות) עד להסרת החסימה של המשתמש

2018-12-15_12h35_20

  • Block/unblock users – חסימת משתמש באופן ידני
    • אפשרות לחסימת משתמש באופן ידני מול השירות עד למשך זמן של 90 יום מרגע הגדרת החסימה, לאחר ביצוע החסימה משתמש אינו יכול לבצע הזדהות באמצעות MFA ולא יקבל מידע לגבי הזדהות

2018-12-15_12h35_08
לאחר ביצוע החסימה משתמש אינו יכול לבצע הזדהות באמצעות MFA, ובבדיקה מול דוח ניתן לראות כי הסיבה היא חסימה יזומה של המשתמש

2018-12-15_12h39_06

בדוח Azure Sign-in ניתן לראות שהגישה נכשלה עקב (blocked MFA challenged).

  • Fraud alert – האפשרות לדווח על הזדהות באמצעות MFA אשר לא בוצע ע”י המשתמש
    הגדרות אלה הם פשוטות ומאפשרות לבצע חסימה של משתמשים אשר דווחו כמשתמשים אשר ביצעו לוגין לא תקין באמצעות MFA וכן האפשרות למשתמשים להתריע על כך.

2018-12-15_13h14_22

הערה: עד לא מזמן אפשרויות אלה היו זמינות רק לשרתי MFA, אך לאחרונה הגדרות אלה ניתנות לביצוע גם מול Azure MFA בלבד (בין אם בסביבת Azure AD היברידית או סביבת ענן בלבד).

מאמרים נוספים לגבי ניהול זהויות

You may also like...

השאר תגובה