Quản lý người dùng, vai trò và quyền

Trang web tài liệu về Apigee có nhiều thông tin về cách quản lý vai trò của người dùng và quyền truy cập. Bạn có thể quản lý người dùng bằng cả giao diện người dùng Edge và API Quản lý; vai trò và bạn chỉ có thể quản lý quyền bằng API Quản lý.

Để biết thông tin về người dùng và cách tạo người dùng, hãy xem:

Nhiều thao tác mà bạn thực hiện để quản lý người dùng yêu cầu quản trị viên hệ thống đặc quyền. Trong quá trình cài đặt Edge dựa trên đám mây, Apigee đóng vai trò là quản trị viên hệ thống. Trong một Edge để cài đặt Đám mây riêng tư, quản trị viên hệ thống của bạn phải thực hiện các tác vụ này như được mô tả dưới đây.

Thêm người dùng

Bạn có thể tạo người dùng bằng cách sử dụng API Edge, giao diện người dùng Edge hoặc các lệnh Edge. Phần này mô tả cách sử dụng Edge API và các lệnh Edge. Để biết thông tin về cách tạo người dùng trong giao diện người dùng Edge, hãy xem phần Tạo người dùng toàn cầu.

Sau khi tạo người dùng trong tổ chức, bạn phải chỉ định vai trò cho người dùng đó. Vai trò xác định quyền truy cập của người dùng trên Edge.

Sử dụng lệnh sau để tạo người dùng bằng API Edge:

curl -H "Content-Type:application/xml" \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X POST http://ms_IP:8080/v1/users \
  -d '<User> \
    <FirstName>New</FirstName> \
    <LastName>User</LastName> \
    <Password>NEW_USER_PASSWORD</Password> \
    <EmailId>foo@bar.com</EmailId> \
  </User>'

Bạn cũng có thể sử dụng lệnh Edge sau đây để tạo người dùng:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-user -f configFile

Trong đó configFile tạo người dùng, như ví dụ sau:

APIGEE_ADMINPW=SYS_ADMIN_PASSWORD    # If omitted, you will be prompted.
USER_NAME=foo@bar.com
FIRST_NAME=New
LAST_NAME=User
USER_PWD="NEW_USER_PASSWORD"
ORG_NAME=myorg

Sau đó, bạn có thể sử dụng lệnh gọi này để xem thông tin về người dùng:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com

Chỉ định người dùng cho một vai trò trong tổ chức

Trước khi có thể làm bất cứ việc gì, người dùng mới phải được chỉ định một vai trò trong tổ chức. Bạn có thể chỉ định người dùng cho nhiều vai trò, bao gồm: orgadmin, businessuser, opsadmin, user hoặc cho một vai trò tuỳ chỉnh được xác định trong tổ chức.

Việc chỉ định người dùng cho một vai trò trong tổ chức sẽ tự động thêm người dùng đó vào tổ chức. Chỉ định người dùng cho nhiều tổ chức bằng cách chỉ định người dùng đó cho một vai trò trong mỗi tổ chức.

Sử dụng lệnh sau để chỉ định người dùng cho một vai trò trong tổ chức:

curl -X POST -H "Content-Type:application/x-www-form-urlencoded" \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users?id=foo@bar.com \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

Lệnh gọi này hiển thị tất cả vai trò được chỉ định cho người dùng. Nếu bạn muốn thêm người dùng đó, nhưng chỉ hiển thị vai trò mới, hãy sử dụng lệnh gọi sau:

curl -X POST -H "Content-Type: application/xml" \
  http://ms_IP:8080/v1/o/org_name/users/foo@bar.com/userroles \
  -d '<Roles><Role name="role"/><Roles>' \
  -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD

Bạn có thể xem vai trò của người dùng bằng lệnh sau:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/userroles

Để xoá người dùng khỏi một tổ chức, hãy xoá tất cả vai trò trong tổ chức đó khỏi người dùng. Bạn có thể dùng lệnh sau để xoá vai trò khỏi người dùng:

curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  http://ms_IP:8080/v1/o/org_name/userroles/role/users/foo@bar.com

Thêm quản trị viên hệ thống

Quản trị viên hệ thống có thể:

  • Tạo tổ chức
  • Thêm Trình định tuyến, Trình xử lý thông báo và các thành phần khác vào một lượt cài đặt Edge
  • Định cấu hình TLS/SSL
  • Tạo thêm quản trị viên hệ thống
  • Thực hiện tất cả tác vụ quản trị Edge

Mặc dù chỉ có một người dùng là người dùng mặc định cho các tác vụ quản trị, nhưng có thể có nhiều hơn một quản trị viên hệ thống. Bất kỳ người dùng nào là thành viên của "quản trị viên hệ thống" vai trò đã đầy quyền truy cập vào mọi tài nguyên.

Bạn có thể tạo người dùng cho quản trị viên hệ thống trong giao diện người dùng hoặc API Edge. Tuy nhiên, bạn phải sử dụng Edge API để chỉ định cho người dùng vai trò "quản trị viên hệ thống". Bạn không thể chỉ định người dùng cho vai trò "quản trị hệ thống" trong giao diện người dùng Edge.

Cách thêm quản trị viên hệ thống:

  1. Tạo người dùng trong API hoặc giao diện người dùng Edge.
  2. Thêm người dùng vào "quản trị viên hệ thống" vai trò:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      -X POST http://ms_IP:8080/v1/userroles/sysadmin/users -d 'id=foo@bar.com'
  3. Đảm bảo rằng người dùng mới nằm trong "quản trị viên hệ thống" vai trò:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

    Trả về địa chỉ email của người dùng:

    [ " foo@bar.com " ]
  4. Kiểm tra quyền của người dùng mới:
    curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/users/foo@bar.com/permissions

    Trả về:

    {
      "resourcePermission" : [ {
      "path" : "/",
        "permissions" : [ "get", "put", "delete" ]
      } ]
    }
  5. Sau khi thêm quản trị viên hệ thống mới, bạn có thể thêm người dùng đó vào bất kỳ tổ chức nào.
  6. Sau này, nếu muốn xoá người dùng khỏi vai trò quản trị viên hệ thống, bạn có thể sử dụng API sau:
    curl -X DELETE -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/userroles/sysadmin/users/foo@bar.com

    Xin lưu ý rằng lệnh gọi này chỉ xoá người dùng khỏi vai trò chứ không xoá người dùng.

Thay đổi quản trị viên hệ thống mặc định người dùng

Khi cài đặt Edge, bạn sẽ chỉ định địa chỉ email của quản trị viên hệ thống. Edge tạo một người dùng bằng địa chỉ email đó và đặt người dùng đó làm quản trị viên hệ thống mặc định. Sau đó, bạn có thể thêm các quản trị viên hệ thống khác như mô tả ở trên.

Phần này mô tả cách thay đổi quản trị viên hệ thống mặc định thành một người dùng khác, và cách thay đổi địa chỉ email của tài khoản người dùng cho hệ thống mặc định hiện tại Google Cloud.

Để xem danh sách người dùng hiện được định cấu hình làm quản trị viên hệ thống, hãy sử dụng lệnh gọi API sau:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms_IP:8080/v1/userroles/sysadmin/users

Để xác định quản trị viên hệ thống mặc định hiện tại, hãy xem Tệp /opt/apigee/customer/defaults.sh. Tệp này chứa dòng sau đây cho biết địa chỉ email của quản trị viên hệ thống mặc định hiện tại:

ADMIN_EMAIL=foo@bar.com

