Bật xác thực Cassandra

Theo mặc định, Cassandra sẽ cài đặt mà không bật tính năng xác thực. Điều đó có nghĩa là bất kỳ ai cũng có thể truy cập vào Cassandra. Bạn có thể bật tính năng xác thực sau khi cài đặt Edge hoặc trong quá trình cài đặt.

Nếu bạn quyết định bật tính năng xác thực trên Cassandra, thì Cassandra sẽ sử dụng thông tin đăng nhập mặc định sau:

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

Bạn có thể sử dụng tài khoản này, đặt mật khẩu khác cho tài khoản này hoặc tạo người dùng Cassandra mới. Thêm, xoá và sửa đổi người dùng bằng cách sử dụng các câu lệnh CREATE/ALTER/DROP USER của Cassandra.

Để biết thêm thông tin, hãy xem Lệnh shell SQL của Cassandra.

Bật tính năng xác thực Cassandra trong quá trình cài đặt

Bạn có thể bật tính năng xác thực Cassandra tại thời điểm cài đặt. Tuy nhiên, mặc dù có thể bật tính năng xác thực khi cài đặt Cassandra, nhưng bạn không thể thay đổi tên người dùng và mật khẩu mặc định. Bạn phải thực hiện bước đó theo cách thủ công sau khi cài đặt xong Cassandra.

Để bật tính năng xác thực Cassandra tại thời điểm cài đặt, hãy thêm thuộc tính CASS_AUTH vào tệp cấu hình cho tất cả các nút Cassandra:

CASS_AUTH=y # The default value is n.

Các thành phần Edge sau đây truy cập vào Cassandra:

  • Máy chủ quản lý
  • Bộ xử lý thông báo
  • Bộ định tuyến
  • Máy chủ Qpid
  • Máy chủ Postgres

Do đó, khi cài đặt các thành phần này, bạn phải đặt các thuộc tính sau trong tệp cấu hình để chỉ định thông tin đăng nhập Cassandra:

CASS_USERNAME=cassandra
CASS_PASSWORD=cassandra

Bạn có thể thay đổi thông tin đăng nhập Cassandra sau khi cài đặt Cassandra. Tuy nhiên, nếu đã cài đặt Máy chủ quản lý, Bộ xử lý thông báo, Bộ định tuyến, máy chủ Qpid hoặc máy chủ Postgres, thì bạn cũng phải cập nhật các thành phần đó để sử dụng thông tin đăng nhập mới.

Cách thay đổi thông tin đăng nhập Cassandra sau khi cài đặt Cassandra:

  1. Đăng nhập vào bất kỳ nút Cassandra nào bằng công cụ cqlsh và thông tin đăng nhập mặc định. Bạn chỉ cần thay đổi mật khẩu trên một nút và mật khẩu đó sẽ được truyền đến tất cả các nút Cassandra trong vòng:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    Trong trường hợp:

    1. cassIP là địa chỉ IP của nút Cassandra.
    2. 9042 là cổng Cassandra mặc định.
    3. Người dùng mặc định là cassandra.
    4. Mật khẩu mặc định là cassandra. Nếu bạn đã thay đổi mật khẩu trước đó, hãy sử dụng mật khẩu hiện tại. Nếu mật khẩu chứa ký tự đặc biệt, hãy đặt mật khẩu trong dấu nháy đơn.
  2. Thực thi lệnh sau tại lời nhắc cqlsh> để cập nhật mật khẩu:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  3. Thoát khỏi công cụ cqlsh, như trong ví dụ sau:
    exit
  4. Nếu bạn chưa cài đặt Máy chủ quản lý, Bộ xử lý thông báo, Bộ định tuyến, máy chủ Qpid hoặc máy chủ Postgres, hãy đặt các thuộc tính sau trong tệp cấu hình rồi cài đặt các thành phần đó:
    CASS_USERNAME=cassandra
    CASS_PASSWORD=NEW_PASSWORD
  5. Nếu bạn đã cài đặt Máy chủ quản lý, Bộ xử lý thông báo, Bộ định tuyến, máy chủ Qpid hoặc máy chủ Postgres, hãy xem phần Đặt lại mật khẩu Edge để biết quy trình cập nhật các thành phần đó nhằm sử dụng mật khẩu mới.

