# Import and export users
# Use Excel to import users
On the User Management->User List page, click the Import button in the upper right corner, and select Import via Excel:
After downloading the Excel template and modifying it, click upload or drag and drop the Excel file to complete the user import.
# Import users through code
# Step 1: Turn off frequent registration restrictions
Before importing users, please enter Settings -> Security Information, turn off "Frequent Registration Restrictions", and then turn it on after importing users.
# Step 2: Write a cryptographic function calculation (optional)
If the password field in your user data table is in plain text, you can skip this step; if it is in cipher text, you need to enter Extensions -> Custom Password Encryption Turn on the option and write for encryption and Function to verify password.
# Step 3: Export your user data
Please export your user data to JSON format, the content is an array, each element is an object, and one element corresponds to a piece of user information, for example:
[ { "uid": "1", "nickname": "zhang", "account_id": "zhang", "mail": "test1@123.com", "password": "$2b$12$nCa3WDbsc3tvM57ifzjwrOAGGuNK7EPV0R17WKcW6f13NZvX97yLe", "phone": "13100000001" }, { "uid": "2", "nickname": "wang", "account_id": "wang", "mail": "test2@123.com", "password": "$2b$12$HGloOlfz1HzD0v/r5m1r7OCMcx6X85eC5.At3Ckxe.Jn/u/Za/yy2", "phone": "13100000002" }, { "uid": "3", "nickname": "zhao", "account_id": "zhao", "mail": "test3@123.com", "password": "$2b$12$ia1oUZZFbEUpLvuqUsKideQq9lVkf2kq9vFaTvp7dlfeCx8UlTmDu", "phone": "13100000003" } ]
å¤åļæå
# Step 4: Import user data to Authing
If you don't have a NodeJS environment, you need to install NodeJS (opens new window) first.
Create an index.js file.
Paste the following js script into index.js:
const fs = require('fs') const path = require('path') const Authing = require('authing-js-sdk') const secret = 'xxxxxxxxxxxxxxxxxxx' const clientId = 'xxxxxxxxxxxxxxxxxxx' // If the file is large, it is recommended to read in batch // Please save the user information in the same directory as this file. The content of the file is an array of user data JSON, and one element is a user information object let users = fs.readFileSync(path.resolve('users.json'), { encoding: 'utf8' }) users = JSON.parse(users) async function main() { const authing = new Authing({ userPoolId: clientId, secret, }) for (let i = 0; i < users.length; i++) { let yourUser = users[i] try { // complete field alignment here let registerResult = await authing.register({ /** * Turn on this switch, the password field will be directly written into the Authing database, and Authing will not encrypt this field again * If your password is not stored in plaintext, you should keep it on and write a password function calculation */ keepPassword: true, nickname: yourUser.nickname, password: yourUser.password, email: yourUser.mail, phone: yourUser.phone, // Store raw data for use oauth: JSON.stringify(yourUser), // If there is a registration method such as WeChat, Weibo, etc., you should also fill it out. This is very binding for specific businesses. // The optional value of registerMethod is default:username-password social:qq social:dingtalk social:weibo oauth:github oauth:wechat oauth:wxapp registerMethod: yourUser.githubId ? 'oauth:github' : 'default:username-password', }) if (!registerResult._id) { throw Error('Registration failed') } } catch (err) { console.log(err) // Write the user who failed to import into the file fs.writeFileSync( path.resolve('users_failed.json'), JSON.stringify(yourUser) + '\n', { flag: 'a', } ) } } } main()
å¤åļæå
After copying, please align the fields before executing
$ npm install authing-js-sdk $ node index.js
å¤åļæå
The code can be viewed on Github: users-migration (opens new window)
Encounter problems? Contact Us (opens new window), Feel free to talk.
# Export users to Excel
On the User Management-User List page, click the Export button in the upper right corner, and select Export selected users or Export all users:
After that, you can check the export progress on the export history page:
Click the Download button to download the exported Excel:
â User Defined Fields Search users â