Sử dụng các tiện ích và API quản trị của Edge sau khi bật tính năng Đăng nhập một lần (SSO) của Apigee

Phần này mô tả cách chạy các lệnh và công cụ quản trị hệ thống Edge sau khi bật tính năng Đăng nhập một lần (SSO) của Apigee. Nhiều tác vụ trên Edge yêu cầu thông tin xác thực quản trị hệ thống, chẳng hạn như:

  • Tạo tổ chức và môi trường
  • Thêm và xoá các thành phần Edge
  • Chạy các lệnh apigee-adminapi.sh

Tuy nhiên, sau khi bật tính năng SSO trên Edge, bạn thường tắt tính năng Xác thực cơ bản để chỉ có thể xác thực thông qua OIDC/SAML IDP. Do đó, bạn phải đảm bảo rằng mình đã thêm tài khoản quản trị hệ thống vào IDP hoặc tạo Người dùng máy cục bộ để tự động hoá.

Gọi API quản lý Edge với tư cách là quản trị viên hệ thống

Nhiều lệnh gọi API Edge yêu cầu bạn phải chuyển thông tin xác thực quản trị hệ thống. Việc sử dụng SAML với API quản lý Edge có hướng dẫn về cách lấy và làm mới mã làm mới bằng phần mềm tiện ích get_token khi thực hiện Lệnh gọi API quản lý Edge.

Sử dụng tiện ích apigee-adminapi.sh với tính năng SSO của Apigee

Sử dụng tiện ích apigee-adminapi.sh để thực hiện các tác vụ định cấu hình Edge tương tự như khi bạn thực hiện lệnh gọi đến API quản lý Edge. Tiện ích apigee-adminapi.sh có những ưu điểm sau:

  • Sử dụng giao diện dòng lệnh đơn giản
  • Triển khai tính năng tự động hoàn thành lệnh dựa trên thẻ
  • Cung cấp thông tin trợ giúp và thông tin về việc sử dụng
  • Có thể hiển thị lệnh gọi API tương ứng nếu bạn quyết định dùng thử API

Sau khi bật tính năng SSO của Apigee, bạn có 2 cách chính để chuyển thông tin xác thực đến tiện ích apigee-adminapi.sh, tuỳ thuộc vào việc bạn là quản trị viên người dùng hay tập lệnh tự động.

Bạn có thể xem tất cả các tuỳ chọn cho mọi lệnh apigee-adminapi.sh, bao gồm cả các tuỳ chọn để chỉ định thông tin xác thực SSO, bằng cách sử dụng tuỳ chọn -h cho lệnh. Ví dụ:

apigee-adminapi.sh orgs list -h

Truyền mã thông báo truy cập (dành cho quản trị viên người dùng)

Vì tính năng SSO của Apigee hiện đại không hỗ trợ quy trình sao chép và dán /passcode cũ, nên quản trị viên người dùng phải sử dụng tiện ích get_token để hoàn tất quy trình Mã thiết bị OAuth 2.0, sau đó chuyển mã thông báo kết quả đến tập lệnh.

Trước tiên, hãy lấy mã thông báo:

/opt/apigee/apigee-openldap/bin/get_token -u adminEmail

Sau đó, hãy sử dụng mã thông báo khi gọi lệnh:

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow passcode \
  --admin adminEmail --oauth-token token_string

Trong trường hợp:

  • oauth-flow chỉ định passcode (tín hiệu này cho tập lệnh cũ biết rằng mã thông báo đang được cung cấp).
  • oauth-token chứa chuỗi JWT thô nhận được từ get_token.

Chuyển mật khẩu (chỉ dành cho người dùng máy)

Nếu đang tự động hoá việc triển khai cơ sở hạ tầng, bạn có thể chuyển trực tiếp thông tin xác thực bằng quy trình password_grant. Tuy nhiên, nếu bạn bật liên kết SAML/OIDC, người dùng bóng mờ sẽ bị chặn đăng nhập bằng mật khẩu để ngăn chặn việc bỏ qua tính năng Xác thực đa yếu tố (MFA). Trước tiên, bạn phải cung cấp một Người dùng máy rõ ràng trong OpenLDAP.

apigee-adminapi.sh orgs list --sso-url http://edge_sso_IP_DNS:9099 --oauth-flow password_grant \
  --admin machineUserEmail --oauth-password machineUserPassword

Trong trường hợp:

  • Tuỳ chọn sso-url chỉ định URL của tính năng SSO của Apigee. Sửa đổi cổng hoặc giao thức nếu bạn đã thay đổi chúng từ 9099 và HTTP.
  • oauth-flow chỉ định password_grant.
  • machineUserEmail là địa chỉ email của Người dùng máy tự động.
  • oauth-password chỉ định mật khẩu của Người dùng máy.

Sử dụng các tiện ích Edge với tính năng SSO của Apigee

Nhiều tiện ích Edge yêu cầu thông tin xác thực quản trị hệ thống, chẳng hạn như:

  • apigee-provision dùng để tạo tổ chức, môi trường và máy chủ ảo
  • setup.sh dùng để thêm các nút vào hệ thống hiện có
  • Bất kỳ tiện ích nào khác mà bạn phải chỉ định thông tin xác thực quản trị hệ thống trong tệp cấu hình

Các tiện ích này lấy tệp cấu hình làm dữ liệu đầu vào, trong đó chỉ định thông tin xác thực của quản trị viên hệ thống. Trước khi bật tính năng SSO, bạn thực hiện việc này bằng cách sử dụng các thuộc tính:

ADMIN_EMAIL="adminEmail"
APIGEE_ADMINPW="adminPWord"

Sau khi bật tính năng SSO của Apigee, bạn phải sử dụng các thuộc tính khác để chỉ định thông tin xác thực của quản trị viên hệ thống.

Sử dụng mã thông báo truy cập (dành cho quản trị viên)

Đối với các hoạt động triển khai tương tác của quản trị viên người dùng, hãy lấy mã thông báo bằng tiện ích get_token và cung cấp mã thông báo đó thông qua thuộc tính OAUTH_BEARER_TOKEN:

ADMIN_EMAIL="adminEmail"
SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
OAUTH_FLOW="passcode"
OAUTH_BEARER_TOKEN="token_string"

Trong trường hợp:

  • OAUTH_FLOW chỉ định passcode (cho biết rằng mã thông báo được cung cấp).
  • OAUTH_BEARER_TOKEN chứa chuỗi JWT thô nhận được từ get_token.

Sử dụng mật khẩu (chỉ dành cho người dùng máy)

Đối với các hoạt động triển khai hoàn toàn tự động, hãy cung cấp thông tin xác thực của Người dùng máy được cung cấp rõ ràng bằng quy trình password_grant:

ADMIN_EMAIL="machineUserEmail"
SSO_LOGIN_URL="http://edge_sso_IP_DNS:9099"
OAUTH_FLOW="password_grant"
OAUTH_ADMIN_PASSWORD="machineUserPassword"

Trong trường hợp:

  • SSO_LOGIN_URL chỉ định URL của tính năng SSO của Apigee.
  • OAUTH_FLOW chỉ định password_grant.
  • OAUTH_ADMIN_PASSWORD chỉ định mật khẩu của Người dùng máy.