如何添加许多密码已知的用户

How can I add many users with known passwords

我正在气隙试验台上设置一个火箭聊天服务器,我将让成千上万的自动用户相互交谈以产生网络流量。我已经看到用户通过 CSV 文件导入 here。这让我可以创建我的用户,但不能使用预先分配的密码。查看 programs/server/packages/rocketchat_importer-csv.js 我看到它正在将密码设置为包含当前日期的公式字符串。

这与满足我需要的随机密码一样好。

有没有办法在 CSV 中包含另一列,我可以在其中为每个用户分配密码?

我是通过 snap 安装在 Ubuntu 16.04.4 上的,如果有什么影响的话。

最后,我编写了一个 python 脚本来完成为 CSV 的每一行发出网络请求的工作。这是我想出的:

import csv
import json
import requests

def main(csv_path, admin_user, admin_pass, base_url):
    """
    Read the given CSV of the format:
        loginname, email, real name, password

    and create all the users described in it in the Rocket.Chat server
    available at `base_url`
    """
    login_json = json.dumps({'username': admin_user, 'password': admin_pass})
    response = requests.post(base_url + '/api/v1/login', data=login_json)
    data = response.json()['data']
    token = data['authToken']
    userid = data['userId']
    headers = {
        'X-Auth-Token': token,
        'X-User-Id': userid,
        'Content-type': 'application/json',
    }

    with open(csv_path) as raw:
        reader = csv.reader(raw)
        for user in reader:
            request = {
                'username': user[0],
                'email': user[1],
                'name': user[2],
                'password': user[3],
            }
        ret = requests.post(base_url + '/api/v1/users.create',
            data=json.dumps(request), headers=headers)