All about permission profiles

Permission profile is short for board permission profile. It assigns specific permissions to one or more boards which override the default permissions. In SMF 2.0.x and later, you use a board permission profile to control precisely who can post, add attachments, or moderate on each and every board on your forum. If you use SMF 1.1.x, please read about local board permissions instead.

Permission profiles describe, for each membergroup, what that membergroup is allowed to do. Every board on your forum uses just one permission profile. If you do not pick a board permission profile for a board, SMF will use the default board permission profile for that board. Board permission profiles do not control who can see a board; for more on this, please read what members are allowed to see and do.

When you are setting up custom board permission profiles, you need to keep two things in mind:
 * 1) For each board, pick the permission profile you want to use for that board (or stick with the default profile).
 * 2) Make changes to a permission profile, or create a new one.

Before you change any board permissions, check which board permission profile you are working with, and which boards use that profile. Any time you change permissions on one board, you change permissions on any board that uses the same board permission profile.

Choose the permission profile for a board
To see which boards are using which profiles, go to Administration Center > Members > Permissions > Board Permissions. This shows a list of all the boards on your forum, ordered by category, board, and child board. For each board, there is a profile name. Click on the Board Name to modify the board and choose a different board permission profile from the drop-down list.

See or edit permissions for a profile
Go to Administration Center > Members > Permissions > Edit Profiles and click on a Permission Profile name. You will see the profile name and a list of member group names, some statistics, a link to "modify permissions", and a check-box. Below this list, there is a set of Advanced Options.

Caution: remember that whenever you modify membergroup permissions within a board permission profile, you will affect every board that uses this same profile.

See or change permissions for a member group in this board permission profile
Simply click on the member group name. Suppose you already chose the Default profile. Now choose the Guests member group. You will now see a page of information titled Permissions for group "Guests" in profile "Default". You see a bunch of check boxes. If a box is unchecked, that member group does not have that permission in this profile. If it is checked, the member does have permission in this profile.

If you do edit the Default profile, you are editing the main set of permissions that you can change on the General Permissions tab, some permissions that do not relate to a board will not show when editing the profile.

If a member belongs to more than one group
If a permission is checked on one membergroup or another to which a member belongs, that member will have that permission. Here is an example:
 * Member A belongs to membergroups A and B.
 * Membergroup A is not allowed to Announce topic in the Default profile (disallowed)
 * Membergroup B is allowed to Announce topic in the Default profile
 * Therefore, member A has the permission Announce topic in the Default profile

When you first install SMF 2.0.x, your forum will have regular permissions. If you need the ability to deny permissions to some members even if they belong to membergroups which are allowed those permissions, you can read about the difference between disallow and deny. Note that if any membergroup is denied certain permissions, the example above may not be accurate.

Create a new profile
Go to Administration Center > Members > Permissions > Edit Profiles, and scroll down to the New Profile section. Fill in a name for your new profile, choose a profile that is close to what you want to Copy Permissions From as a starting point, and click the Create button. Once created, you can check and edit the permissions for each membergroup in this profile.

Assigning permissions to a board
Administration Center > Forum > Boards > Modify Boards. Pick the board you want to change and click on its "modify" link. On the Permission Profile: line, choose the board permission profile name you want from the drop-down list.

Assigning special permissions to one member on this board
Create a special membergroup just for that user. Move that user into that membergroup. You might want to remove one or more other membergroups from that member. To change membergroups for a user, use that member's account settings. Go to Administration Center > Members > View All Members, choose a member name, and choose Account Settings from the member menu.

Every time you create a new membergroup, you need to go through all of your permission profiles to make certain that the new membergroup has the permissions you want in every single profile you want to use. If that sounds tedious, please read about the advanced option "Set permissions like this group" below.

Advanced options can make it easier to assign permissions within a profile
You do not need to use these advanced options, but if you have several permission profiles and want to make sweeping changes to several membergroups within those profiles, advanced options can speed things up.

Click the checkbox at the end of the line for one or several of the membergroups for this profile. Scroll down to the Advanced Options section of the page. If you see only a title, click on the little triangle to show the details. You have three choices:
 * 1) Apply pre-defined permission set: click on the ? for a quick description of each of the four choices here.
 * 2) Set permissions like this group: Select a membergroup from the list of membergroups.  The permissions for each of the membergroups you checked in the list above will be changed to match the membergroup you choose from this list.
 * 3) 'Add permission... Clear permission... Deny permission...:  This is a quick change. From the first drop-down list on this line, choose whether to add, clear, or deny (if you have deny permissions set for your forum).  From the second drop-down list, choose which permission to change.  The permissions for each of the membergroups you have checked above will have this one change made.

Finally, click the Set Permissions button to make the changes.