איפוס סיסמאות קצה

Edge for Private Cloud גרסה 4.17.01

אחרי שההתקנה תסתיים, אפשר לאפס את ה-OpenLDAP, את מנהל המערכת של Apigee Edge, את המשתמש בארגון Edge ואת הסיסמאות של Cassandra.

איפוס סיסמת OpenLDAP

בהתאם להגדרות שלך ב-Edge, ניתן להתקין את OpenLDAP בתור:

  • מופע יחיד של OpenLDAP מותקן בצומת שרת הניהול. לדוגמה, בתצורת Edge עם 2 צמתים, 5 צמתים או 9 צמתים.
  • כמה מכונות OpenLDAP הותקנו בצמתים של שרת ניהול, שהוגדרו באמצעות שכפול של OpenLDAP. לדוגמה, בתצורת Edge עם 12 צמתים.
  • כמה מכונות OpenLDAP הותקנו בצמתים משלהן, שמוגדרות עם שכפול של OpenLDAP. לדוגמה, בתצורת Edge עם 13 צמתים.

איפוס הסיסמה של OpenLDAP תלוי בתצורה שקבעתם.

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

  1. בצומת של שרת הניהול, מריצים את הפקודה הבאה כדי ליצור את הסיסמה החדשה של OpenLDAP:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-openldap change-ldap-password -o oldPword -n newPword
  2. מריצים את הפקודה הבאה כדי לאחסן את הסיסמה החדשה לגישה על ידי שרת הניהול:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_ldap_credentials -p newPword

    פקודה זו מפעילה מחדש את שרת הניהול.

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

בהגדרת שכפול של OpenLDAP כאשר OpenLDAP נמצא בצומת שאינו שרת הניהול, צריך להקפיד לשנות קודם את הסיסמה בשני צומתי OpenLDAP, ואז בשני הצמתים של שרת הניהול.

איפוס הסיסמה של מנהל המערכת

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

  • שרת ניהול
  • UI

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

כדי לאפס את הסיסמה של מנהל המערכת:

  1. בצומת ממשק המשתמש, מפסיקים את ממשק המשתמש של Edge:
    > /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
  2. בשרת הניהול, מריצים את הפקודה הבאה כדי לאפס את הסיסמה:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server change_sysadmin_password -o currentPW -n newPW
  3. עורכים את קובץ התצורה השקטה שבו השתמשתם כדי להתקין את ממשק המשתמש של Edge כדי להגדיר את המאפיינים הבאים:
    APIGEE_ADMINPW=newPW
    SMTPHOST=smtp.gmail.com
    PORTPORT=465
    SMTPUSER=foo@gmail.com
    SMTPpassword=bar
    SMTPSSL=y


    יש לכלול את כל המאפיינים של SMTP כשמתבצעת העברה של מאפייני ה-SMTP החדשים, כי צריך לכלול את המאפיינים של ממשק ה-SMTP החדש כשמעבירים את מאפייני ה-SMTP החדשים.
  4. משתמשים בכלי apigee-setup כדי לאפס את הסיסמה בממשק המשתמש של Edge מקובץ התצורה:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
  5. (רק אם TLS מופעל בממשק המשתמש) הפעלה מחדש של TLS בממשק המשתמש של Edge כפי שמתואר בהגדרת TLS לממשק המשתמש לניהול.

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

איפוס סיסמת משתמש בארגון

כדי לאפס את הסיסמה של משתמש בארגון, צריך להשתמש בכלי השירות apigee-servce כדי להפעיל את apigee-setup:

/opt/apigee/apigee-service/bin/apigee-service apigee-setup reset_user_password
 [-h] 
 [-u USER_EMAIL] 
 [-p USER_PWD]
 [-a ADMIN_EMAIL] 
 [-P APIGEE_ADMINPW] 
 [-f configFile]

לדוגמה:

> /opt/apigee/apigee-service/bin/apigee-service apigee-setup reset_user_password -u user@myCo.com -p foo12345 -a admin@myCo.com -P adminPword 

למטה מוצג קובץ תצורה לדוגמה שניתן להשתמש בו עם האפשרות ' -f':

USER_NAME= user@myCo.com
USER_PWD= "foo12345"
APIGEE_ADMINPW= adminPword

אפשר גם להשתמש ב-Update user ה-API כדי לשנות את סיסמת המשתמש.

כללי סיסמה לאדמין ולמשתמש ארגוני

בקטע הזה אפשר לאכוף את הרמה הרצויה של אורך וחוזק הסיסמה עבור המשתמשים בניהול ה-API. ההגדרות משתמשות בסדרה של ביטויים רגולריים שהוגדרו מראש (עם מספרים ייחודיים) כדי לבדוק את תוכן הסיסמה (כמו אותיות רישיות, אותיות קטנות, מספרים ותווים מיוחדים). כתוב את ההגדרות האלה בקובץ /opt/apigee/customer/application/management-server.properties. אם הקובץ לא קיים, יוצרים אותו.

