This is a security issue. I need to be able to appoint a few staff to help me with this, but cannot grant people I don't know the power to delete whole boards {or categories}. How can this be modded so that these abilities are separated? How hard would it be?
Please ONLY post if you want to help; if all you have to say is that my idea is silly or pointless or counterproductive etc. please just don't post on this thread at all. I've thought this through carefully and know what I need for my site.
Thanks! :)
it would be moderately to very difficult (depending on who is doing the coding and how deeply they already know SMF's permission system) It is definitely non-trivial
Arantor or Suki might be able to do it in under a week... anyone else would likely need a month or so of work.
...And I will indeed post the obligatory - WTF?
You might "know what you need" but, like many of the things that you seem to think that you "need" i suspect that this is another customization of dubious logic.
Something like this can be hacked up fairly quickly but the problem is, how will you handle permissions for editing/adding boards and categories? If they can't delete boards, I'm fairly sure they will/should not be able to handle permissions either
Right... That's why I said it is moderately complicated... ;)
Lainaus käyttäjältä: Kindred - toukokuu 04, 2014, 11:37:17 AP
Right... That's why I said it is moderately complicated... ;)
Actually manage_permissions and manage_boards are two separate permissions and if you remove manage_permissions it'll still show the boards page but will not allow you to edit individual profiles. So the member would be limited to setting the permission profile and groups who can see the page. This might work then?
I don't think so.
I don't think the ability to create, edit and delete boards is easily separated...
Lainaus käyttäjältä: Kindred - toukokuu 04, 2014, 11:53:34 AP
I don't think so.
I don't think the ability to create, edit and delete boards is easily separated...
Sure is, you can introduce a new permission called delete_boards then add checks around Subs-Boards and ManageBoards as well as ManageBoards.template.php wrapping the code which involves deleting a board. Since it's not a prominent function (by virtue of usage, it's limited to only a single area in Admin), not a lot of places have references to it.
Lainaus käyttäjältä: Kindred - toukokuu 04, 2014, 09:41:17 AP
...And I will indeed post the obligatory - WTF?
You might "know what you need" but, like many of the things that you seem to think that you "need" i suspect that this is another customization of dubious logic.
This upsets me very much. It wasn't necessary, and this sort of thing is what has heavily discouraged me from posting here for help. I'm sorry, but I asked a simple specific favour of people who posted to my thread and this came across as callous. I did not think I was asking too much. I've had problems with people I trusted with large powers turning on me in the past and abusing them and all I want to do is offer some layer of protection for my site. That's the problem I'm up against.
The reasons you guys posted up as to why it would be difficult are helpful. For now I'm just going to have to take my chances until I can find a programmer to do this.
Thank you.
So, someone else looking for the same thing as this PM'd me after seeing my name, so instead of answering the PM, I'll answer it here and deal with it thoroughly.
Creating new permissions is easy. You just make new permissions. One for add, one for edit, and one for delete.
In fact, adding in the permission checks themselves at the right points of the code is also not particularly difficult.
But neither of those are actually the real problems.
1. You necessarily introduce a security risk into your forum by which anyone that can add or edit boards can also potentially hijack accounts.
2. You will not be able to contain *where* they can add boards through permissions. Or contain where they can move boards to, not through permissions.
3. Moving boards around is fraught with all kinds of problems because it involves moving things around but potentially involving boards that the user actually can't see or interact with. Similarly, it's possible to add boards but not being aware of boards around them.
4. Board access is summarily broken. If you restrict boards to the ones they can see, it's possible they can add or edit boards they then can't see immediately afterwards. If on the other hand you don't restrict boards, they can make it so they can see any board, even the ones they weren't able to see before. (This is why in 2.1 I modified it so anyone with manage-boards *explicitly* has access to all boards)
5. Someone who can add or edit boards can create boards with all kinds of permissions based on existing profiles but won't be able to create new profiles without the manage-permissions permission. This is in itself a double edged sword.
6. If I'm not mistaken, this is an attempt to make a blog system out of boards, I'll tell you yet again that this is an insanely bad idea. It has all kinds of issues from performance; since every new board causes nearly every single page load to be affected. Any place where board or topic is referenced requires a look-up and potentially several look-ups to board access, and the more boards you have in that, the slower everything gets. (That said, I know performance is not a concern for WCRPG given the amount of ****** that I know for a fact is already present in the code.) There is a very good reason IPB keeps their blogging module very separate from the forum, and it's not just so they can charge more for it. It makes it work better for users, for the server, and in general, really.
I would note that the dev team were actually asked to formally separate the board modify permissions into add/edit/delete for 2.1 and it was
unanimously shot down. That should tell you something. I'm aware that a number of people, including people that you have paid to produce code for you, are telling you this is a bad idea. Why are you not listening to them?
In the time it would take to build this, someone could have built a separate blog system dedicated for your site that would do the job even better. But you don't want to hear that. You are so obsessed by what you think you want that you cannot listen to the people telling you that it is not only a bad idea, but WHY it is a bad idea.
LainaaIt wasn't necessary, and this sort of thing is what has heavily discouraged me from posting here for help
Neither is the fact that you keep posting, over and over, for things that you have been told repeatedly are bad ideas and refuse to listen to people who know about this stuff. It's not callousness, it's straight up frustration. When you have to repeat yourself multiple times, patience wears somewhat thin.
LainaaI've had problems with people I trusted with large powers turning on me in the past and abusing them and all I want to do is offer some layer of protection for my site
And you actually want to compound the problem by creating new permissions with all kinds of edge cases - and actually INCREASE your security risk in the process. Get something designed specifically for the job you're trying to do rather than trying to make something not designed for that job do it.
I did NOT need someone insulting me when all you had to do was tell me the logical part of your post--which was very helpful. I actually just forgot about what I'd done in the past regarding asking for this. I don't remember it. Telling me I'm obsessed etc. is RUDE and I've honstly had enough of it. I didn't go onto your threads and insult you.
As for getting a nice blog designed for my site, I already tried that.
Lainaa
And you actually want to compound the problem by creating new permissions with all kinds of edge cases - and actually INCREASE your security risk in the process. Get something designed specifically for the job you're trying to do rather than trying to make something not designed for that job do it.
Please do NOT put words in my mouth, thank you. I NEVER "wanted" to introduce any of what you said compounding the problem--I didn't KNOW that those were limitations. Get something designed specifically for "the job"? I've been trying that, too.
Locking this because this discussion is over. I'll take the helpful advice you folks gave me and I thank you for it, and I will remember not to stick my neck out again here.
It's not "sticking your neck out" that is the issue -- it's the way that you assume "I know what I want, and anyone who tells me it is a bad idea just doesn't understand" When the fact is - we DO understand (most of the time) but that your "want" or "need" seems to be based on a flawed assumption to begin with.
Of course, when we point that out, we are accused of "being unhelpful" or otherwise attacking you.
I was called "obsessed" which is an insult. He crossed a line and was flat out rude to me. He made it about me and not about my idea. His other arguments were good and I accepted them and the other solid reasons that I did not know would prevent SMF from being flexible enough to accommodate my idea. But he had no place calling me names.
I apologise if I was otherwise difficult to work with. But rudeness like the name-calling earlier is why I feel so defencive on this forum to begin with, and feel a need to try and fend off rudeness before it hits. I feel like I'm going into a hostile place when I ask for help on this site. That hasn't happened to me on other forums. I would like this to change, but I'm not the only one who needs to change how they act for this to happen. I'll be happy to put down my defences if I can feel assured that people won't be rude to me here.