I solved this in my room a few years ago by using User Accounts. Everyone that enters the room has an Account which an Admin creates by using a command (An account just like on a Forum) and then the Account can be given access to use whatever you want that user to access. Then if the user changes their name you can use another command to tie their new name in to their old account, thus they receive all their old permissions straight away.
I designed it to be extensible so not only are permissions for users stored to their account but their /setcolour /setname /setwing, !find search filter settings, user interface settings for how the room displays information to the user and many other personal settings. I found this was the best way to do it myself but others may have a different approach. I can't open source it because its a part of a much larger chunk of code and it isn't written for Metis but this gives you an idea of how something like this can be done and I did first write something similar to this in Metis about 3 years ago so I know it is entirely possible within the limits of Metis using text files as storage.
I personally felt when I first came across this it was the gold standard as it is indefinitely extensible being able to tie a user to an account enables you to keep data with/around them throughout their time in your room. Imagine you have Games in your room and at the end of a game is a score given to those who played in most rooms these scores are temporary and reset each time a new game happens but what if you have a global leader-board and the users points follow them from 1 game to another game, I've seen rooms that keep this data with IP's or Usernames but as this Thread correctly describes these things change over time and it creates work for whoever is operating the bot to re-attach that data to the new username, by having a Central Account however which can easily be linked to a new username it removes these issues.
I understand that this Thread was made just to look at better ways to give people permissions to certain commands but I say it can be a lot more than that and actually be the foundation of a room. I hope someone got something from my ramblings here!