File permissions

What are file permissions?

File permissions are permissions on folders and files. They are maintained and enforced by the Operating System regardless of whether this is Linux, Windows, macOS, or pretty much any other Operating System.

File permissions are used to specify what type of access is granted to users and groups on files and folders. Users are individuals who have user accounts while groups are a group of user accounts. In some cases, permissions can also be given to a special group that includes users who might not necessarily have an account.

There are three levels of permissions – Read, Write, and Execute. Each of these permissions includes the permissions of the level before it so that the Write permission includes Read while Execute includes Read and Write.

Read

As the name suggests, the read permission allows the user to read the contents of a file or folder. The read permission does not give the user or group the right to write to a file or folder. In Windows, there is an even lower permission called List Folder Contents, which only allows the user to see what’s in the folder but does not grant them permission to open any file.

Write

The Write permission gives the user the right to read and write. In a Linux environment, the Write permission gives the user the right to modify any file or folder. In Windows, there is an additional permission called Modify which allows the user to modify the contents of a file or folder.

Execute

The Execute permission is the highest-order permission available allowing users to read, write, and execute anything in the folder or file on which the permission is granted.

It’s important to note that file permissions can vary depending on the use case. For example, when it comes to Linux directories, the read permission allows users to read the directory while the execute permission is required to enter the directory. To create, delete, or rename files, the write permission is required.

Why are file permissions important on a WordPress website?

The WordPress file system is a folder structure and a number of files that contains the code that makes WordPress, plugins, and themes run, media, configurations, and other things. These folders and files are sensitive as they contain critical information that makes WordPress run.

Since file permissions grant or deny access to folders and files, file permissions on a WordPress website essentially control who can access this information, execute the code in some directories, in which directory a user can upload files, etc. Misconfiguration of these permissions can leave your website exposed to information leaking and hacking. As such it is important to ensure the correct permissions are applied so that access is only granted to those who need it – for what they need it.

How file permissions work on WordPress

File permissions on a WordPress website work the same way as permissions on any other directory. Depending on the Operating System on which WordPress is installed, the assignment and actual permissions may vary accordingly. Either way, the basic concept of Read, Write, and Execute remains the same.

The correct file permissions configurations are essential to WordPress security and should be carefully configured and monitored as part of a good security policy.

How to manage WordPress file permissions

If you’re running WordPress on a hosted plan, file permissions will be pre-configured for you however this does not mean that you should not pay attention to them. WordPress leftover and unreferenced files left in the wrong directory can lead to information disclosure and even hacking.

When managing WordPress file permissions, the principle of least privilege should be employed at all times. This will help you ensure that all users and outsiders can only access what they need to access – no more, no less.

Stay in the loop

Subscribe to the Melapress newsletter and receive curated WordPress management and security tips and content.

Newsletter icon

It’s free and you can unsubscribe whenever you want. Check our blog for a taste.

Envelope icon