Cách thay đổi quản trị viên hệ thống mặc định thành một người dùng khác:

  1. Tạo quản trị viên hệ thống mới như được mô tả ở trên hoặc đảm bảo rằng tài khoản người dùng của quản trị viên hệ thống mới đã được định cấu hình làm quản trị viên hệ thống.
  2. Chỉnh sửa /opt/apigee/customer/defaults.sh để đặt ADMIN_EMAIL thành địa chỉ email của quản trị viên hệ thống mới.
  3. Chỉnh sửa tệp cấu hình im lặng mà bạn đã dùng để cài đặt giao diện người dùng Edge để đặt các thuộc tính sau:
    ADMIN_EMAIL=NEW_SYS_ADMIN_EMAIL
    APIGEE_ADMINPW=NEW_SYS_ADMIN_PASSWORD
    SMTPHOST=smtp.gmail.com
    SMTPPORT=465
    SMTPUSER=foo@gmail.com
    SMTPPASSWORD=bar
    SMTPSSL=y

    Lưu ý là bạn phải thêm các thuộc tính SMTP vì tất cả các thuộc tính trên giao diện người dùng đều đã đặt lại.

  4. Định cấu hình lại giao diện người dùng Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui stop
    /opt/apigee/apigee-service/bin/apigee-service edge-ui setup -f configFile
    /opt/apigee/apigee-service/bin/apigee-service edge-ui start

Nếu chỉ muốn thay đổi địa chỉ email của tài khoản người dùng cho quản trị viên hệ thống mặc định hiện tại, trước tiên, bạn hãy cập nhật tài khoản người dùng để đặt địa chỉ email mới, sau đó thay đổi địa chỉ email của quản trị viên hệ thống mặc định:

  1. Cập nhật tài khoản người dùng của người dùng quản trị hệ thống mặc định hiện tại bằng một địa chỉ email mới:
    curl -H content-type:application/json -X PUT -u CURRENT_SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
      http://ms_IP:8080/v1/users/CURRENT_SYS_ADMIN_EMAIL \
      -d '{"emailId": "NEW_SYS_ADMIN_EMAIL", "lastName": "admin", "firstName": "admin"}'
  2. Lặp lại các bước 2, 3 và 4 từ quy trình trước để cập nhật tệp /opt/apigee/customer/defaults.sh và cập nhật giao diện người dùng Edge.

Chỉ định miền email của hệ thống quản trị viên

Để tăng cường bảo mật, bạn có thể chỉ định miền email bắt buộc của quản trị viên hệ thống Edge. Khi thêm quản trị viên hệ thống, nếu địa chỉ email của người dùng không có trong miền được chỉ định, sau đó thêm người dùng vào tài khoản "quản trị viên hệ thống" không thực hiện được vai trò.

Theo mặc định, miền bắt buộc trống, nghĩa là bạn có thể thêm bất kỳ địa chỉ email nào vào "quản trị viên hệ thống" vai trò.

Cách đặt miền email:

  1. Mở tệp management-server.properties trong trình chỉnh sửa:
    vi /opt/apigee/customer/application/management-server.properties

    Nếu tệp này không tồn tại, hãy tạo tệp.

  2. Đặt thuộc tính conf_security_rbac.global.roles.allowed.domains thành danh sách các miền được phép, phân tách bằng dấu phẩy. Ví dụ:
    conf_security_rbac.global.roles.allowed.domains=myCo.com,yourCo.com
  3. Lưu các thay đổi.
  4. Khởi động lại Máy chủ quản lý Edge:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

    Nếu bạn hiện cố gắng thêm người dùng vào vai trò "sysadmin" và địa chỉ email của người dùng đó không nằm trong một trong các miền được chỉ định, thì thao tác thêm sẽ không thành công.

Xoá người dùng

Bạn có thể tạo một người dùng bằng cách sử dụng API Edge hoặc giao diện người dùng Edge. Tuy nhiên, bạn chỉ có thể xoá người dùng bằng API.

Để xem danh sách người dùng hiện tại, bao gồm cả địa chỉ email, hãy sử dụng lệnh curl sau:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD http://ms-IP:8080/v1/users

Hãy dùng lệnh curl sau đây để xoá một người dùng:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD -X DELETE http://ms_IP:8080/v1/users/USER_EMAIL