Bật tính năng xác thực Cassandra sau khi cài đặt

Cách bật tính năng xác thực:

  • Cập nhật tất cả thành phần Edge kết nối với Cassandra bằng tên người dùng và mật khẩu Cassandra.
  • Trên tất cả các nút Cassandra, hãy bật tính năng xác thực.
  • Đặt tên người dùng và mật khẩu Cassandra trên một nút bất kỳ. Bạn chỉ phải thay đổi thông tin đăng nhập trên một nút Cassandra và thông tin đăng nhập đó sẽ được truyền đến tất cả các nút Cassandra trong vòng.

Hãy làm theo quy trình sau để cập nhật tất cả thành phần Edge giao tiếp với Cassandra bằng thông tin đăng nhập mới. Lưu ý rằng bạn thực hiện bước này trước khi thực sự cập nhật thông tin đăng nhập Cassandra:

  1. Trên nút Máy chủ quản lý, hãy chạy lệnh sau:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server
      store_cassandra_credentials -u cassandra_username -p cassandra_password

    Nếu muốn, bạn có thể chuyển một tệp chứa tên người dùng và mật khẩu mới vào lệnh:

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

    Trong đó, configFile chứa các thông tin sau:

    CASS_USERNAME=cassandra_username # Default is cassandra
    CASS_PASSWORD='cassandra_password' # Default is cassandra; wrap in single quotes if it includes special chars

    Lệnh này sẽ tự động khởi động lại Máy chủ quản lý.

  2. Đối với mỗi dịch vụ sau đây, hãy lặp lại Bước 1:
    • Tất cả bộ xử lý thông báo
    • Tất cả bộ định tuyến
    • Tất cả máy chủ Qpid (edge-qpid-server)
    • Máy chủ Postgres (edge-postgres-server)

    Khi bạn lặp lại Bước 1 cho từng dịch vụ, hãy thay thế edge-management-server trong lệnh trên bằng tên dịch vụ thích hợp. Ví dụ: khi bạn thực thi bước cho dịch vụ Bộ định tuyến, hãy sử dụng lệnh sau:

    /opt/apigee/apigee-service/bin/apigee-service edge-router
      store_cassandra_credentials -u cassandra -p cassandra

Sử dụng quy trình sau để bật tính năng xác thực Cassandra, đồng thời đặt tên người dùng và mật khẩu:

  1. Đăng nhập vào nút Cassandra đầu tiên.
  2. Thực thi lệnh sau:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra
      enable_cassandra_authentication -e y

    Lệnh này bật tính năng xác thực và khởi động lại Cassandra.

  3. Lặp lại bước 1 và 2 trên tất cả các nút Cassandra.
  4. Đăng nhập vào bất kỳ nút Cassandra nào bằng công cụ cqlsh và thông tin đăng nhập mặc định. Bạn chỉ cần thay đổi mật khẩu trên một nút Cassandra và mật khẩu đó sẽ được phát đến tất cả các nút Cassandra trong vòng:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    Google AI Ultra for Business

    • cassIP là địa chỉ IP của nút Cassandra.
    • 9042 là cổng Cassandra.
    • Người dùng mặc định là cassandra.
    • Mật khẩu mặc định là cassandra. Nếu bạn đã thay đổi mật khẩu trước đó, hãy sử dụng mật khẩu hiện tại.
  5. Thực thi lệnh sau tại lời nhắc cqlsh> để cập nhật mật khẩu:
    ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  6. Thực thi lệnh sau tại lời nhắc cqlsh> để đảm bảo rằng không gian khoá luôn có sẵn.

    Đối với một trung tâm dữ liệu:

    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3'};

    Đối với hai trung tâm dữ liệu:

    ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-1': '3', 'dc-2': '3'};
  7. Thoát khỏi công cụ cqlsh:
    exit
  8. Chạy nodetool repair để đảm bảo rằng thay đổi được áp dụng cho tất cả các nút Cassandra, như trong ví dụ sau:
    /opt/apigee/apigee-cassandra/bin/nodetool [-u username -pw 'password'] repair system_auth

    Bạn chỉ cần truyền tên người dùng và mật khẩu nếu đã bật tính năng xác thực JMX cho Cassandra.