אחרי שעורכים את management-server.properties, הפעילו מחדש את שרת הניהול:

> /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

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

נכסים

תיאור

conf_security_password.validation.minimum.
password.length=8

conf_security_password.validation.default.rating=2

conf_security_password.validation.minimum.
rating.required=3

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

שימו לב שהערך בשדה password.validation.default.rating=2 נמוך מהדירוג המינימלי הנדרש. כלומר, אם הזנת סיסמה לא תואמת לכללים שהגדרתם, הסיסמה מסווגת כ-2 ולכן היא לא חוקית (מתחת לדירוג המינימלי של 3).

בהמשך מופיעים ביטויים רגולריים שמזהים מאפייני סיסמה. חשוב לשים לב שכל פרמטר ממוספר. לדוגמה, "password.validation.regex.5=..." הוא ביטוי מספר 5. המספרים האלה ישמשו אתכם בקטע מאוחר יותר בקובץ כדי להגדיר שילובים שונים שיקבעו את חוזק הסיסמה הכולל.

conf_security_password.validation.regex.1=^(.)\\1+$

1 – כל התווים חוזרים על עצמם

conf_security_password.validation.regex.2=^.*[a-z]+.*$

2 – לפחות אות קטנה אחת

conf_security_password.validation.regex.3=^.*[A-Z]+.*$

3 – אות גדולה אחת לפחות

conf_security_password.validation.regex.4=^.*[0-9]+.*$

4 – לפחות ספרה אחת

conf_security_password.validation.regex.5=^.*[^a-zA-z0-9]+.*$

5 – לפחות תו מיוחד אחד (לא כולל קו תחתון _)

conf_security_password.validation.regex.6=^.*[_]+.*$

6 – לפחות קו תחתון אחד

conf_security_password.validation.regex.7=^.*[a-z]{2,}.*$

7 – יותר מאות קטנה אחת

conf_security_password.validation.regex.8=^.*[A-Z]{2,}.*$

8 – יותר מאות גדולה אחת

conf_security_password.validation.regex.9=^.*[0-9]{2,}.*$

9 – יותר מספרה אחת

conf_security_password.validation.regex.10=^.*[^a-zA-z0-9]{2,}.*$

10 – יותר מתו מיוחד אחד (לא כולל קו תחתון)

conf_security_password.validation.regex.11=^.*[_]{2,}.*$

11 – יותר מקו תחתון אחד

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

conf_security_password.validation.rule.1=1,AND,0

conf_security_password.validation.rule.2=2,3,4,AND,4

conf_security_password.validation.rule.3=2,9,AND,4

conf_security_password.validation.rule.4=3,9,AND,4

conf_security_password.validation.rule.5=5,6,OR,4

conf_security_password.validation.rule.6=3,2,AND,3

conf_security_password.validation.rule.7=2,9,AND,3

conf_security_password.validation.rule.8=3,9,AND,3

כל כלל הוא ממוספר. לדוגמה, "password.validation.rule.3=..." הוא כלל מספר 3.

לכל כלל נעשה שימוש בפורמט הבא (מימין לסימן השווה):

<regex-index-list>,<AND|OR>,<rating>

regex-index-list היא הרשימה של הביטויים הרגולריים (לפי מספר מהקטע הקודם), יחד עם אופרטור AND|OR (כלומר, צריך להתייחס לכל הביטויים שמפורטים או לכולם).

rating הוא דירוג העוצמה המספרי שניתן לכל כלל.

לדוגמה, כלל 5 פירושו שכל סיסמה עם תו מיוחד אחד לפחות או קו תחתון אחד מקבלת דירוג חוזק של 4. עם password.validation.minimum.
Rating.required=3 בחלק העליון של הקובץ, קיימת סיסמה עם דירוג של 4.

conf_security_rbac.password.validation.enabled=true

להגדיר את אימות הסיסמה של בקרת גישה מבוססת-תפקיד כ-FALSE כשכניסה יחידה (SSO) מופעלת. ברירת המחדל היא TRUE.

איפוס הסיסמה של Cassandra

כברירת מחדל, Cassandra שולחת את התהליך כשהאימות מושבת. כשמפעילים את האימות, נעשה בו שימוש במשתמש מוגדר מראש בשם 'cassandra' עם הסיסמה 'cassandra'. יש לך אפשרות להשתמש בחשבון הזה, להגדיר סיסמה אחרת לחשבון הזה או ליצור משתמש חדש ב-Cassandra. אפשר להוסיף, להסיר ולשנות משתמשים באמצעות הצהרות המשתמש של Cassandra CREATE/ALTER/DROP.

