โดยค่าเริ่มต้น Cassandra จะติดตั้งโดยไม่มีการตรวจสอบสิทธิ์ ซึ่งหมายความว่าทุกคนสามารถเข้าถึง Cassandra คุณสามารถเปิดใช้การตรวจสอบสิทธิ์หลังจากติดตั้ง Edge หรือเป็นส่วนหนึ่งของกระบวนการติดตั้งก็ได้
คุณเพิ่ม นำออก และแก้ไขบทบาทได้โดยใช้คำสั่ง Cassandra CREATE
/ALTER
/DROP ROLES
โปรดดูข้อมูลต่อไปนี้สำหรับข้อมูลเพิ่มเติม
ข้อควรพิจารณาทั่วไป
- ขณะที่คุณเปิดใช้การตรวจสอบสิทธิ์ Cassandra ผู้ใช้ขั้นสูงเริ่มต้น cassandra (ที่มีรหัสผ่าน cassandra) จะสร้างโดยอัตโนมัติโดย Cassandra ผู้ใช้รายนี้เป็นผู้ใช้ระดับสูงซึ่งเป็นที่รู้จักอย่างกว้างขวาง และคุณไม่ควรใช้ผู้ใช้รายนี้สำหรับความต้องการในการผลิต นอกจากนี้ การตรวจสอบสิทธิ์ผ่านผู้ใช้ที่ดูแลระบบระดับนี้ต้องมีความสอดคล้องกันของจำนวนสมาชิกขั้นต่ำ ดังนั้น การเชื่อมต่อทั้งหมดไปยังการตรวจสอบสิทธิ์ของ Cassandra ผ่านผู้ใช้รายนี้ต้องใช้ความสอดคล้องที่เข้มงวดกว่า ซึ่งส่งผลให้ประสิทธิภาพการทำงานช้าลงและทนต่อความผิดพลาดน้อยลง
- เวิร์กโฟลว์ทั่วไปจะเกี่ยวข้องกับการเปิดใช้การตรวจสอบสิทธิ์ใน Cassandra ขณะส่งชื่อผู้ใช้และรหัสผ่านที่กำหนดเองผ่านไฟล์การกําหนดค่า การดำเนินการนี้จะสร้างผู้ใช้และรหัสผ่านที่กำหนดเองซึ่งสามารถใช้กับความต้องการได้อย่างปลอดภัย และการตรวจสอบสิทธิ์ผ่านผู้ใช้ดังกล่าวจะไม่มีข้อจำกัดเรื่องความสอดคล้องกันขององค์การ
- โปรดทราบว่าแม้ว่าระบบอาจสร้างผู้ใช้ที่กําหนดเองแล้ว แต่ Cassandra จะยังคงสร้างผู้ใช้ที่ดูแลระบบ cassandra เริ่มต้น และเข้าถึงคลัสเตอร์ Cassandra ผ่านผู้ใช้ที่ดูแลระบบได้ โดยทั่วไปแล้ว คุณควรใช้คำสั่งบทบาทสำรองเพื่อเปลี่ยนรหัสผ่านของผู้ใช้ cassandra ไปเป็นชื่ออื่นที่ไม่ใช่ cassandra เริ่มต้นหลังจากเปิดใช้การตรวจสอบสิทธิ์ Cassandra ทั้งหมดใน Apigee เรียบร้อย บันทึกรหัสผ่านนี้ไว้ใช้อ้างอิงในอนาคต
- คุณไม่ควรเปลี่ยนรหัสผ่านของบทบาทที่คอมโพเนนต์ edge-* ใช้ในการตรวจสอบสิทธิ์ เนื่องจากจะทำให้บริการหยุดชะงักทันที แต่คุณควรสร้างผู้ใช้ใหม่ แก้ไขคอมโพเนนต์ edge-* เพื่อใช้ผู้ใช้ใหม่ และเมื่อยืนยันเสร็จแล้ว ให้ปล่อยผู้ใช้เก่าโดยใช้คำสั่งออกจากบทบาท
- หากต้องการเปลี่ยนบทบาทที่คอมโพเนนต์ edge-* ใช้สำหรับการตรวจสอบสิทธิ์ Cassandra ให้ทำตามขั้นตอนต่อไปนี้
- ทำตามขั้นตอนในส่วนที่ชื่อว่าเปิดใช้การตรวจสอบสิทธิ์เพื่อสร้างผู้ใช้ใหม่ โปรดทราบว่าหากเปิดใช้การตรวจสอบสิทธิ์ในคลัสเตอร์ของคุณแล้วและคุณได้เปลี่ยนรหัสผ่านของผู้ใช้ cassandra คุณจะต้องส่งชื่อผู้ใช้/รหัสผ่านของผู้ใช้ที่มีอยู่ผ่าน
CASS_EXISTING_USERNAME
และCASS_EXISTING_PASSWORD
- เมื่อดำเนินการเสร็จแล้ว ให้ตรวจสอบผ่าน cqlsh ว่าคุณเชื่อมต่อกับ Cassandra ผ่านทั้งผู้ใช้เก่าและใหม่ได้
- กำหนดให้คอมโพเนนต์ edge-* ทั้งหมดใช้ผู้ใช้ที่สร้างใหม่เพื่อเชื่อมต่อกับ Cassandra โดยทำตามวิธีการในอัปเดตคอมโพเนนต์ Edge ที่เชื่อมต่อกับ Cassandra
- สุดท้าย เมื่อคอมโพเนนต์ทั้งหมดใช้ผู้ใช้ใหม่เพื่อสื่อสารกับ Cassandra แล้ว คุณสามารถยกเลิกผู้ใช้เก่าได้โดยใช้คำสั่ง
DROP ROLE
โปรดทราบว่าไม่ควรยกเลิกบทบาท cassandra เริ่มต้น คุณทิ้งบทบาทที่สร้างขึ้นที่กำหนดเองซึ่งคอมโพเนนต์ edge-* ไม่ได้ใช้งานเพื่อสื่อสารกับ Cassandra ได้
- ทำตามขั้นตอนในส่วนที่ชื่อว่าเปิดใช้การตรวจสอบสิทธิ์เพื่อสร้างผู้ใช้ใหม่ โปรดทราบว่าหากเปิดใช้การตรวจสอบสิทธิ์ในคลัสเตอร์ของคุณแล้วและคุณได้เปลี่ยนรหัสผ่านของผู้ใช้ cassandra คุณจะต้องส่งชื่อผู้ใช้/รหัสผ่านของผู้ใช้ที่มีอยู่ผ่าน
- อย่าลืมอัปเดตชื่อผู้ใช้และรหัสผ่านของ Cassandra ที่ทำงานในไฟล์การกำหนดค่าที่คุณใช้สำหรับติดตั้งหรืออัปเกรดคอมโพเนนต์ Edge วิธีนี้จะช่วยขจัดหรือลดการหยุดชะงักระหว่างการดำเนินการของอุปกรณ์ขอบ
เปิดใช้การตรวจสอบสิทธิ์ Cassandra ระหว่าง การติดตั้ง
คุณเปิดใช้การตรวจสอบสิทธิ์ Cassandra ได้ในเวลาที่ติดตั้ง
หากต้องการเปิดใช้การตรวจสอบสิทธิ์ Cassandra เมื่อติดตั้ง ให้ใส่ CASS_AUTH
ในไฟล์การกำหนดค่าสำหรับโหนด Cassandra ทั้งหมด:
CASS_AUTH=y # The default value is n.
คอมโพเนนต์ Edge ต่อไปนี้เข้าถึง Cassandra
- เซิร์ฟเวอร์การจัดการ
- ตัวประมวลผลข้อความ
- เราเตอร์
- เซิร์ฟเวอร์ Qpid
- เซิร์ฟเวอร์ Postgres
เมื่อคุณติดตั้งคอมโพเนนต์เหล่านี้ คุณต้องตั้งค่าชื่อผู้ใช้และรหัสผ่านในส่วน ไฟล์การกำหนดค่าอยู่ที่ตำแหน่งต่อไปนี้
CASS_USERNAME=cassandra_username CASS_PASSWORD=cassandra_password
คุณเปลี่ยนข้อมูลเข้าสู่ระบบ Cassandra ได้หลังจากติดตั้ง Cassandra แล้ว อย่างไรก็ตาม หากคุณมี ติดตั้งเซิร์ฟเวอร์การจัดการ, ตัวประมวลผลข้อความ, เราเตอร์, เซิร์ฟเวอร์ Qpid หรือ Postgres แล้ว คุณต้องอัปเดตคอมโพเนนต์เหล่านั้นเพื่อใช้ข้อมูลเข้าสู่ระบบใหม่ด้วย
หากต้องการเปลี่ยนข้อมูลเข้าสู่ระบบ Cassandra หลังจากติดตั้ง Cassandra ให้ทำดังนี้
- เข้าสู่ระบบโหนด Cassandra ใดก็ได้โดยใช้เครื่องมือ
cqlsh
และค่าเริ่มต้น ข้อมูลเข้าสู่ระบบ คุณต้องเปลี่ยนรหัสผ่านในโหนดเดียวและระบบจะเผยแพร่ให้กับทุกคน โหนด Cassandra ในวงแหวน:/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra_username -p cassandra_password
สถานที่:
- cassIP คือที่อยู่ IP ของโหนด Cassandra
- 9042 คือพอร์ตเริ่มต้นของ Cassandra
- เรียกใช้คำสั่งต่อไปนี้ที่ cqlsh> ให้อัปเดตรหัสผ่านดังนี้
ALTER ROLE <username> WITH PASSWORD='
'; - ออกจากเครื่องมือ
cqlsh
ตามตัวอย่างต่อไปนี้exit
- หากยังไม่ได้ติดตั้งเซิร์ฟเวอร์การจัดการ เครื่องประมวลผลข้อความ รูทเตอร์ เซิร์ฟเวอร์ Qpid หรือเซิร์ฟเวอร์ Postgres ให้ตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้ในไฟล์การกําหนดค่า แล้วติดตั้งคอมโพเนนต์เหล่านั้น
CASS_USERNAME=cassandra_username CASS_PASSWORD=new_cassandra_password
- หากคุณติดตั้งเซิร์ฟเวอร์การจัดการไว้แล้ว ให้ไปที่ข้อความ โปรเซสเซอร์, เราเตอร์, เซิร์ฟเวอร์ Qpid หรือเซิร์ฟเวอร์ Postgres โปรดดูที่การรีเซ็ตรหัสผ่าน Edge เพื่อดูขั้นตอนในการอัปเดตรหัสผ่านเหล่านั้น ให้ใช้รหัสผ่านใหม่
เปิดใช้การตรวจสอบสิทธิ์ Cassandra หลังการติดตั้ง
วิธีเปิดใช้การตรวจสอบสิทธิ์หลังจากการติดตั้ง
- อัปเดตคอมโพเนนต์ Edge ทั้งหมดที่เชื่อมต่อกับ Cassandra ด้วยชื่อผู้ใช้ Cassandra และ รหัสผ่าน
- เปิดใช้การตรวจสอบสิทธิ์ในโหนด Cassandra ทั้งหมด และตั้งค่าชื่อผู้ใช้และรหัสผ่าน Cassandra ในโหนดใดก็ได้ คุณต้องเปลี่ยน ข้อมูลเข้าสู่ระบบในโหนด Cassandra หนึ่งโหนด และจะเผยแพร่ไปยังโหนด Cassandra ทั้งหมดใน ส่งเสียง
อัปเดตคอมโพเนนต์ Edge ที่เชื่อมต่อกับ Cassandra
ใช้ขั้นตอนต่อไปนี้เพื่ออัปเดตคอมโพเนนต์ Edge ทั้งหมดที่สื่อสารกับ Cassandra ด้วยข้อมูลเข้าสู่ระบบใหม่ โปรดทำขั้นตอนนี้ก่อนที่จะอัปเดต Cassandra ข้อมูลเข้าสู่ระบบ:
- เรียกใช้คำสั่งต่อไปนี้ในโหนดเซิร์ฟเวอร์การจัดการ
/opt/apigee/apigee-service/bin/apigee-service edge-management-server store_cassandra_credentials -u cassandra_username -p cassandra_password
หรือคุณสามารถส่งไฟล์ไปยังคำสั่งที่มีชื่อผู้ใช้และรหัสผ่านใหม่ได้ดังนี้
apigee-service edge-management-server store_cassandra_credentials -f configFile
โดยที่ configFile มีข้อมูลต่อไปนี้
CASS_USERNAME=cassandra_username # Default is cassandra CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special chars
คำสั่งนี้จะรีสตาร์ทเซิร์ฟเวอร์การจัดการโดยอัตโนมัติ
- ทำซ้ำขั้นตอนที่ 1 สำหรับแต่ละบริการต่อไปนี้
- ตัวประมวลผลข้อความทั้งหมด
- เราเตอร์ทั้งหมด
- เซิร์ฟเวอร์ Qpid ทั้งหมด (edge-qpid-server)
- เซิร์ฟเวอร์ Postgres (edge-postgres-server)
เมื่อคุณทำซ้ำขั้นตอนที่ 1 สำหรับแต่ละบริการ ให้แทนที่
edge-management-server
ใน ข้างต้นด้วยชื่อบริการที่เหมาะสม ตัวอย่างเช่น เมื่อคุณดำเนินการตามขั้นตอนสำหรับ ให้ใช้คำสั่งต่อไปนี้/opt/apigee/apigee-service/bin/apigee-service edge-router store_cassandra_credentials -u cassandra -p cassandra
เปิดใช้การตรวจสอบสิทธิ์
ใช้ขั้นตอนต่อไปนี้เพื่อเปิดใช้งานการตรวจสอบสิทธิ์ Cassandra และตั้งชื่อผู้ใช้และ รหัสผ่าน:
- สร้างไฟล์การกำหนดค่าที่ผู้ใช้ไม่ต้องดำเนินการโดยมีเนื้อหาดังต่อไปนี้
# Specify IP address or DNS name of cassandra node IP1=192.168.1.1 IP2=192.168.1.2 IP3=192.168.1.3 # Must resolve to IP address or DNS name of host HOSTIP=$(hostname -i) # Set to ‘y’ to enable Cassandra authentication. CASS_AUTH=y # Possible values are ‘y/n’ # Cassandra username. If it does not exist, this user would be created as a SUPERUSER CASS_USERNAME=cassandra_username # Default value is cassandra - don't use for production # Cassandra Password. If CASS_USERNAME does not exist, create SUPERUSER with this as password CASS_PASSWORD=cassandra_password # Default value is cassandra - don't use for production # Space-separated IP/DNS names of the Cassandra hosts CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Username of an existing C* user. Only needed if you have disabled or changed details of the default cassandra user(‘cassandra’) CASS_EXISTING_USERNAME=existing_cassandra_username # Password of an existing C* user. Only needed if you have disabled or change password of the default cassandra user(‘cassandra’) CASS_EXISTING_PASSWORD=existing_cassandra_password # Cassandra port CASS_PORT=9042 # The default port is 9042.
เข้าสู่ระบบโหนด Cassandra แรกและเรียกใช้คําสั่งต่อไปนี้
apigee-service apigee-cassandra enable_cassandra_authentication -f CONFIG
คุณส่งพร็อพเพอร์ตี้เป็นอาร์กิวเมนต์คำสั่งไปยังสคริปต์ได้ (ไม่บังคับ) ดังที่แสดงในตัวอย่างต่อไปนี้
CASS_AUTH=y HOSTIP=$(hostname -i) CASS_PORT=9042 CASS_EXISTING_USERNAME=existing_cassandra_username CASS_EXISTING_PASSWORD=existing_cassandra_password CASS_USERNAME=cassandra_username CASS_PASSWORD=cassandra_password CASS_HOSTS="192.168.1.1:1,1 192.168.1.2:1,1 192.168.1.3:1,1" apigee-service apigee-cassandra enable_cassandra_authentication
หมายเหตุ
- สําหรับข้อมูลเข้าสู่ระบบ Cassandra เริ่มต้น คําสั่งข้างต้นจะเปิดใช้การตรวจสอบสิทธิ์ Cassandra และรีสตาร์ท Cassandra
- สําหรับข้อมูลเข้าสู่ระบบที่ไม่ใช่ค่าเริ่มต้น คำสั่งนี้จะเปลี่ยนปัจจัยการจําลอง สร้างผู้ใช้ขั้นสูง และเรียกใช้การซ่อมใน
system_auth keyspace
ด้วย
- ทำซ้ำขั้นตอนที่ 1 และ 2 กับโหนด Cassandra ทั้งหมด