איפוס הסיסמאות של Edge

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

ההוראות לאיפוס כל אחת מהסיסמאות האלה מפורטות בקטעים הבאים.

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

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

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

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

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

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

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

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

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

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

  • שרת ניהול
  • ממשק משתמש

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

  1. עורכים את קובץ התצורה השקט שבו השתמשתם כדי להתקין את ממשק המשתמש של Edge כדי להגדיר את המאפיינים הבאים:
    APIGEE_ADMINPW=NEW_PASSWORD
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y
    SMTPMAILFROM="My Company <myco@company.com>"

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

  2. בצומת של ממשק המשתמש, מפסיקים את ממשק המשתמש של Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
  3. משתמשים בכלי apigee-setup כדי לאפס את הסיסמה בממשק המשתמש של Edge מקובץ התצורה:
    /opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
  4. (רק אם TLS מופעל בממשק המשתמש) מפעילים מחדש את TLS בממשק המשתמש של Edge, כפי שמתואר בקטע הגדרת TLS לממשק המשתמש לניהול.
  5. יוצרים קובץ XML חדש בשרת הניהול. בקובץ הזה, מגדירים את מזהה המשתמש כ-'admin' ומגדירים את הסיסמה, השם הפרטי, שם המשפחה וכתובת האימייל בפורמט הבא:
    <User id="admin">
      <Password><![CDATA[password]]></Password>
      <FirstName>first_name</FirstName>
      <LastName>last_name</LastName>
      <EmailId>email_address</EmailId>
    </User>
  6. בשרתי הניהול, מריצים את הפקודה הבאה:
    curl ‑u "admin_email_address:admin_password" ‑H \ 
      "Content‑Type: application/xml" ‑H "Accept: application/json" ‑X POST \ 
      "http://localhost:8080/v1/users/admin_email_address" ‑d @your_data_file

    כאשר your_data_file הוא הקובץ שיצרתם בשלב הקודם.

    Edge מעדכן את הסיסמה של האדמין בשרת הניהול.

  7. מוחקים את קובץ ה-XML שיצרתם. לעולם אסור לאחסן סיסמאות באופן קבוע בטקסט ללא הצפנה.

בסביבת רפליקציה של 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
cp ~/Documents/tmp/hybrid_root/apigeectl_beta2_a00ae58_linux_64/README.md 
  ~/Documents/utilities/README.md

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

USER_NAME=user@myCo.com
USER_PWD="Foo12345"
APIGEE_ADMINPW=ADMIN_PASSWORD

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

כללי סיסמאות של משתמשים בארגון ומנהלי מערכת (SysAdmin)

בקטע הזה אפשר לאכוף את אורך הסיסמה ואת חוזק הסיסמה הרצויים למשתמשים בניהול ה-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.required בחלק העליון של הקובץ כדי לקבוע אם הסיסמה תקינה או לא.

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. הוספה, הסרה ושינוי של משתמשים באמצעות השימוש בהצהרות CREATE/ALTER/DROP USER של Cassandra.