למידע על האופן שבו מפעילים אימות של Cassandra, אפשר לעיין במאמר הפעלת אימות של Cassandra.

כדי לאפס את הסיסמה של Cassandra, עליך:

  • מגדירים את הסיסמה בכל צומת של Cassandra, והיא תשודר לכל צומתי Cassandra בטבעת
  • עדכון של שרת הניהול, מעבדי ההודעות, הנתבים, שרתי Qpid, שרתי Postgres ו-BaaS Stack בכל צומת, באמצעות הסיסמה החדשה.

מידע נוסף זמין בכתובת http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/cqlCommandsTOC.html.

כדי לאפס את הסיסמה של Cassandra:

  1. מתחברים לצומת אחד של Cassandra באמצעות הכלי cqlsh ופרטי הכניסה שמוגדרים כברירת מחדל. צריך לשנות את הסיסמה רק בצומת Cassandra אחת והיא תשודר לכל צומתי Cassandra בטבעת:
    > /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    היכן:
    • cassIP היא כתובת ה-IP של צומת Cassandra.
    • 9042 היא יציאת Cassandra.
    • משתמש ברירת המחדל הוא cassandra.
    • סיסמת ברירת המחדל היא cassandra. אם שינית את הסיסמה בעבר, יש להשתמש בסיסמה הנוכחית.
  2. מריצים את הפקודה הבאה בתור הנחיית cqlsh> כדי לעדכן את הסיסמה:
    cqlsh> ALTER USER cassandra WITH password 'NEW_PASSWORD';

    אם הסיסמה החדשה מכילה תו מירכאות יחיד, יש להוסיף מירכאות לפני ואחריה תו מירכאות יחיד.
  3. יוצאים מהכלי cqlsh:
    cqlsh> exit
  4. בצומת של שרת הניהול, מריצים את הפקודה הבאה:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u CASS_USERNAME -p CASS_password

    לחלופין, אפשר להעביר קובץ לפקודה שמכילה את שם המשתמש החדש sanSS-config עם קובץ הפעלה מחדש
    הפקודה 'קובץ ניהול מחדש'
    וקובץ התצורה הפעיל מחדש




  5. חוזרים על שלב 4:
    • כל מעבדי ההודעות
    • כל הנתבים
    • כל שרתי Qpid (edge-qpid-server)
    • שרתי Postgres (edge-postgres-server)
  6. בצומת BaaS Stack בגרסה 4.16.05.04 ואילך:
    1. כדי ליצור סיסמה מוצפנת, מריצים את הפקודה הבאה:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid secure_password

      הפקודה הזו מבקשת סיסמה בפורמט טקסט פשוט ומחזירה את הסיסמה המוצפנת:
      SECURE:ae1b6dedbf6b260807556b2514553
    2. צריך להגדיר את האסימונים הבאים ב-/opt/apigee/customer/application/usergrid.properties. אם הקובץ לא קיים, יוצרים אותו:
      usergrid-deployment_cassandra.username=cassandra
      usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f09e4g1c15b55f39e4c15b55f39e0
      example

      אם שינית את שם המשתמש, צריך להגדיר בהתאם את הערך של usergrid-deployment_cassandra.username.

      חשוב לכלול את הקידומת "SECURE:" בסיסמה. אחרת, מקבץ BaaS יפרש את הערך כלא מוצפן.

      הערה: לכל צומת ב-BaaS Stack יש מפתח ייחודי משלו להצפנת הסיסמה. לכן צריך ליצור את הערך המוצפן בכל צומת ב-BaaS Stack בנפרד.
    3. משנים את הבעלות על הקובץ usergrid.properties למשתמש 'apigee':
      > chown apigee:apigee /opt/apigee/customer/application/usergrid.properties
    4. מגדירים את צומת ה-Stack:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configuration
    5. מפעילים מחדש את מחסנית BaaS:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid הפעלה מחדש
    6. חוזרים על השלבים האלה לכל הנהנים של BaaS Stack.

הסיסמה של Cassandra השתנתה.

איפוס הסיסמה של PostgreSQL

