All about permission profiles From Online Manual
If you are an administrator, you can control precisely who can post to, add attachments to, moderate, etc. each and every board on your forum. In SMF 1.x, this was handled by setting up default board permissions, and then using "local board permissions" on each board you wanted to be handled differently from the default. In SMF 2.x, most of this is handled with something called permission profiles. If you are interested in making a board invisible to some members, you will want to read about Administration Center » Boards » Modify Boards .
Basically, permission profiles describe, for each member group, what that member group is (and, sometimes, is not) allowed to do. Every board on your forum uses a permission profile. If you don't pick a profile for a board, then SMF will use the default profile for that board. Board profiles do not control who can view the board. To control which member groups can view a particular board, use Administration Center » Boards » Modify Boards .
There are two basic steps in this process
- For each board, pick the permission profile you want to use for that board.
- If you don't already have a permission profile you need, set up a new one.
Caution: if you don't keep this in mind, it is pretty easy to "accidentally" edit your default profile. Any changes you make will affect not only the board you started with, but also every other board that uses the default profile. If you want a board to have special permissions, choose (or create) a new permission profile for it.
That sounds a bit vague, doesn't it? But just keep those two basic steps in mind as you read along and you should be able to get your board permissions set up the way you want them.
See board permission profiles
To see which boards are using which profiles, go to Administration Center » Permissions » Board Permissions This is a list of all your boards. It is listed by category. Within each category, the boards in that category. Within each board, any child boards of that board. For each board, there is a profile name.
See or edit permissions for a profile
There are two ways to get to a permission profile.
- In the list of board names at Administration Center » Permissions » Board Permissions, click on the permission name shown next to a board name.
- Or else, go to Administration Center » Permissions » Edit Profiles and choose a profile name.
Either way, you'll wind up with a list titled Permissions for Profile: and the profile name. This is 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, which we will leave for later.
See or change permissions for a member group in this 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.
What if a member belongs to more than one group
If you have permissions set up in the most basic way, then permissions "add up". If that permission is checked on one member group OR another to which a member belongs, that member will have that permission. Here is an example.
- Member SparklyPony belongs to "club members" and also "club officers".
- "club members" does not have permission to Announce topic in the Default profile
- "club officers" has permission to Announce topic in the Default profile
- Therefore, member SparklyPony has the permission Announce topic in the Default profile
"Regular" permissions and "deny" permissions
What does "permissions set up in the most basic way" mean? It means the way things are set up when you install SMF 2.x for the first time. If you want some fancier ways of controlling permissions, have a look at Administration Center » Permissions » Settings, select Enable the option to deny permissions . Then, for every member group other than "Guest", you will see, instead of a single checkbox for each permission in a profile, a choice of "allow", "do not allow" and "deny". Choosing "deny" will prevent members of that membergroup from having that permission even if they also belong to another member group that is allowed that permission. That is clear as mud, isn't it? To read more on the difference between "do not allow" and "deny", please see Disallow and Deny - What's the difference when it comes down to permissions
Keeping track of how all the permissions add up can get tricky.
Create a new profile
If you have had a good look at all the profiles you've already got, and don't see one you like for a particular board, you can create a new one. From Administration Center » Permissions » Edit Profiles , scroll down to the New Profile section, fill in a name for your new profile, choose a profile that is kind of close to what you want to Copy Permissions From as a starting point, and hit the Create button. Then check and edit the permissions for each member group in this profile.
Assigning permissions to a board
This step is easy. Administration Center » 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.
But what if I want a member to have very special permissions on this board, different from all other members
Create a special member group just for that user. Move that user into that member group. You might want to remove one or more other member groups from that member. To change member groups for a user, go to Administration Center » Members » View All Members then choose a member name, and choose Account Settings from the member menu.
Every time you have 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. That sounds a bit tedious, doesn't it?
Advanced options can make it easier to assign permissions within a profile
You can get by without ever using these advanced options. But if you have several permission profiles, and want to make sweeping changes to several membergroups within those profiles, you might give this a try.
First, click the checkbox at the end of the line for one or several of the member groups for this profile. Now 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.
- Apply pre-defined permission set -- click on the ? for a quick description of each of the 4 choices here.
- Set permissions like this group: Select a membergroup from the list of member groups. The permissions for each of the member groups you checked in the list above will be changed to match the member group you choose from this list.
- '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 member groups you have checked above will have this one change made.
Now, click the Set Permissions button to make it so.