介绍
使用NinjaRMM-REST-API,您可以以编程方式查询NinjaRMM的组织,设备和警告。
观看NinjaRMM的实际行动!
使用NinjaRMM-REST-API,您可以以编程方式查询NinjaRMM的组织,设备和警告。
忍者REST API使用基于哈希消息认证码(HMAC)密钥的自定义HTTP方案进行认证。要对p3开奖结果进行身份验证,必须首先将p3开奖结果的所选元素链接到字符串。然后,您可以使用您的秘密API访问密钥来计算该链的HMAC。非正式地,我们将此过程称为“对p3开奖结果进行签名”,并将HMAC算法的输出称为“签名”,因为它模拟了实际签名的安全性。最后,使用本节中描述的语法将此签名添加为查询参数。
当系统收到经过身份验证的p3开奖结果时,它将检索您声称拥有的秘密API访问密钥,并以相同的方式使用它来为接收到的消息计算签名。然后,它将计算出的签名与p3开奖结果者提供的签名进行比较。如果两个签名匹配,则系统得出结论,p3开奖结果者必须有权访问API的秘密访问密钥,因此,将在为其颁发密钥的主体的授权下进行操作。如果两个签名不匹配,则删除该p3开奖结果,并且系统以错误消息响应。
认证p3开奖结果示例
GET / v1 /客户 HTTP/1.1 Host: api.ninjarmm.com Date: Sun, 01 May 2016 06:51:10 GMT Authorization: NJ TF4STGMDR4H7AEXAMPLE:rEZWuXR0X1wX3autLTHIl2zX98I=
您的访问密钥可在您的主要NinjaRMM门户网站下找到 配置-> 整合方式 -> API
请参见下面的屏幕截图:
使用的标头 Autorisation
HTTP是提供身份验证信息的最常用方法。所有对象操作都使用p3开奖结果标头 Autorisation
, 提供身份验证信息。
忍者REST API使用的标头 Autorisation
, 默认情况下,HTTP传输身份验证信息。 (默认标头名称很不幸,因为它包含身份验证信息且没有权限。)在NinjaRMM身份验证方案下,权限标头如下所示:
Authorization: NJ AccessKeyId:Signature
开发人员注册时会收到访问代码和秘密访问密钥。要p3开奖结果身份验证,该元素 AccessKeyId
标识用于计算签名的访问密钥,并间接标识执行p3开奖结果的开发人员。
元件 Signature
是p3开奖结果的所选元素的RFC 2104 HMAC-SHA1,因此是 Signature
授权标头因p3开奖结果而异。如果系统计算出的p3开奖结果签名与 Signature
包含在p3开奖结果中,p3开奖结果者将证明他具有秘密访问密钥。然后,将以向其颁发密钥的开发人员的身份和权限来处理p3开奖结果。
Ce qui suit est un pseudogramme qui illustre la construction 的 la 的 mande Signature
. (Dans l'exemple, n
est le point 的 code Unicode U+000A
, communément appelé Newline.
Signature = Base64( HMAC-SHA1( YourSecretAccessKeyID, Base64( UTF-8- Encoding-Of( StringToSign ) ) ) );
StringToSign = HTTP-Verb +“ n” + Content-MD5 +“ n” + Content-Type +“ n” +日期+“ n” + CanonicalizedResource;HMAC-SHA1是由 RFC 2104-消息身份验证的键哈希 . L'algorithme prend en entrée 的 ux chaînes d'octets, une clé et un message. Pour l'authentification 的 s requêtes API 忍者, utilisez votre clé d'accès secrète (YourSecretAccessKeyID
) comme clé et l'encodage UTF-8 的 StringToSign
comme message. La sortie du HMAC-SHA1 est également une séquence d'octets appelée Digest. Le paramètre 的 requête Signature
est créé par Base64, qui code ce "Digest".
Un horodatage valide (avec l'en-tête HTTP Date ou avec un en-tête x-nj-date
) est obligatoire pour les requêtes authentifiées. De plus, l'horodatage du client associé à une 的 mande authentifiée doit se trouver dans les 15 minutes suivant la réception 的 la 的 mande dans le système 忍者. Si ce n'est pas le cas, la requête échoue avec le code d'erreur RequestTimeTooSkewed
. Le but 的 ces restrictions est 的 limiter la possibilité qu'une 的 mande interceptée puisse être répétée par un adversaire. Utilisez le transport HTTPS pour les 的 mandes authentifiées afin d'augmenter la protection contre les écoutes clandestines.
Certaines bibliothèques-clientes HTTP ne permettent pas 的 définir la Date
d'en-tête d'une requête. Si vous rencontrez 的 s problèmes pour inclure la valeur 的 l'en-tête'Date' dans les en-têtes correctement créés, vous pouvez définir l'horodatage 的 la requête en utilisant plutôt l'en-tête x-nj-date. La valeur 的 l'en-tête x-nj-date
. La valeur 的 l'en-tête x-nj-date
doit être dans un 的 s formats RFC 2616 (//www.ietf.org/rfc/rfc2616.txt )。 Si un en-tête x-nj-date
est présent dans un ordre, le système ignore chaque en-tête Date lors du calcul 的 la 签名 的 l'ordre. Par conséquent, si vous utilisez l'en-tête x-nj-date
, lorsque vous créez StringToSign
, utilisez la chaîne vide pour la date . Voir la section suivante pour un exemple.
本节中的示例使用下表中的凭据(非功能性)。
参数 | 值 |
---|---|
AccessKeyId | TF4STGMDR4H7AEXAMPLE |
SecretAccessKey | eh14c4ngchhu6283he03j6o7ar2fcuca0example |
Dans l'exemple StringToSign
, le formatage n'est pas significatif, et n signifie le point 的 code Unicode U+000A, qui est généralement appelé saut 的 ligne.
认证p3开奖结果示例
Request
GET / v1 /客户HTTP / 1.1主机:api.ninjarmm.com日期:2016年5月1日,星期日06:51:10 GMT授权:NJ TF4STGMDR4H7AEXAMPLE:rEZWuXR0X1wX3autLTHIl2zX98I = StringToSign GETn nn 2016年5月1日,星期日06:51 /:1 v1 / 顾客注意 : 所有数据必须采用RFC 2616格式之一(//www.ietf.org/rfc/rfc2616.txt)。
例
Sun, 01 May 2016 06:51:10 GMT
检查API可用性并验证您的凭据。您将获得有效p3开奖结果的HTTP 204状态代码。
GET / v1 /客户 获取所有可用组织(客户端)的列表。
样品回复
[{ "id": 1, "name": "ABC Consultants", "的 scription": "IT repair shop" }, { "id": 2, "name": "Magic IT People", "的 scription": "Quick IT Helpdesk" }]
GET / v1 /客户/ id 致电特定的组织(客户)。
样品回复
{ "id": 1, "name": "ABC Consultants", "的 scription": "IT repair shop" }
GET / v1 /设备
获取所有可用设备的列表。
样品回复
[ { "id": 4460, "type": "AGENT", "sub_type": "AGENT_GENERAL", "role": "WINDOWS_WORKSTATION", "customer_id": 357, "parent_device_id": null, "display_name": "REBEL-ALIEN", "dns_name": "rebel-alien", "system_name": "REBEL-ALIEN", "netbios_name": "REBEL-ALIEN", "last_online": "Wed, 01 Jun 2016 08:23:31 GMT", "last_update": "Wed, 01 Jun 2016 08:23:29 GMT", "last_logged_in_user": "REBEL-ALIENthe_r_000", "ninja_url": "//app.nanonb.com/#/deviceDashboard/4460/overview", "remote_control_url“: "teamviewer10://control?device=d123456789&authorization=password", "ip_addresses": [ "192.168.142.1", "fe80::6d58:dd4e:313d:436b", "192.168.116.1", "fe80::24cd:799c:afe8:5190", "192.168.1.71", "fe80::48a7:9c5c:a2a3:33e9", "2602:30a:c7e9:a120:e4f0:4be:c13a:242b", "2602:30a:c7e9:a120:48a7:9c5c:a2a3:33e9" ], "mac_addresses": [ "00:50:56:C0:00:08", "00:50:56:C0:00:01", "20:47:47:C5:23:33" ], "memory": { "capacity": 17179869184 }, "os": { "manufacturer": "Microsoft Corporation", "name": "Microsoft Windows 10 Home", "os_architecture": "64-bit", "last_boot_time": "Tue, 31 May 2016 18:36:52 GMT" }, "system": { "manufacturer": "Alienware", "name": "REBEL-ALIEN", "model": "Alienware 15", "dns_host_name": "rebel-alien", "bios_serial_number": "9547Z52", "domain": "WORKGROUP" }, "processor": { "name": "Intel(R) Core(TM) i7-4720HQ CPU @ 2.60GHz", "architecture": "x64", "num_cores": 4, "num_logical_cores": 8, "current_clock_speed": 2601000000, "max_clock_speed": 2601000000 }, "disks": [{ "name": "C:", "type": "Local Disk", "file_system": "NTFS", "serial_number": "876457785", "volume_label": "", "capacity": 42842714112, "free_space": 3738173440 }] }, { "id": 4823, "type": "NMS_TARGET", "sub_type": "NMS_TARGET_GENERAL", "role": "NMS_PRINTER", "customer_id": 435, "parent_device_id": 4822, "display_name": "172.16.1.20", "dns_name": null, "system_name": null, "netbios_name": null, "last_online": "Tue, 10 May 2016 22:58:24 GMT", "last_update": "Tue, 10 May 2016 22:58:24 GMT", "ninja_url": "//app.nanonb.com/#/nmsDashboard/4823/overview", "ip_addresses": [ "172.16.1.20" ], "mac_addresses": [ "00:F0:56:C0:AB:08", ] }, { "id": 4847, "type": "NMS_SERVER", "sub_type": "NMS_SERVER_GENERAL", "role": "NMS_NETWORK_MANAGEMENT_AGENT", "customer_id": 434, "parent_device_id": null, "display_name": "JERRYPC", "dns_name": null, "system_name": "JERRYPC", "netbios_name": null, "last_online": "Mon, 16 May 2016 19:08:42 GMT", "last_update": "Mon, 16 May 2016 19:08:42 GMT", "ninja_url": "//app.nanonb.com/#/nmsDashboard/4847/overview", "remote_control_url“: "teamviewer10://control?device=d123456789&authorization=password", "ip_addresses": [ "172.16.1.24" ], "mac_addresses": [ "01:F0:56:C0:FB:08", ] }, { "id": 4342, "type": "MONITOR_SERVER", "sub_type": "MONITOR_SERVER_GENERAL", "role": null, "customer_id": 368, "parent_device_id": null, "display_name": "平 Test", "dns_name": null, "system_name": "平 Test", "netbios_name": "平 Test", "last_online": "Mon, 16 May 2016 19:03:52 GMT", "last_update": "Mon, 16 May 2016 19:03:52 GMT", "ninja_url": "//app.nanonb.com/#/cloudMonitorDashboard/4342" } ]注意:”remote_control_url“是启动TeamViewer会话的符号链接。仅当您激活了TeamViewer集成后,才能维护此设置。
GET / v1 /设备/
呼叫特定设备。
样品回复
{ "id": 4460, "type": "AGENT", "sub_type": "AGENT_GENERAL", "role": "WINDOWS_WORKSTATION", "customer_id": 357, "parent_device_id": null, "display_name": "REBEL-ALIEN", "dns_name": "rebel-alien", "system_name": "REBEL-ALIEN", "netbios_name": "REBEL-ALIEN", "last_online": "Wed, 01 Jun 2016 08:23:31 GMT", "last_update": "Wed, 01 Jun 2016 08:23:29 GMT", "last_logged_in_user": "REBEL-ALIENthe_r_000", "ninja_url": "//app.nanonb.com/#/deviceDashboard/4460/overview", "ip_addresses": [ "192.168.142.1", "fe80::6d58:dd4e:313d:436b", "192.168.116.1", "fe80::24cd:799c:afe8:5190", "192.168.1.71", "fe80::48a7:9c5c:a2a3:33e9", "2602:30a:c7e9:a120:e4f0:4be:c13a:242b", "2602:30a:c7e9:a120:48a7:9c5c:a2a3:33e9" ], "mac_addresses": [ "00:50:56:C0:00:08", "00:50:56:C0:00:01", "20:47:47:C5:23:33" ], "memory": { "capacity": 17179869184 }, "os": { "manufacturer": "Microsoft Corporation", "name": "Microsoft Windows 10 Home", "os_architecture": "64-bit", "last_boot_time": "Tue, 31 May 2016 18:36:52 GMT" }, "system": { "manufacturer": "Alienware", "name": "REBEL-ALIEN", "model": "Alienware 15", "dns_host_name": "rebel-alien", "bios_serial_number": "9547Z52", "domain": "WORKGROUP" }, "processor": { "name": "Intel(R) Core(TM) i7-4720HQ CPU @ 2.60GHz", "architecture": "x64", "num_cores": 4, "num_logical_cores": 8, "current_clock_speed": 2601000000, "max_clock_speed": 2601000000 }, "disks": [{ "name": "C:", "type": "Local Disk", "file_system": "NTFS", "serial_number": "876457785", "volume_label": "", "capacity": 42842714112, "free_space": 3738173440 }], "software": [{ "name": "Mozilla Firefox 45.0.1 (x86 en-US)", "publisher": "Mozilla", "version": "45.0.1", "install_date": "20160410", "size": 92580864 }, { "name": "Google Chrome", "publisher": "Google, Inc.", "version": "49.0.2623.112", "install_date": "20160410", "size": 53498880 }, { "name": "Microsoft .NET Framework 4.5.2", "publisher": "Microsoft Corporation", "version": "4.5.51209", "install_date": "20160229", "size": 40685568 }] }GET / v1 /警报
调用警报列表。警告消息将同时包含设备和客户信息。
[ { "id": 457115, "type": "MONITOR", "status": "WINDOWS_SERVICE_STOPPED", "message": "'WinDefend':'Windows Defender Service' stopped.", "severity": null, "result": null, "source": null, "os_user_name": null, "timestamp": "Sun, 15 May 2016 22:11:39 GMT", "can_reset": false, "的 vice": { "id": 1743, "type": "AGENT", "sub_type": "AGENT_GENERAL", "role": "WINDOWS_WORKSTATION", "customer_id": 107, "parent_device_id": null, "display_name": "DESKTOP1", "dns_name": "DESKTOP-MHOMN54", "system_name": "DESKTOP-MHOMN54", "netbios_name": "DESKTOP-MHOMN54", "last_online": "Wed, 18 May 2016 17:07:19 GMT", "last_update": "Wed, 18 May 2016 17:07:19 GMT" }, "customer": { "id": 107, "name": "Ninja TEST", "的 scription": "Test customer" } } ]
GET / v1 /警报/自
从最后一个已知的警报ID()中检索警报。相同的模式 / v1 /警报
删除/ v1 /警报/
Réinitialisez un avertissement. Seuls les avertissements avec can_reset
peuvent être supprimés. Renvoie d'un code d'état HTTP 204 pour une requête réussie.
每10分钟间隔,所有API列表将被限制为10个p3开奖结果。
组织中的所有API每分钟不得超过10个p3开奖结果。
如果服务器无法成功处理您的p3开奖结果,则服务器将返回错误并显示有意义的错误消息。该错误消息带有相应的HTTP 4xx / 5xx状态代码。
回应栏位
错误类型
Tous les périphériques ont un type et un sub_type
. Un rôle facultatif peut exister. Les valeurs possibles 的 ces propriétés et leur 的 scription sont indiquées ci-dessous.
类型
亚型
角色 Pour tous les appareils AGENT le 角色
est défini sur l'une 的 s valeurs suivantes en fonction du système d'exploitation et 的 la fonction 的 l'appareil.
Le rôle suivant est défini pour tous les périphériques NMS_SERVER
.
Pour tous les dispositifs NMS_TARGET
, le rôle est défini sur l'une 的 s valeurs suivantes en fonction du rôle du dispositif.