User & Permission Management

Overview

DBWillow's User Management feature provides a visual interface for managing MySQL users and their permissions, making it easy to create users, assign roles, and manage database access.

Accessing User Management

  1. Connect to a database
  2. Click "User Management" in the toolbar
  3. View all database users
  4. Create, edit, or delete users

Creating Users

Basic User Creation

  1. Click "Create User"
  2. Enter username
  3. Set password
  4. Choose host (localhost, %, or specific IP)
  5. Select role or custom permissions
  6. Click "Create"

User Roles

Choose from predefined roles:

  • Admin: Full database access
  • Read-Only: SELECT only
  • Read-Write: SELECT, INSERT, UPDATE, DELETE
  • Custom: Choose specific permissions

Managing Permissions

Visual Permission Manager

  • See all available permissions
  • Check/uncheck permissions
  • Apply to specific databases or tables
  • Preview changes before applying

Permission Types

  • Data: SELECT, INSERT, UPDATE, DELETE
  • Structure: CREATE, ALTER, DROP, INDEX
  • Administration: GRANT, RELOAD, SHUTDOWN
  • Process: PROCESS, FILE

Granular Control

  • Database-level permissions
  • Table-level permissions
  • Column-level permissions (advanced)
  • Function and procedure permissions

Role Templates

Using Templates

  1. Select a role template
  2. Permissions are pre-configured
  3. Customize if needed
  4. Apply to user

Creating Custom Roles

  1. Select "Custom" role
  2. Choose specific permissions
  3. Save as template (optional)
  4. Apply to user

Preview Changes

Before Applying

See exactly what will change:

  • Current permissions
  • New permissions
  • SQL that will execute
  • Impact summary

Safety Features

  • Preview before applying
  • Rollback on errors
  • Confirmation dialogs
  • Audit trail

Best Practices

Principle of Least Privilege

  • Give users only what they need
  • Start with minimal permissions
  • Add permissions as needed
  • Regular permission audits

Regular Audits

  • Review user permissions regularly
  • Remove unused accounts
  • Update permissions as roles change
  • Document permission changes

Security

  • Use strong passwords
  • Limit host access
  • Regular security reviews
  • Monitor user activity

Common Tasks

Creating Application User

  1. Create user with application name
  2. Grant read-write to specific database
  3. Limit to application server IP
  4. Test connection

Creating Reporting User

  1. Create read-only user
  2. Grant SELECT on reporting databases
  3. Limit to reporting server
  4. Set up monitoring

Updating Permissions

  1. Find user
  2. Edit permissions
  3. Preview changes
  4. Apply updates

Troubleshooting

Permission Denied

  • Check user permissions
  • Verify host restrictions
  • Check database access
  • Review error messages

Can't Create User

  • Verify you have CREATE USER privilege
  • Check username format
  • Ensure host is valid
  • Review MySQL logs

Next Steps