gitea 如果想要大量批次產生使用者的話有兩種方式,一種是透過cmd的方式產生
指令可以參考 https://docs.gitea.com/next/administration/command-line
gitea-1.20.3-gogit-windows-4.0-amd64.exe admin user create --username davidou --admin --password 123456 --email aa@cc.com -c C:\Users\Administrator\Desktop\custom\conf\app.ini
如上圖,就可以產生一個叫做davidou的使用者,你要批量生產就自己用記事本寫指令即可,但是如果你還要管理批量產生、修改、管理你的gitea的話,透過cmd就不是個太方便的做法,這時候可以建議改用web api的方式來做,可以參考https://docs.gitea.com/api/1.21/#tag/admin/operation/adminCreateUser 這份api文件。
在操作api之前,你必須要先取得管理員的token才能操作,才不會任何阿貓阿狗都可以透過Api管理你的gitea。首先你先登入管理員的帳號,然後選設定–>應用程式–>產生新的token
下面會有很多設定看你要不要開放權限,基本上我是都開,畢竟我就是管理者。開好之後,他畫面就會出現一組token,記得要馬上抄起來,因為他將不會再次顯示。要是沒抄到就只好再產生一次了。
之後你就可以用這個token來創使用者
URL可以打http://127.0.0.1:3000/api/v1/admin/users?token=0c029f6160cf0367b1928e4a87c355d99af53e2f
內容如下
{
"email": "test@davidou.org",
"full_name": "string",
"login_name": "string",
"must_change_password": true,
"password": "P@ssw0rd",
"restricted": true,
"send_notify": true,
"username": "giteauser1"
}
下面是postman的範例畫面
或是php curl
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://127.0.0.1:3000/api/v1/admin/users?token=0c029f6160cf0367b1928e4a87c355d99af53e2f',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"email": "test@davidou.org",
"full_name": "string",
"login_name": "string",
"must_change_password": false,
"password": "P@ssw0rd",
"restricted": true,
"send_notify": true,
"username": "giteauser1"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>
這樣就可以批量來產生 使用者了