使用 PHP API 编辑 Mikrotik 用户配置文件
Edit Mikrotik User Profile With PHP API
我正在构建一个 WiFi 身份验证工具,其中包含用户配置文件编辑和来宾凭据等。
我可以将用户写入 mikrotik 并毫无问题地删除用户,但我找不到任何关于编辑用户配置文件的文档。我想我可以删除它并添加一条新记录,但这效率低下并且可能会导致用户密钥出现问题。
我正在使用 class.routeros_api.php 并且我的版本是 6.30
添加用户是这样完成的...
$response = $api->comm("/tool/user-manager/user/add",array(
"customer" => "admin",
"username" => "guest_user",
"location" => "Guest",
"first-name" => "Guest",
"last-name" => "1",
"password" => "somepw",
"shared-users" => "1",
"copy-from" => "00:00:00:00:00:00"
));
正在删除用户...
$response = $api->comm("/tool/user-manager/user/remove",array(
".id" => "*15"
));
所以我认为编辑用户就像...
$response = $api->comm("/tool/user-manager/user/edit",array(
".id" => "*15",
"username" => "someotheruser",
"password" => "someotherpass"
));
但是,我收到的错误是...
<<< [28] /tool/user-manager/user/edit
<<< [8] =.id=*14
<<< [14] =username=someotheruser
<<< [19] =password=someotherpass
>>> [5/5] bytes read.
>>> [5, 35]!trap
>>> [26/26] bytes read.
>>> [26, 8]=message=unknown parameter
>>> [5/5] bytes read.
>>> [5, 1]!done
如果有人以前做过这件事并且可以协助“/tool/user-manager/user/edit”命令的适当语法,我们将不胜感激。
所以在研究了这个东西的实际工作原理之后,看来我只是使用了错误的命令。
在 mikrotik 上编辑用户的正确方法是执行以下操作...
$api->comm("/tool/user-manager/user/set",array(
".id" => "*14",
"username" => "somenewuser"
"password" => "somenewpassword",
));
事实上,"set" 是您 post 编辑每个功能的方式。 "edit" 用于多行编辑。
特别感谢 drew010 的 WinBox 创意和 link 命令 wiki。
我正在构建一个 WiFi 身份验证工具,其中包含用户配置文件编辑和来宾凭据等。
我可以将用户写入 mikrotik 并毫无问题地删除用户,但我找不到任何关于编辑用户配置文件的文档。我想我可以删除它并添加一条新记录,但这效率低下并且可能会导致用户密钥出现问题。
我正在使用 class.routeros_api.php 并且我的版本是 6.30
添加用户是这样完成的...
$response = $api->comm("/tool/user-manager/user/add",array(
"customer" => "admin",
"username" => "guest_user",
"location" => "Guest",
"first-name" => "Guest",
"last-name" => "1",
"password" => "somepw",
"shared-users" => "1",
"copy-from" => "00:00:00:00:00:00"
));
正在删除用户...
$response = $api->comm("/tool/user-manager/user/remove",array(
".id" => "*15"
));
所以我认为编辑用户就像...
$response = $api->comm("/tool/user-manager/user/edit",array(
".id" => "*15",
"username" => "someotheruser",
"password" => "someotherpass"
));
但是,我收到的错误是...
<<< [28] /tool/user-manager/user/edit
<<< [8] =.id=*14
<<< [14] =username=someotheruser
<<< [19] =password=someotherpass
>>> [5/5] bytes read.
>>> [5, 35]!trap
>>> [26/26] bytes read.
>>> [26, 8]=message=unknown parameter
>>> [5/5] bytes read.
>>> [5, 1]!done
如果有人以前做过这件事并且可以协助“/tool/user-manager/user/edit”命令的适当语法,我们将不胜感激。
所以在研究了这个东西的实际工作原理之后,看来我只是使用了错误的命令。
在 mikrotik 上编辑用户的正确方法是执行以下操作...
$api->comm("/tool/user-manager/user/set",array(
".id" => "*14",
"username" => "somenewuser"
"password" => "somenewpassword",
));
事实上,"set" 是您 post 编辑每个功能的方式。 "edit" 用于多行编辑。
特别感谢 drew010 的 WinBox 创意和 link 命令 wiki。