gitlab批量添加用户的方法
2018-01-26 16:19
344 查看
gitlab批量添加用户的方法
要在gitlab中添加新的用户,可以用管理员账户在登录gitlab后进入admin area页面,进行添加用户的操作。但是这样只能手工进行操作,一次只能添加一个用户。如果需要一次添加大量用户,不仅操作速度慢,还很容易出错。
要能够批量添加用户,一个比较好的解决方案是使用gitlab提供的api接口。gitlab API的使用可以参考的gitlab的帮助文档,gitlab提供了很多语言的api 客户端。这里只介绍最简单的http方法。
所有的api请求都要进行身份验证,需要在url或者header中传递private_token参数。用户的private_token可以在profile settings页面的account settings中找到。使用GET或者curl都可以发送api请求。
#获取自己账号的用户信息
curl -X GET http://1.1.1.11/api/v3/user?private_token=uMRTjtFk8fqueB1XfJVH
curl http://1.1.1.11/api/v3/user?private_token=uMRTjtFk8fqueB1XfJVH (当前tokenr的信息既管理员的token,只显示管理员的个人信息)
#获取所有用户的信息
curl -X GET http://1.1.1.11/api/v3/users?private_token=uMRTjtFk8fqueB1XfJVH
curl http://1.1.1.11/api/v3/users?private_token=uMRTjtFk8fqueB1XfJVH(当前用管理员的token,显示所有用户的信息)
#添加用户账户(user2)
curl -d "projects_limit=8&can_create_group=false&password=nihao123&email=user2@newtech.com&username=user2&name=user2&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
#查询一个用户的信息(root)
curl "http://1.1.1.11/api/v3/users?search=root&private_token=uMRTjtFk8fqueB1XfJVH"
#删除一个用户,查询到的用户ID信息进行删除
新建一个用户(user3),用来测试删除命令
curl -d "projects_limit=8&can_create_group=true&password=nihao123&email=user3@newtech.com&username=user3&name=user3&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
记住此用户的ID 后面的删除测试要用到
删除用户user3(两条命令一样)
curl -X DELETE --header "PRIVATE-TOKEN:uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users/7"
curl -X DELETE http://1.1.1.11/api/v3/users/7?private_token=uMRTjtFk8fqueB1XfJVH
以上就是以http方式使用gitlab api的简单命令,可以在这些命令的基础上制作shell脚本或python脚本,实现批量添加用户。如果要使用api进行更复杂的操作,可以使用gitlab提供的客户端,如:python-gitlab、pyapi-gitlab、libsaas-gitlab。
用一个txt 文件导入批量用户的脚本:
#!/bin/bash
userinfo="userinfo.txt"
while read line
do
name=
username=
userpass=
mail=
curl -d "projects_limit=1&can_create_group=false&password=$userpass&email=$mail&username=$username&name=$name&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
done <$userinfo
##########userinfo.txt################
user4 user4 userpass user4@newtech.com
user5 user5 userpass user5@newtech.com
user6 user6 userpass user6@newtech.com
user7 user7 userpass user7@newtech.com
user8 user8 userpass user8@newtech.com
user9 user9 userpass user9@newtech.com
要在gitlab中添加新的用户,可以用管理员账户在登录gitlab后进入admin area页面,进行添加用户的操作。但是这样只能手工进行操作,一次只能添加一个用户。如果需要一次添加大量用户,不仅操作速度慢,还很容易出错。
要能够批量添加用户,一个比较好的解决方案是使用gitlab提供的api接口。gitlab API的使用可以参考的gitlab的帮助文档,gitlab提供了很多语言的api 客户端。这里只介绍最简单的http方法。
所有的api请求都要进行身份验证,需要在url或者header中传递private_token参数。用户的private_token可以在profile settings页面的account settings中找到。使用GET或者curl都可以发送api请求。
#获取自己账号的用户信息
curl -X GET http://1.1.1.11/api/v3/user?private_token=uMRTjtFk8fqueB1XfJVH
curl http://1.1.1.11/api/v3/user?private_token=uMRTjtFk8fqueB1XfJVH (当前tokenr的信息既管理员的token,只显示管理员的个人信息)
#获取所有用户的信息
curl -X GET http://1.1.1.11/api/v3/users?private_token=uMRTjtFk8fqueB1XfJVH
curl http://1.1.1.11/api/v3/users?private_token=uMRTjtFk8fqueB1XfJVH(当前用管理员的token,显示所有用户的信息)
#添加用户账户(user2)
curl -d "projects_limit=8&can_create_group=false&password=nihao123&email=user2@newtech.com&username=user2&name=user2&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
#查询一个用户的信息(root)
curl "http://1.1.1.11/api/v3/users?search=root&private_token=uMRTjtFk8fqueB1XfJVH"
#删除一个用户,查询到的用户ID信息进行删除
新建一个用户(user3),用来测试删除命令
curl -d "projects_limit=8&can_create_group=true&password=nihao123&email=user3@newtech.com&username=user3&name=user3&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
记住此用户的ID 后面的删除测试要用到
删除用户user3(两条命令一样)
curl -X DELETE --header "PRIVATE-TOKEN:uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users/7"
curl -X DELETE http://1.1.1.11/api/v3/users/7?private_token=uMRTjtFk8fqueB1XfJVH
以上就是以http方式使用gitlab api的简单命令,可以在这些命令的基础上制作shell脚本或python脚本,实现批量添加用户。如果要使用api进行更复杂的操作,可以使用gitlab提供的客户端,如:python-gitlab、pyapi-gitlab、libsaas-gitlab。
用一个txt 文件导入批量用户的脚本:
#!/bin/bash
userinfo="userinfo.txt"
while read line
do
name=
echo $line | awk '{print $1}'
username=
echo $line | awk '{print $2}'
userpass=
echo $line | awk '{print $3}'
mail=
echo $line | awk '{print $4}'
curl -d "projects_limit=1&can_create_group=false&password=$userpass&email=$mail&username=$username&name=$name&private_token=uMRTjtFk8fqueB1XfJVH" "http://1.1.1.11/api/v3/users"
done <$userinfo
##########userinfo.txt################
user4 user4 userpass user4@newtech.com
user5 user5 userpass user5@newtech.com
user6 user6 userpass user6@newtech.com
user7 user7 userpass user7@newtech.com
user8 user8 userpass user8@newtech.com
user9 user9 userpass user9@newtech.com
相关文章推荐
- zimbra批量添加用户的方法
- 批量添加删除用户方法三
- liferay门户批量添加用户,调用weiservice方法。
- Linux下批量添加用户的脚本三种方法
- Linux下批量添加用户的两种方法
- 用户的批量添加与删除——方法一
- 域用户帐号批量添加方法
- 批量添加域用户的完美方法!
- vbs下用一个小方法实现批量添加域用户
- 批量添加用户和批量删除用户脚本
- Ubuntu中批量新增用户并设置密码方法
- 添加秘钥登录的用户的方法
- shell应用之批量添加用户实例
- MYSQL添加远程用户或允许远程访问三种方法
- Ibatis批量添加修改删除方法
- shell批量添加用户
- 批量添加用户并设置密码
- 在Linux系统中,批量添加用户的操作流程