כברירת מחדל, מסד הנתונים PostgreSQL כולל שני משתמשים מוגדרים: 'postgres' ו-'apigee'. לשני המשתמשים יש סיסמת ברירת מחדל מסוג 'postgres'. כך משנים את סיסמת ברירת המחדל:

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

  1. בצומת ראשי Postgres, משנים את הספרייה ל-/opt/apigee/apigee-postgresql/pgsql/bin.
  2. מגדירים את סיסמת המשתמש של PostgreSQL מסוג 'postgres':
    1. צריך להתחבר למסד הנתונים PostgreSQL באמצעות הפקודה:
      > psql -h localhost -d apigee -U postgres
    2. כשמופיעה בקשה, מזינים את סיסמת המשתמש 'postgres' כ-'postgres'.
    3. בשורת הפקודה של PostgreSQL, מזינים את הפקודה הבאה כדי לשנות את סיסמת ברירת המחדל:
      apigee=> ALTER USER postgres WITH password 'apigee1234';
    4. יוצאים ממסד הנתונים של PostgreSQL באמצעות הפקודה:
      apigee=> \q
  3. מגדירים את סיסמת המשתמש של PostgreSQL 'apigee':
    1. צריך להתחבר למסד הנתונים PostgreSQL באמצעות הפקודה:
      > psql -h localhost -d apigee -U apigee
    2. כאשר תופיע הנחיה, הזינו את סיסמת המשתמש 'apigee' כ-'postgres'.
    3. בשורת הפקודה של PostgreSQL, מזינים את הפקודה הבאה כדי לשנות את הסיסמה שבברירת המחדל:
      apigee=> ALTER USER apigee WITH password 'apigee1234';
    4. יוצאים ממסד הנתונים של PostgreSQL באמצעות הפקודה:
      apigee=> \q
  4. מגדירים את APIGEE_HOME:
    > ייצוא APIGEE_Home=/opt/apigee/edge-postgres-server
  5. הצפנת הסיסמה החדשה:
    > sh /opt/apigee/edge-postgres-server/utils/scripts/utilities/passwordgen.sh apigee1234

    פקודה זו מחזירה את הסיסמה המוצפנת, כפי שמוצג בהמשך. הסיסמה המוצפנת מתחילה אחרי התו ":" ולא כוללת את הסימן ":".
    מחרוזת מוצפנת :WheaR8U4OeMEM11erxA3Cw==
  6. מעדכנים את הצומת של שרת הניהול בסיסמאות המוצפנות החדשות למשתמשים 'postgres' ו-'apigee'.
    1. בשרת הניהול, משנים את הספרייה ל-/opt/apigee/customer/application.
    2. עורכים את הקובץ management-server.properties כדי להגדיר את המאפיינים הבאים. אם הקובץ לא קיים, יוצרים אותו:
      הערה: חלק מהנכסים מקבלים את סיסמת המשתמש המוצפנת 'postgres', וחלקם מקבלים את סיסמת המשתמש מוצפנת 'apige'.
      • conf_pg-agent_password=newEncryptedPasswordForPostgresUser
      • conf_pg-ingest_password=newEncryptedPasswordForPostgresUser
      • conf_query-service_pgDefaultPwd=newEncryptedPasswordForApigeeUser
      • conf_query-service_dwDefaultPwd=newEncryptedPasswordForApigeeUser
      • conf_analytics_aries.pg.password=newEncryptedPasswordForPostgresUser
    3. מוודאים שהקובץ שייך למשתמש 'apigee':
      > chown apigee:apigee management-server.properties
  7. עדכון כל הצמתים של שרת Postgres ושרת Qpid בסיסמה המוצפנת החדשה.
    1. בשרת Postgres או בצומת ה-Qpid, משנים את הספרייה ל-/opt/apigee/customer/application.
    2. יש לערוך את הקבצים הבאים. אם הקבצים האלה לא קיימים, יוצרים אותם:
      • postgres-server.properties
      • qpid-server.properties
    3. מוסיפים לקבצים את המאפיינים הבאים:
      הערה: כל המאפיינים האלה מקבלים את סיסמת המשתמש המוצפנת 'postgres'.
      • conf_pg-agent_password=newEncryptedPasswordForPostgresUser
      • conf_pg-ingest_password=newEncryptedPasswordForPostgresUser
      • conf_query-service_pgDefaultPwd=newEncryptedPasswordForPostgresUser
      • conf_query-service_dwDefaultPwd=newEncryptedPasswordForPostgresUser
      • conf_analytics_aries.pg.password=newEncryptedPasswordForPostgresUser
    4. מוודאים שהקבצים בבעלות המשתמש apigee:
      > chown apigee:apigee postgres-server.properties
      > chown apigee:apigee qpid-server.properties
  8. מפעילים מחדש את הרכיבים הבאים לפי הסדר:
    1. מסד נתונים PostgreSQL:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql הפעלה מחדש
    2. שרת Qpid:
      > /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server מחדש
    3. Postgres Server:
      > /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server מחדש
    4. שרת ניהול:
      > /opt/apigee/apigee-service/bin/apigee-service edge-management-server הפעלה מחדש