How to grant limited cPanel account access to a developer or other third-party contact

This article describes how to grant limited access to your cPanel account to a third-party contact, such as a developer. Instead of sharing your cPanel username and password (and thereby granting complete access to your account), you can provide select access to just the account areas necessary for website maintenance.

The following procedures demonstrate how to do this. By providing access to a specific file directory (using FTP) and to a specific MySQL database (using remote access), you can enable someone to make changes to a single site without affecting other sites on your hosting account.

Step 1: Configure file access

First, create an FTP account in cPanel that has access only to the directory where the website files are located. To do this, follow these steps:

  1. Log in to cPanel.
    If you do not know how to log in to your cPanel account, please see this article.
  2. Open the Domains tool. On the Tools page, in the Domains section, click Domains:

    cPanel - Domains - Domains icon

  3. Locate the domain for which you want to grant access, and note the value in the Document Root column for the domain. You will need this information in a few steps.
  4. Open the FTP Accounts tool. On the Tools page, in the Files section, click FTP Accounts:

    cPanel - Files - FTP Accounts icon

  5. Under Add FTP Account, in the Log in text box, type the username for the FTP account.

    FTP account usernames are in the format [email protected], where user represents the value you type in the Login text box, and example.com represents your domain name.
  6. In the Password text box, type the account password.
  7. In the Password (Again) text box, retype the account password.

    • You can click Password Generator and cPanel generates a random, strong password for you.
    • We recommend backing up the password by storing it in a secure location.
  8. Replace the automatically generated text in the Directory text box with the document root path that you obtained in step 3.
  9. Specify the quota for the FTP account. By default, the quota is unlimited. To set a quota, type the number, in megabytes, for the maximum directory size.
  10. Click Create FTP Account. cPanel creates the account.

Step 2: Configure database access (optional)

After you configure access to the website's files, you can configure access to the website's MySQL database.

If your website does not use a MySQL database, then this step is not necessary.
Creating a database user

First, create a new database user for the third-party contact, and allow it to access the database. To do this, follow these steps:

  1. Get the name of the database that the website uses. The exact steps to do this vary depending on the application you are using. Most sites have a configuration file that specifies the database name. For example, WordPress uses the wp-config.php file to specify the database name.
  2. Log in to cPanel.
    If you do not know how to log in to your cPanel account, please see this article.
  3. Open the MySQL Databases tool. On the Tools page, in the Databases section, click MySQL Databases:

    cPanel - Databases - MySQL Databases icon

  4. Under Add New User, in the Username text box, type the MySQL username that you want the third-party contact to use.
  5. In the Password text box, type the user password.
  6. In the Password (Again) text box, retype the user password.

    • You can click Password Generator and cPanel generates a random, strong password for you.
    • We recommend backing up the password by storing it in a secure location.
  7. Click Create User. cPanel creates the database user.
  8. Under Add User to Database, in the User list box, select the user that you just created.
  9. In the Database list box, select the database name you obtained in step 1.
  10. Click Add.
  11. Select the check boxes to grant the user specific privileges, or select the ALL PRIVILEGES check box to grant the user all permissions to the database.
  12. Click Make Changes. cPanel adds the user to the database.
Enabling remote MySQL access

After creating a database user, you must enable remote MySQL access for the third-party contact's IP address. For information about how to do this, please see this article.

Accessing the database

The third-party contact now has access to the database. They can use any number of applications for access, such as MySQL Workbench. For more information about MySQL client applications, please see this article.

Article Details

  • Control Panel: cPanel
  • Product: All managed hosting accounts
  • Level: Intermediate

Did you find this article helpful? Then you'll love our support. Experience the A2 Hosting difference today and get a pre-secured, pre-optimized website. Check out our web hosting plans today.

We use cookies to personalize the website for you and to analyze the use of our website. You consent to this by clicking on "I consent" or by continuing your use of this website. Further information about cookies can be found in our Privacy Policy.