1.Overview
Chương trình Sophos Central’s Public API giúp bạn dễ dàng tự động hóa các hoạt động giám sát, bảo mật và quản trị mạng của mình trong Sophos Central. Bạn có thể làm nhiều việc mà bạn thường làm trong Sophos Central Admin hoặc Sophos Central Partner.
Bài viết hôm nay sẽ hướng dẫn bạn một vài bước đơn giản để được xác thực và bắt đầu gọi các Sophos Central APIs.
2.Hướng dẫn cấu hình.
Bước 1: Tạo API Credentials Mangement trên Sophos Central.
Login vào Sophos Central Admin > Gloabal Settings > Administration > API Credentials Mangement.
Tại Credentials tab, click chọn Add Credentials.
Trong Add Credentials:
Credentials Name: Điền tên bạn muốn
Roles: chọn Service Principal Super Admin (Với vai trò Super Admin bạn sẽ có toàn quyền truy cập vào tất cả các API công khai trong Sophos Central).
Click Add.
Note: Bạn cần copy lấy phần Client ID và Client Secret và paste vào note. Bạn sẽ cần các thông tin này cho các lệnh API sau. Phần Client Secret sẽ bị dấu đi sau một thời gian. Nếu bạn không nhớ phần Client Secret này bạn sẽ cần tạo lại API Credentials Mangement.
Bước 2: Yêu cầu trên máy Endpoint
Trên máy endpoint dùng để chạy các lệnh API cần có tool tên là “curl“, bạn cần cài đặt tool này. Truy cập link: https://curl.se/ .Kéo xuống mục “What the latest curl”, click chọn download.
Tiếp tục kéo xuống mục Windows 64 bit, click chọn mục “7.84.0 binary the curl project“.
Chọn tải xuống file “curl for 64-bit”.
Mở file vừa tải, chọn mở mục Bin.
Click chạy mục curl.exe. Tool sẽ cài đặt tự động, không hiện ra bất cứ tab cài đặt nào.
Kiểm tra, bạn mở CMD trên endpoint gõ lệnh “curl -V”. Nếu hiển thị version là bạn đã cài đặt xong.
Ngoài ra vì API là các code dòng lệnh, bạn nên cài đặt 1 ứng dụng có thể chỉnh sửa các code này 1 cách dễ dàng hơn như “Visual Studio Code”.
Bước 3: Xác thực sử dụng API Credentials Mangement.
Bên dưới là dòng lệnh để xác thực sử dụng API Credentials Mangement bạn mới có được ở bước 1.
curl.exe -XPOST -H “Content-Type:application/x-www-form-urlencoded”
-d “grant_type=client_credentials&client_id=<client-id>&client_secret=<client-secret>&scope=token”
Bạn tiến hành chỉnh sửa dòng lệnh như sau:
Paste Client ID và Client Secret vào mục <client-id> và <client-secret>.
Note: Sau khi chỉnh sửa xong bạn cần sửa để các dòng lệnh trên cùng 1 hàng (xóa các khoảng trắng giữa các dòng lệnh) nếu không bạn sẽ không thể chạy dòng lệnh này.
Tiếp theo bạn mở CMD trên máy. Copy và paste dòng lệnh vào CMD, nhấn enter.
Kết quả đúng sẽ xuất ra dưới dạng:
{
“access_token”: “<jwt>”,
“errorCode”: “success”,
“expires_in”: 3600,
“message”: “OK”,
“refresh_token”: “<token>”,
“token_type”: “bearer”,
“trackingId”: “<uuid>”
}
Sau khi chạy dòng lệnh sẽ xuất kết quả như hình dưới, từ mục “Access_token” cho đến “trackingId”.
Để dễ nhìn hơn, bạn copy dòng kết quả này paste vào Visual Studio Code.
Bạn chuột phải chọn Fomat Document.
Kết quả chạy dòng lệnh đã thành công, bạn sẽ có thông tin về “access_token”, bạn sẽ dùng thông tin này cho các lệnh API tiếp theo.
Note: “access_token” sẽ có thời gian hết hạn là 1 giờ. Nếu bạn dùng access_token này sau 1 giờ sẽ không còn hiệu lực và bạn phải lấy lại access_token mới như bước trên.
Bước 4: Tìm Tenant-ID của Sophos Central.
Bên dưới là dòng lệnh API để tìm Tenant-ID:
curl.exe -XGET -H “Authorization: Bearer <jwt>” https://api.central.sophos.com/whoami/v1
Bạn chỉnh sửa thông số sau:
<jwt>: bạn copy và paste “access_token” đã lấy được ở bước 3.
Sau khi chỉnh sửa xong bạn paste dòng lệnh vào CMD, nhấn Enter.
Kết quả:
{
“id”:”tenant-id”,
“idType”:”tenant”,
“apiHosts”:{
“global”:”https://api.central.sophos.com”,
“dataRegion”:”https://api-us03.central.sophos.com”}
}
Note: Bạn cần lưu lại các thông tin về “tenant-id” và “dataRegion”, các thông tin này sẽ được sử dụng trong các lệnh API tiếp theo.