⚙ Configuration
Thiết lập base URL và thông tin Guacamole instance của bạn. Tất cả các bước sẽ dùng config này.
🔧 Guacamole Instance Settings
💡 Data Source: Thường là
postgresql. Kiểm tra tại /api/languages hoặc xem file cấu hình Guacamole. Nếu dùng LDAP/SAML thì datasource có thể là ldap hoặc saml.
🔐 Step 1: Get Auth Token
Lấy token để dùng cho tất cả các request tiếp theo.
💡 Cách lấy token từ browser:
1. Mở remote.so.zingplay.com → login O365 bình thường
2. DevTools → tab Network → filter:
3. Tìm request
4. Copy giá trị
1. Mở remote.so.zingplay.com → login O365 bình thường
2. DevTools → tab Network → filter:
tokens3. Tìm request
POST /api/tokens → tab Response4. Copy giá trị
authToken → paste vào ô dưới
✓ Token active — auto-filled vào tất cả các bước
👤 Step 2: Create User (O365)
Tạo user quanndm-test với O365 authentication. Không cần set password vì user sẽ auth qua SAML/OpenID.
📌 O365 User Format: Username phải khớp với giá trị mà Guacamole nhận được từ SAML assertion (thường là email hoặc UPN như
quanndm-test@yourcompany.com). Nếu Guacamole config dùng username-attribute là mail, thì dùng email đầy đủ.
POST
{BASE_URL}/api/session/data/{datasource}/users
⚠ Password field: Để trống hoặc để
"". Guacamole sẽ tạo user nhưng không cho phép đăng nhập bằng password — chỉ qua O365 SAML/OpenID.
📁 Step 3: Get Openclaw Group ID
Lấy ID của Connection Group "Openclaw" để tạo connection bên trong đó.
GET
{BASE_URL}/api/session/data/{datasource}/connectionGroups/ROOT/tree
📋 API này trả về toàn bộ connection tree. Tìm object có
"name": "Openclaw" và lấy "identifier".
🖥 Step 4: Create Connection
Tạo connection SSH trong group Openclaw. Điền thông tin server cần kết nối.
POST
{BASE_URL}/api/session/data/{datasource}/connections
🔗 Step 5: Assign Connection to User
Gán connection và connection group vào user quanndm-test. Cần gán cả connection lẫn group thì user mới thấy được.
PATCH
{BASE_URL}/api/session/data/{datasource}/users/{username}/permissions
💡 Phải gán cả connectionPermissions (để user access connection cụ thể) và connectionGroupPermissions (để user thấy folder Openclaw). Nếu thiếu group permission, connection sẽ không hiển thị trong UI.
⚡ Bulk Create Users & Connections
Paste YAML → tự động tạo Guacamole user + SSH connection + gán permission cho từng user.
📝 User List (YAML)
Mỗi user sẽ chạy 3 bước: tạo connection → tạo user → gán permission.
Token lấy từ Step 1. Group ID lấy từ Step 3 (hiện tại = 16).
Token lấy từ Step 1. Group ID lấy từ Step 3 (hiện tại = 16).
📋 cURL Commands Cheatsheet
Copy-paste các lệnh curl để test nhanh từ terminal.
⚠ Điền đầy đủ thông tin ở các bước trước, sau đó nhấn Generate để tạo cURL commands.