Đăng nhập với tư cách khách hàng
Vị trí trong admin: Customers › Customers › List › a customer › nút header Impersonate (
/customers/<id>).
Chức năng
Impersonate (login-as) cho phép quản trị viên hỗ trợ xem portal chính xác như một khách hàng nhìn thấy, nhằm tái hiện sự cố hoặc hỗ trợ xử lý đơn hàng. Phiên này kéo dài một giờ và được tách biệt rõ ràng với phiên thông thường: mọi thao tác có thể cấp quyền truy cập lâu dài vào tài khoản đều bị chặn, và mỗi lần sử dụng đều được ghi log.
Yêu cầu
| Hạng mục | Yêu cầu |
|---|---|
| Role | Một quản trị viên đã đăng nhập vào admin console. |
| Khách hàng | Tài khoản phải ở trạng thái active. Tài khoản bị khóa hoặc bị xóa sẽ trả về "account is not active" (HTTP 409). |
| Lý do | Bắt buộc phải có lý do; lý do này được ghi vào audit log. |
| Trình duyệt | Cho phép pop-up đối với địa chỉ admin: portal sẽ mở trong một cửa sổ mới. |
Các bước thực hiện
- Mở Customers › List và nhấp vào khách hàng.
- Nhấp vào Impersonate. Một hộp thoại sẽ giải thích rằng site của khách hàng sẽ mở dưới danh nghĩa khách hàng trong một giờ và mọi thao tác đều được audit.
- Nhập lý do (ví dụ: "Ticket 1234 — cannot create VM") và nhấp vào Open app.
- Một cửa sổ mới mở ra trên site của khách hàng và hiển thị dashboard với
?impersonated=1. Nếu trình duyệt chặn cửa sổ này, hãy cho phép pop-up và nhấp lại.

Đối với khách hàng của reseller, cửa sổ sẽ mở trên tên miền riêng của reseller, vì liên kết chỉ hoạt động trên chính site của khách hàng.
Cách thức hoạt động
- Hành động của admin sẽ tạo một token dùng một lần có hiệu lực trong một giờ và ghi
customer.login_as(quản trị viên, IP, lý do, site) vào audit log. - Cửa sổ mới sẽ mở
https://<site>/v1/portal/impersonate/<token>. Yêu cầu đầu tiên chỉ hiển thị một trang nhỏ và không tiêu thụ token (để tính năng prefetch của trình duyệt không làm mất token); sau đó trang sẽ xác nhận bằng một yêu cầu POST. - Yêu cầu POST sẽ tiêu thụ token này. Việc sử dụng lần thứ hai, hoặc dùng sau một giờ, sẽ nhận phản hồi "The impersonation link has expired or was already used".
- NexCMP tạo một phiên khách hàng kéo dài một giờ (phiên thông thường kéo dài 30 ngày), ghi lại một mục đăng nhập với phương thức
impersonate, và ghi nhật kýcustomer.login_as.used. - Token chỉ hoạt động trên chính site của khách hàng; trên host khác hệ thống sẽ trả về 404.
Những gì bị chặn trong phiên mạo danh
Bất kỳ thao tác nào cấp quyền truy cập vượt quá một giờ, hoặc thay đổi thiết lập bảo mật riêng của khách hàng, đều trả về HTTP 403 impersonate_forbidden:
| Thao tác bị chặn | Lý do |
|---|---|
| Đổi mật khẩu, TOTP, liên kết hoặc hủy liên kết Google/GitHub, chỉnh sửa passkey | Thông tin đăng nhập riêng của khách hàng |
| Xóa tài khoản | Không thể hoàn tác |
| Tạo hoặc chỉnh sửa API keys | Quyền truy cập dài hạn |
| Phê duyệt đăng nhập CLI, desktop hoặc MCP (liên kết thiết bị) | Quyền truy cập dài hạn |
| Tạo quyền truy cập Kubernetes, S3 keys, SSH keys, mật khẩu root, liên kết chia sẻ console, thông tin đăng nhập VPN hoặc proxy | Thông tin mật tồn tại lâu hơn phiên làm việc |
| Quy đổi mã nạp tiền | Các chiến dịch tiền thưởng |
| Rút tiền hoặc thay đổi phương thức thanh toán hoa hồng affiliate | Dòng tiền rời khỏi hệ thống |
| Chỉnh sửa AI keys, ngân sách hoặc email cảnh báo | Cấu hình của khách hàng |
Mọi thứ khác đều hoạt động: bạn có thể xem các trang, tạo hoặc quản lý VM, đặt hàng, v.v. Các hành động chạy dưới danh tính của khách hàng và sử dụng tiền của khách hàng; các mục nhật ký kiểm toán ở trên sẽ cho thấy quản trị viên đứng sau phiên làm việc đó.
Kiểm tra
- Mạo danh một khách hàng thử nghiệm. Portal sẽ mở ra và hiển thị dữ liệu của khách hàng đó.
- Thử đổi mật khẩu: bạn sẽ nhận thông báo "forbidden" (impersonation).
- Trong System › Logs › Admin actions, tìm
customer.login_aschứa tên bạn, lý do và site, theo sau làcustomer.login_as.used. - Đóng cửa sổ, mở lại cùng liên kết đó: "link expired or already used".
Hạn mức & lưu ý
- Giới hạn một giờ là cố định (3600 giây). Để tiếp tục, hãy thực hiện mạo danh lại.
- Hãy ưu tiên việc đọc và tái hiện lỗi; tránh các hành động phát sinh chi phí trừ khi khách hàng yêu cầu bạn làm vậy.
- Thu hồi phiên làm việc sớm bằng Revoke sessions trên trang khách hàng (thao tác này cũng sẽ đăng xuất cả khách hàng).
- Đại lý có tính năng mạo danh Sign in to partner console riêng (60 phút) từ Resellers; xem Resellers.
Xử lý sự cố
| Hiện tượng | Nguyên nhân | Cách khắc phục |
|---|---|---|
| "Tài khoản không hoạt động" | Tài khoản bị khóa hoặc đã bị xóa | Hãy mở khóa tài khoản trước, hoặc xem thông tin trên trang khách hàng. |
| Trình duyệt chặn cửa sổ | Trình chặn pop-up | Cho phép pop-up đối với địa chỉ admin và thử lại. |
| "Liên kết đã hết hạn hoặc đã được sử dụng" | Hết hạn một giờ hoặc liên kết đã được dùng lại | Thực hiện mạo danh lại. |
| Mở ra "Not found" | Liên kết được sử dụng trên sai host | Hãy sử dụng cửa sổ do hộp thoại mở ra; không dán liên kết sang nơi khác. |
| Thao tác báo lỗi "forbidden" | Bị chặn trong các phiên mạo danh | Yêu cầu khách hàng thực hiện hoặc sử dụng các màn hình quản trị. |