เปิดใช้การตรวจสอบสิทธิ์ Cassandra

Edge for Private Cloud v. 4.16.05

โดยค่าเริ่มต้น Cassandra จะติดตั้งโดยไม่มีการตรวจสอบสิทธิ์ ซึ่งหมายความว่าทุกคนสามารถเข้าถึง Cassandra คุณสามารถเปิดใช้การตรวจสอบสิทธิ์หลังจากติดตั้ง Edge หรือเป็นส่วนหนึ่งของกระบวนการติดตั้งก็ได้

ถ้าคุณตัดสินใจเปิดใช้งานการตรวจสอบสิทธิ์ใน Cassandra ระบบจะใช้ค่าเริ่มต้นต่อไปนี้ ข้อมูลเข้าสู่ระบบ:

  • username = 'cassandra'
  • password = 'cassandra'

คุณสามารถใช้บัญชีนี้ ตั้งรหัสผ่านอื่นสำหรับบัญชีนี้ หรือสร้างผู้ใช้ Cassandra ใหม่ได้ เพิ่ม นําออก และแก้ไขผู้ใช้โดยใช้คำสั่ง CREATE/ALTER/DROP USER ของ Cassandra

ดูข้อมูลเพิ่มเติมได้ที่ 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> ชื่อผู้ใช้สำรองที่มี Password 'NEW_PASSWORD';
  3. ออกจากเครื่องมือ cqlsh:
    cqlsh> ออก
  4. หากคุณยังไม่ได้ติดตั้งเซิร์ฟเวอร์การจัดการ, Message Processor เราเตอร์, เซิร์ฟเวอร์ Qpid, เซิร์ฟเวอร์ Postgres หรือสแต็ก BaaS ตั้งค่าคุณสมบัติต่อไปนี้ใน จากนั้นติดตั้งคอมโพเนนต์ต่อไปนี้
    CASS_USERNAME=cassandra
    CASS_PASSWORD=NEW_PASSWORD
  5. หากคุณติดตั้งเซิร์ฟเวอร์การจัดการไว้แล้ว ให้ไปที่ข้อความ โปรเซสเซอร์, เราเตอร์, เซิร์ฟเวอร์ Qpid, เซิร์ฟเวอร์ Postgres หรือ BaaS Stack จากนั้นดูที่การรีเซ็ตรหัสผ่าน Edge เพื่อดูขั้นตอนในการอัปเดตรหัสผ่านเหล่านั้น ให้ใช้รหัสผ่านใหม่

เปิดใช้การตรวจสอบสิทธิ์ 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

    (ไม่บังคับ) คุณสามารถส่งไฟล์ไปยังคำสั่งที่มีชื่อผู้ใช้และรหัสผ่านใหม่ได้ โดยทำดังนี้
    > apigee-service edge-management-server store_cassandra_credentials -f configFile

    โดยที่ configFile มีข้อมูลต่อไปนี้
    CASS_USERNAME=cassandra
    CASS_PASSWORD=CASS_PASSWROD


    คำสั่งนี้จะรีสตาร์ทเซิร์ฟเวอร์การจัดการโดยอัตโนมัติ
  2. ทำซ้ำขั้นตอนที่ 1 ใน:
    • Message Processor ทั้งหมด
    • เราเตอร์ทั้งหมด
    • เซิร์ฟเวอร์ 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:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050
    2. ตั้งค่าโทเค็นต่อไปนี้ใน /opt/apigee/customer/application/usergrid.properties หากไม่มีไฟล์อยู่ ให้สร้างไฟล์ดังกล่าว:
      usergrid-deployment_cassandra.username=cassandra
      usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050


      ตัวอย่างนี้ใช้ชื่อผู้ใช้เริ่มต้นสำหรับ Cassandra หากเปลี่ยนชื่อผู้ใช้แล้ว ให้ตั้งค่า ของ usergrid-deployment_cassandra.username ตามนั้น

      ตรวจสอบว่าได้ใส่คำนำหน้า "SECURE:" ในรหัสผ่าน มิฉะนั้น สแต็ก BaaS จะตีความค่าดังกล่าวว่าไม่ได้เข้ารหัส

      หมายเหตุ: โหนดสแต็ก BaaS แต่ละรายการมีคีย์ที่ไม่ซ้ำกันซึ่งใช้เข้ารหัส รหัสผ่าน คุณต้องสร้างค่าที่เข้ารหัสในโหนดสแต็ก BaaS แต่ละรายการ แยกกัน
    3. เปลี่ยนการเป็นเจ้าของไฟล์ usergrid.properties เป็น "Apigee" ผู้ใช้:
      > Chown apigee:apigee /opt/apigee/customer/application/usergrid.properties
    4. กำหนดค่าโหนดสแต็ก
      > /<inst_root>/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    5. รีสตาร์ทสแต็ก BaaS ด้วยคำสั่ง
      &gt; /<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'};
    สําหรับศูนย์ข้อมูล 2 แห่ง ให้ทำดังนี้
    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