如何调用蓝鲸智云API接口?

x33g5p2x  于2022-01-04 转载在 其他  
字(1.3k)|赞(0)|评价(0)|浏览(421)
明确参数

假设已经安装好蓝鲸平台,进入平台管理界面,进入开发者中心。我使用的是蓝鲸社区版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代码放在了码云上,代码地址

验证结果
  1. 修改bk_api_list_hosts_without_biz.py和bk_api_list_users.py文件中蓝鲸API网址和应用TOKEN;
  2. 在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
  1. 进入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

相关文章