Bật xác thực Cassandra

Edge cho Private Cloud phiên bản 4.17.01

Theo mặc định, Cassandra 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, phương thức này sẽ sử dụng thông tin xác thực mặc định sau đây:

  • 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âu lệnh CREATE/ALTER/DROP USER của Cassandra.

Để biết thêm thông tin, hãy xem http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/cqlCommandsTOC.html.

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 dưới dạng thời gian 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 Cassandra xong.

Lưu ý: Sử dụng quy trình này khi cài đặt Cassandra bằng các tuỳ chọn "-p c", "-p ds", "-p sa", "-p aio", "-p asa" và "-p ebp".

Để bật tính năng xác thực Cassandra tại thời điểm cài đặt, hãy đưa 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ý tin nhắn
  • Bộ định tuyến
  • Máy chủ Qpid
  • Máy chủ Postgres
  • Ngăn xếp BaaS

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

CASS_USERNAME=cassandra 
CASS_PASSWORD=cassandra

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

Cách thay đổi thông tin xác thực 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 xác thực 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 tròn:
    > /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra
    Trong đó:
    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 trước đây bạn đã đổi mật khẩu, hãy sử dụng mật khẩu hiện tại.
  2. Chạy lệnh sau theo lời nhắc cqlsh> để cập nhật mật khẩu:
    cqlsh> ALTER USER cassandra WITH PASSWORD 'NEW_PASSWORD';
  3. Thoát khỏi công cụ cqlsh:
    cqlsh> exit
  4. Nếu bạn chưa cài đặt Máy chủ quản lý, Bộ xử lý thư, Bộ định tuyến, máy chủ Qpid, máy chủ Postgres hoặc Ngăn xếp BaaS, 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_CUSTOMER=NEW_passwords
  5. Nếu bạn đã cài đặt Máy chủ quản lý, Bộ xử lý thư, Bộ định tuyến, máy chủ Qpid, máy chủ Postgres hoặc Ngăn xếp BaaS, hãy xem phần Đặt lại mật khẩu cạnh để 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ỉ cần thay đổi thông tin xác thực trên một nút Cassandra và thông tin xác thực đó sẽ được truyền đến tất cả các nút Cassandra trong vòng tròn.

Hãy sử dụng quy trình sau để cập nhật tất cả các thành phần Edge giao tiếp với Cassandra bằng thông tin xác thực mới. Xin 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 xác thực 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 CASS_USERNAME -p CASS_PASSWORD

    Nếu muốn, bạn có thể truyền một tệp đến lệnh chứa tên người dùng và mật khẩu mới:
    > apigee-service edge-management-server store_cassandra_credentials -f configFile

    Trong đó configFile chứa nội dung sau:
    CASS_USERNAME=cassandra
    CASS_PASSWORD=CASS_PASSWROD


    Lệnh này sẽ tự động khởi động lại Máy chủ quản lý.
  2. Lặp lại bước 1 trên:
    • 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)
  3. Trên nút ngăn xếp BaaS cho phiên bản 4.16.05.04 trở lên:
    1. Chạy lệnh sau để tạo mật khẩu đã mã hoá:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid secure_password

      Lệnh này sẽ nhắc bạn nhập mật khẩu văn bản thuần tuý và trả về mật khẩu đã mã hoá ở dạng:
      SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050
    2. Đặt các mã thông báo sau trong /opt/apigee/customer/application/usergrid.properties. Nếu tệp đó không tồn tại, hãy tạo tệp:
      usergrid-deployment_cassandra.username=cassandra
      usergrid-deployment_cassandra.password=SECURE:ae1b6dedbf6b26aaab8bee815a910737c1c15b55f3505c239e43bc09f8050


      Ví dụ này sử dụng tên người dùng mặc định cho Cassandra. Nếu bạn đã thay đổi tên người dùng, hãy đặt giá trị của usergrid-deployment_cassandra.username cho phù hợp.

      Đảm bảo rằng bạn thêm tiền tố "SECURE:" vào mật khẩu. Nếu không, ngăn xếp BaaS sẽ diễn giải giá trị đó là chưa mã hoá.

      Lưu ý: Mỗi nút Ngăn xếp BaaS có một khoá riêng dùng để mã hoá mật khẩu. Do đó, bạn phải tạo giá trị đã mã hoá trên từng nút trong ngăn xếp BaaS.
    3. Thay đổi quyền sở hữu của tệp usergrid.properties thành người dùng "apigee":
      > chown apigee:apigee /opt/apigee/customer/application/usergrid.properties
    4. Định cấu hình nút Ngăn xếp:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    5. Khởi động lại ngăn xếp BaaS:
      > /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
    6. Lặp lại các bước này cho tất cả các nút trong ngăn xếp BaaS.

Sử dụng quy trình sau để bật tính năng xác thực Cassandra và đặ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. Chạy lệnh sau:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra
      enable_cassandra_authentication -e y

    Lệnh này cho phép xác thực và khởi động lại Cassandra.

  3. Lặp lại các bước 1 và 2 trên tất cả các nút Cassandra.
  4. Đăng nhập vào một nút Cassandra bất kỳ 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 truyền đến tất cả các nút Cassandra trong vòng tròn:
    /opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p cassandra

    Trong đó

    • 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 đã đổi mật khẩu trước đó, hãy sử dụng mật khẩu hiện tại.
  5. Chạy 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. Chạy lệnh sau tại lời nhắc cqlsh> để đảm bảo 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 công cụ cqlsh:
    exit
  8. Chạy nodetool repair để đảm bảo thay đổi được áp dụng cho tất cả các nút Cassandra:
    /opt/apigee/apigee-cassandra/bin/nodetool repair system_auth