User Management¶
Auto-generated by IssAssist Documentation Bootstrap ยท 2026-06-25 Review this page and remove
[TODO: verify]markers as you verify each detail.
User Management Guide for IssAssist Administrators¶
As an IssAssist administrator, you can manage user roles and permissions to ensure that users have the necessary access to perform their tasks efficiently.
User Roles and Permissions¶
IssAssist has three primary user roles:
- Admin: Full administrative access to all features.
- Operator: Access to most features with limited administrative capabilities.
- ReadOnly: Read-only access to certain data, without the ability to modify or delete.
These roles are defined in our schema as follows:
// src/schema/user.js
const UserSchema = mongoose.Schema({
role: {
type: String,
enum: ['admin', 'operator', 'read_only'],
default: 'operator',
},
permissions: {
read: true,
write: false,
delete: false,
},
});
module.exports = UserSchema;
Creating a New User¶
To create a new user, follow these steps:
- Log in to the IssAssist web GUI as an administrator.
- Navigate to User Management > Create New User
- Fill in the required fields:
- Username: A unique username for the user (e.g., "john.doe").
- Email: The user's email address (e.g., "johndoe@example.com").
- Password (optional): Set a password for the user, or leave blank to use the default password generation.
- Select the desired role:
- Admin
- Operator
- ReadOnly
- Click Create User.
TODO: Verify screenshot placeholders and update with actual screenshots
Setting a User's Role and Permissions¶
To set a user's role and permissions, follow these steps:
- Log in to the IssAssist web GUI as an administrator.
- Navigate to User Management > Users
- Find the desired user in the list.
- Click on the three vertical dots next to the user's name and select Edit User.
- In the edit user form, update the role:
- Select from the dropdown menu: Admin, Operator, or ReadOnly
- Update the permissions (if necessary):
- Toggle the read, write, and delete checkboxes to enable or disable access accordingly.
- Click Save Changes
Resetting a User's Password¶
To reset a user's password, follow these steps:
- Log in to the IssAssist web GUI as an administrator.
- Navigate to User Management > Users
- Find the desired user in the list.
- Click on the three vertical dots next to the user's name and select Edit User.
- In the edit user form, click the Reset Password button.
- Enter a new password for the user (required).
- Confirm the new password.
- Click Save Changes
Deactivating / Deleting a User¶
To deactivate or delete a user, follow these steps:
- Log in to the IssAssist web GUI as an administrator.
- Navigate to User Management > Users
- Find the desired user in the list.
- Click on the three vertical dots next to the user's name and select Edit User.
- In the edit user form, toggle the Deactivate checkbox:
- Checkmark: Deactivate the user
- Uncheckmark: Reactivate the user
- Click Save Changes
Managing Your Own Profile (Change Password, Preferences)¶
To manage your own profile, follow these steps:
- Log in to the IssAssist web GUI as an administrator.
- Navigate to User Management > Profile
- Update your:
- Password: Set a new password for yourself (optional).
- Preferences: Update any other user preferences.
API-Based User Management¶
For automation purposes, you can use the following API endpoints:
POST /users: Create a new user.// src/api/users.js app.post('/users', async (req, res) => { const { username, email, password } = req.body; // TO DO: implement logic for creating users });PUT /users/{userId}: Update an existing user's role and permissions.// src/api/users.js app.put('/users/:userId', async (req, res) => { const { userId } = req.params; const { role, permissions } = req.body; // TO DO: implement logic for updating users });DELETE /users/{userId}: Deactivate or delete a user.Note that this is just a starting point and may need to be adapted based on the specific requirements of your application.// src/api/users.js app.delete('/users/:userId', async (req, res) => { const { userId } = req.params; // TO DO: implement logic for deactivating/deleting users });