文章目录
-
-
-
- 明确参数
- 编写程序
- 验证结果
-
-
明确参数
???假设蓝鲸平台已经安装好,进入平台管理界面和开发者中心。我用蓝鲸社区版bkce_basic_suite-6.0.4的安装包。 ???点击S-mart应用程序可以看到现有的本地应用程序: ???我在这里用的是bk_user_manage,点击名称查看详情: ???可查询应用程序ID和应用TOKEN: ???还可以看到访问地址,格式为:https://URL/o/bk_user_manage/ ???您可以在浏览器输入网站上进行测试(注意以后输入的所有内容)URL上述格式不包括在内 /o/bk_user_manage/ ):
https://URL/api/c/compapi/v2/usermanage/list_users/?bk_app_code=bk_user_manage&bk_app_secret=应用TOKEN的值&bk_username=admin
???如果返回success以及用户数据,证明接口正常,可以开始编程调用。
{"message": "success", "code": 0, "data": {"count"...
编写程序
???目前,蓝鲸平台可以逐一查询图形界面IP,无法批量查询IP相应的维护人员和邮箱。API我们可以使用文档 list_hosts_without_biz 接口,找到IP与用户名的对应关系;使用 list_users 接口,找到用户名和email对应关系。 ???我们在这里使用python编写一个简单的脚本,逐行阅读包括IP的文件,查询维护人及邮箱,并将结果写入user_emai_api.txt文件。我将demo代码放在码云上,代码地址
验证结果
- 修改bk_api_list_hosts_without_biz.py和bk_api_list_users.py文件中蓝鲸API网址和应用TOKEN;
- 在log/ip.txt填写需要搜索的文件。IP;
192.168.1.101 192.168.1.102 192.168.1.103 192.168.1.104 192.168.1.105 192.168.1.106 192.168.0.57 192.168.1.108
- 进入bk_api执行文件夹python3 ip_email.py。
???结果记录在 user_emai_api.txt ,在测试环境中可以看到蓝鲸cmdb没有demobk用户名。
192.168.1.101 bk1 bk1@outlook.com 192.168.1.102 bk2 bk2@outlook.com 192.168.1.103 bk3 bk3@outlook.com 192.168.1.104 bk4 bk4@outlook.com 192.168.1.105 bk5 bk5@outlook.com 192.168.1.106 bk6 bk6@outlook.com 192.168.0.57 can't find this username: demobk 192.168.1.108 bk8 bk8@outlook.com