Teramind API使用案例
在使用Teramind API之前,我們需要完成以下準備作業。
作業一:建立Access Token
使用具有Admin權限的帳號圖示,滑鼠移動到該帳號圖示會出現以下訊息。點選Access Token,並在下方的"ADD ACCESS TOKEN"新增一個token。之後將這個token放到x-access-token
request header。
作業二: 取得平台的Endpoint
主要路徑 : https://{{teramind_instance}}/tm-api
其中teramind_instance,若是雲端方案可能是https://jason.kao.us.teramind.co。若是地端方案可能是內部IP/內部網址/外部網址,視client的位置而定。
使用場景一: 取得使用者登入/登出時間
將此登入/登出時間當作員工的上下班時間。
使用Time Card Report這一個API。其API Endpoint:
https://{{teramind_instance}}/tm-api/tt/r/timecard
curl --location -g 'https://{{teramind_instance}}/tm-api/tt/r/timecard' \
--data '{
"agents": [],
"departments": [],
"computers": [],
"tasks": [],
"filter": "",
"page": 0,
"periodStart": 1731632400,
"periodEnd": 1731664800,
"customFilter": [],
"partial": 0,
"mode": "day"
}'
在Teramind API Dashboard的上面範例中,periodStart與periodEnd是要求在此區間內的login/logout time。而此格式是用UNIX timestamp格式,上面的範例要求列出2024/11/15 AM 9:00–6:00 PM內的所有電腦的登入/登出時間。
當然我們也可以用computer參數來篩選特定人員。computer指的是當Agent是現身模式時的login username(如下圖),或是在隱身模式下用WIndows Login的username。
場景二: 將監控電腦的功能關閉以釋放出授權
Teramind安裝的Agent在設計上可以超過購賣的授權人數/電腦數。如果有一個Windows AD帳號有兩台電腦,哪Teramind就是算兩個授權。
在Teramind KB的說明中,可以很請楚看到。這樣做(實際人數/電腦數超過授權)可能會有系統不穩,可能會影響到其他使用者與系統的狀況。
所以透過寫一個小程式(這種trick的方式)來做到動態授權管理。這一個小程式可能需要跟HR結合,才知道公司個人員的班表進行Monitor disable/enable。
Disable/Enable monitor
#其中id指的就是computer name(也是登入名稱)
https://{{teramind_instance}}/tm-api/computer/:id/disable-monitoring
https://{{teramind_instance}}/tm-api/computer/:id/enable-monitoring
這個API call post過去時,會return 呈現一個布林代數(True/False)代表成功或失敗。
API Call的限制
在 Teramind Cloud 上,限制為每個 IP 每秒 20 個request。但是,每個Instance只允許一個連線。因此,我們無法同時要求多個資料,要排隊。
在On-Premise/Private Cloud(自建在AWS or Azure)上沒有限制。但是,預設情況下它設定為 6 個connection。