הפעלת אימות קסנדרה

Edge for Private Cloud גרסה 4.16.09

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

אם תחליטו להפעיל את האימות ב-Cassandra, ייעשה שימוש בפרטי הכניסה הבאים שמוגדרים כברירת מחדל:

  • שם משתמש = 'cassandra'
  • password = 'cassandra'

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

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

הפעלת אימות של Cassandra במהלך ההתקנה

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

הערה: כשמתקינים את Cassandra, צריך להשתמש באפשרויות ' -p c', ' -p ds', ' -p sa', ' -p aio', ' -p asa' ו-' -p ebp'.

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

CASS_AUTH=y # The default value is n.

רכיבי Edge הבאים ניגשים אל Cassandra:

  • שרת ניהול
  • מעבדי הודעות
  • נתבים
  • שרתי Qpid
  • שרתי Postgres
  • מקבץ BaaS

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

CASS_USERNAME=cassandra 
CASS_PASSWORD=cassandra

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

כדי לשנות את פרטי הכניסה של Cassandra אחרי שמתקינים את Cassandra:

  1. מתחברים לצומת אחד של Cassandra באמצעות הכלי cqlsh ופרטי הכניסה שמוגדרים כברירת מחדל. צריך לשנות את הסיסמה רק בצומת אחד והיא תשודר לכל צומתי Cassandra בטבעת:
    > /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
    היכן:
    1. cassIP היא כתובת ה-IP של צומת Cassandra.
    2. 9042 היא יציאת ברירת המחדל של Cassandra.
    3. משתמש ברירת המחדל הוא cassandra.
    4. סיסמת ברירת המחדל היא cassandra. אם שינית את הסיסמה בעבר, יש להשתמש בסיסמה הנוכחית.
  2. מריצים את הפקודה הבאה בתור הנחיית cqlsh> כדי לעדכן את הסיסמה:
    cqlsh> ALTER USER cassandra WITH password 'NEW_PASSWORD';
  3. יוצאים מכלי ה-cqlsh:
    cqlsh> exit
  4. אם עדיין לא התקנתם את שרת הניהול, את מעבדי ההודעות, את הנתבים, שרתי Qpid, שרתי Postgres או מקבץ BaaS, עליכם להגדיר את המאפיינים הבאים בקובץ התצורה, ולאחר מכן להתקין את הרכיבים האלה:
    CASS_USERNAME=cassandra
    CASS_password=NEW_password
  5. אם כבר התקנתם את שרת הניהול, מעבדי ההודעות, הנתבים, שרתי Qpid, שרתי Postgres או ה-BaaS Stack, תוכלו לקרוא את המאמר Resetting Edge passwords כדי לעדכן את הרכיבים האלה כך שייעשה שימוש בסיסמה החדשה.

הפעלת ההתקנה של פוסט האימות של Cassandra

להפעלת האימות:

  • מעדכנים את כל רכיבי Edge שמתחברים ל-Cassandra באמצעות שם המשתמש והסיסמה של Cassandra.
  • הפעלת האימות בכל צומתי Cassandra.
  • מגדירים את שם המשתמש והסיסמה של Cassandra בכל צומת. צריך לשנות רק את פרטי הכניסה בצומת Cassandra, והם ישודרו לכל צומתי Cassandra בטבעת.

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

  1. בצומת של שרת הניהול, מריצים את הפקודה הבאה:
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u CASS_USERNAME -p CASS_password

    אופציונלי, אפשר להעביר קובץ לפקודה שמכילה את שם המשתמש והסיסמה החדשים של מנהל הקבצים
    > apigeservice-config קובץ
    > apigeservice Management




    configFile
  2. חוזרים על שלב 1:
    • כל מעבדי ההודעות
    • כל הנתבים
    • כל שרתי Qpid (edge-qpid-server)
    • שרתי Postgres (edge-postgres-server)
  3. בצומת 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:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service baas-usergrid הגדרה
    5. מפעילים מחדש את מקבץ BaaS:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service baas-usergrid הפעלה מחדש
    6. חוזרים על השלבים האלה לכל הנהנים של BaaS Stack.

תוכלו להשתמש בתהליך הבא כדי להפעיל את האימות של Cassandra ולהגדיר את שם המשתמש והסיסמה:

  1. מתחברים לצומת Cassandra הראשון.
  2. מריצים את הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra
      enable_cassandra_authentication -e y

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

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

    מיקום

    • cassIP היא כתובת ה-IP של צומת Cassandra.
    • 9042 הוא נמל Cassandra.
    • משתמש ברירת המחדל הוא cassandra.
    • סיסמת ברירת המחדל היא cassandra. אם שינית את הסיסמה בעבר, יש להשתמש בסיסמה הנוכחית.
  5. מריצים את הפקודה הבאה בהודעה cqlsh> כדי לעדכן את הסיסמה:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  6. מריצים את הפקודה הבאה בהודעה cqlsh> כדי להבטיח שמרחב המפתחות יהיה זמין תמיד. למרכז נתונים אחד:
    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};
    לשני מרכזי נתונים:
    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'};
  7. יוצאים מהכלי cqlsh:
    exit
  8. מריצים את הפקודה nodetool repair כדי לוודא שהשינוי יוחל על כל צומתי Cassandra:
    /opt/apigee/apigee-cassandra/bin/nodetool repair system_auth