ניהול מדיניות ברירת המחדל של סיסמת LDAP לניהול ממשק API

מערכת Apigee משתמשת ב-OpenLDAP כדי לאמת משתמשים בסביבת ניהול ה-API. OpenLDAP מאפשרת את הפונקציונליות הזו של מדיניות סיסמאות LDAP.

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

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

מידע נוסף זמין במאמרים הבאים:

הגדרת מדיניות ברירת המחדל של סיסמאות LDAP

בקטע הזה מוסבר איך להגדיר את מדיניות ברירת המחדל של סיסמאות LDAP עבור:

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

כדי להגדיר את מדיניות ברירת המחדל של סיסמאות LDAP למשתמשי Edge ולמערכת האדמין המקורית:

  1. מתחברים לשרת ה-LDAP באמצעות לקוח LDAP, כמו Apache Studio או ldapmodify. כברירת מחדל, שרת OpenLDAP מקשיב ביציאה 10389 בצומת OpenLDAP.

    כדי להתחבר, צריך לציין את ה-DN או המשתמש של cn=manager,dc=apigee,dc=com ואת סיסמת ה-OpenLDAP שהוגדרה כשמתקינים את Edge.

  2. משתמשים בלקוח כדי לעבור למאפייני המדיניות בנושא סיסמה עבור:
  3. עורכים את ערכי המאפיינים של מדיניות הסיסמאות לפי הצורך.
  4. שומרים את ההגדרה.

הגדרת מדיניות הסיסמאות של LDAP למנהלי מערכות נוספים

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

  1. כדי למצוא את כל האדמינים של dn, מריצים את הפקודה הבאה:
    ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -H "ldap://:10389" -b "cn=sysadmin,ou=userroles,ou=global,dc=apigee,dc=com" -s base
     -LLL

    הפלט מציג את משתמשי האדמין של המערכת כ-roleOccupant:

    dn: cn=sysadmin,ou=userroles,ou=global,dc=apigee,dc=com
    objectClass: organizationalRole
    objectClass: top
    cn: sysadmin
    roleOccupant: uid=admin,ou=users,ou=global,dc=apigee,dc=com
    roleOccupant: uid=2a0056b4-5c62-49de-8fb3-925ch67a3e45,ou=users,ou=global,dc=apigee,dc=com
  2. יוצרים קובץ חדש בשם ppchange.ldif ומוסיפים אליו את הטקסט הבא (מחליפים את ה-dn של משתמש ה-sysadmin שלכם):
    dn: uid=new-sysadmin-uid,ou=users,ou=global,dc=apigee,dc=com
    changetype: modify
    add: pwdPolicySubentry
    pwdPolicySubentry: cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com
  3. משנים את המשתמש באמצעות הזנת הפקודה הבאה:
    ldapmodify -x -w "$ldappassword" -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -f ppchange.ldif
  4. מאמתים את השינוי באמצעות פקודת החיפוש ldap:
    ldapsearch -x -W -D "cn=manager,dc=apigee,dc=com" -H "ldap://:10389" -b "uid=new-sysadmin-uid,ou=users,ou=global,dc=apigee,dc=com" -s base -LLL pwdPolicySubentry

    הפלט יציג את ההוספה של pwdPolicySubentry:

    dn: uid=new-admin-uid,ou=users,ou=global,dc=apigee,dc=com
    pwdPolicySubentry: cn=sysadmin,ou=pwpolicies,dc=apigee,dc=com

  5. חוזרים על שלבים 2 עד 4 עבור כל מערכת אדמין.

מאפייני מדיניות סיסמאות שמוגדרים כברירת מחדל ב-LDAP

מאפיין תיאור ברירת מחדל
pwdExpireWarning
מספר השניות המקסימלי לפני שתוקף הסיסמה יפוג, שבו יישלחו הודעות אזהרה למשתמש שמבצע אימות בספרייה.

604800

(שווה ערך ל-7 ימים)

pwdFailureCountInterval

מספר השניות שחולפות לפני שניסיונות קישור כושלים רצופים ישנים נמחקים ממכשיר הספירה של הכשלים.

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

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

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

מומלץ להגדיר את המאפיין הזה עם אותו ערך שמוגדר במאפיין pwdLockoutDuration.

300
pwdInHistory

המספר המקסימלי של סיסמאות קודמות או סיסמאות שהיו בשימוש של משתמש, שיישמרו במאפיין pwdHistory.

כשהמשתמשת תשנה את הסיסמה, היא לא תוכל לשנות אותה לאחת מהסיסמאות הקודמות שלה.

3
pwdLockout

אם הערך הוא TRUE, המשמעות היא שהמשתמש יינעל כשפג התוקף של הסיסמה שלו, ולא יוכל יותר להתחבר.

לא נכון
pwdLockoutDuration

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

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

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

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

אם הערך של pwdLockoutDuration הוא >0, המאפיין מגדיר את משך הזמן שבו חשבון המשתמש יישאר נעול. בסיום פרק הזמן הזה, חשבון המשתמש יינעל באופן אוטומטי.

מומלץ להגדיר למאפיין הזה את אותו ערך שמוגדר למאפיין pwdFailureCountInterval.

300
pwdMaxAge

מספר השניות שאחריהן פג התוקף של סיסמת משתמש (שאינו אדמין). הערך 0 פירושו שלסיסמאות אין תאריך תפוגה. ערך ברירת המחדל 2592000 שווה ל-30 יום ממועד יצירת הסיסמה.

משתמש: 2592000

sysadmin: ‏ 0

pwdMaxFailure

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

3
pwdMinLength

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

8

ביטול הנעילה של חשבון משתמש

יכול להיות שחשבון משתמש יינעל בגלל מאפיינים שהוגדרו במדיניות הסיסמה. משתמש שהוקצה לו התפקיד sysadmin ב-Apigee יכול להשתמש בקריאת ה-API הבאה כדי לבטל את נעילת החשבון שלו. מחליפים את userEmail,‏ adminEmail ו-password בערכים אמיתיים.

כדי לבטל את הנעילה של משתמש:

/v1/users/userEmail/status?action=unlock -X POST -u adminEmail:password