מידע נוסף על הפעלת אימות ב-Cassandra זמין במאמר הפעלת אימות ב-Cassandra.

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

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

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

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

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

    כאשר:

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

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

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

    אפשר גם להעביר קובץ לפקודה שמכילה את שם המשתמש והסיסמה החדשים:

    apigee-service edge-management-server store_cassandra_credentials -f configFile

    כאשר השדה configFile מכיל את הפרטים הבאים:

    CASS_USERNAME=CASS_USERNAME
    CASS_PASSWORD='CASS_PASSWROD'

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

  5. חוזרים על שלב 4 ב:
    • כל מעבדי ההודעות
    • כל הנתבים
    • כל שרתי Qpid‏ (edge-qpid-server)
    • שרתי Postgres‏ (edge-postgres-server)

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

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

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

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

  1. בצומת Master Postgres, משנים את הספריות ל-/opt/apigee/apigee-postgresql/pgsql/bin.
  2. מגדירים את הסיסמה של משתמש 'postgres' ב-PostgreSQL:
    1. מתחברים למסד הנתונים של PostgreSQL באמצעות הפקודה:
      psql -h localhost -d apigee -U postgres
    2. כשמוצגת בקשה, מזינים את הסיסמה הקיימת של המשתמש 'postgres' כ-'postgres'.
    3. בשורת הפקודה של PostgreSQL, מזינים את הפקודה הבאה כדי לשנות את סיסמת ברירת המחדל:
      ALTER USER postgres WITH PASSWORD 'new_password';

      אם הפעולה בוצעה בהצלחה, התגובה מ-PostgreSQL תהיה:

      ALTER ROLE
    4. יוצאים ממסד הנתונים של PostgreSQL באמצעות הפקודה הבאה:
      \q
  3. מגדירים את הסיסמה של משתמש 'apigee' ב-PostgreSQL:
    1. מתחברים למסד הנתונים של PostgreSQL באמצעות הפקודה:
      psql -h localhost -d apigee -U apigee
    2. כשמופיעה בקשה, מזינים את סיסמת המשתמש של 'apigee' בתור 'postgres'.
    3. בשורת הפקודה של PostgreSQL, מזינים את הפקודה הבאה כדי לשנות את סיסמת ברירת המחדל:
      ALTER USER apigee WITH PASSWORD 'new_password';
    4. יוצאים ממסד הנתונים של PostgreSQL באמצעות הפקודה:
      \q

    אפשר להגדיר את סיסמאות המשתמשים Postgres ו-apigee לאותו ערך או לערכים שונים.

  4. הגדרה של APIGEE_HOME:
    export APIGEE_HOME=/opt/apigee/edge-postgres-server
  5. מצפינים את הסיסמה החדשה:
    sh /opt/apigee/edge-analytics/utils/scripts/utilities/passwordgen.sh new_password

    הפקודה הזו מחזירה סיסמה מוצפנת. הסיסמה המוצפנת מתחילה אחרי התו ':' ולא כוללת את התו ':'. לדוגמה, הסיסמה המוצפנת של 'apigee1234' היא:

    Encrypted string:WheaR8U4OeMEM11erxA3Cw==
  6. מעדכנים את הצומת של שרת הניהול עם הסיסמאות החדשות המוצפנות של המשתמשים 'postgres' ו-'apigee'.
    1. בשרת הניהול, משנים את הספרייה ל-/opt/apigee/customer/application.
    2. עורכים את הקובץ management-server.properties כדי להגדיר את המאפיינים הבאים. אם הקובץ הזה לא קיים, יוצרים אותו.
    3. מוודאים שהקובץ בבעלות המשתמש 'apigee':
      chown apigee:apigee management-server.properties
  7. מעדכנים את הסיסמה החדשה המוצפנת בכל הצמתים של שרת Postgres ושל שרת Qpid.
    1. בצומת Postgres Server או Qpid Server, משנים את הספרייה הבאה:
      /opt/apigee/customer/application
    2. פותחים את הקבצים הבאים לעריכה:
      • postgres-server.properties
      • qpid-server.properties

      אם הקבצים האלה לא קיימים, יוצרים אותם.

    3. מוסיפים לקבצים את המאפיינים הבאים: .
      • 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. מעדכנים את רכיב ה-SSO (אם ה-SSO מופעל):
    1. מתחברים לצומת שבו פועל הרכיב apigee-sso או נכנסים אליו. הוא נקרא גם שרת SSO.

      בהתקנות ב-AIO או ב-3 צמתים, הצומת הזה הוא אותו הצומת של שרת הניהול.

      אם יש לכם כמה צמתים שמריצים את הרכיב apigee-sso, עליכם לבצע את השלבים האלה בכל צומת.

    2. פותחים את הקובץ הבא לעריכה:
      /opt/apigee/customer/application/sso.properties 

      אם הקובץ לא קיים, יוצרים אותו.

    3. מוסיפים את השורה הבאה לקובץ:
      conf_uaa_database_password=new_password_in_plain_text

      לדוגמה:

      conf_uaa_database_password=apigee1234
    4. מריצים את הפקודה הבאה כדי להחיל את השינויים בתצורה על הרכיב apigee-sso:
      /opt/apigee/apigee-service/bin/apigee-service apigee-sso configure
    5. חוזרים על השלבים האלה לכל שרת SSO.
  9. מפעילים מחדש את הרכיבים הבאים לפי הסדר הבא:
    1. מסד נתונים של PostgreSQL:
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
    2. שרת Qpid:
      /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    3. שרת Postgres:
      /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
    4. שרת ניהול:
      /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
    5. שרת SSO:
      /opt/apigee/apigee-service/bin/apigee-service apigee-sso restart