Thank you laserlight.
I think then, that my suggested new permissions table is correct in terms of design (two columns, combined primary key) but I hadn't quite realised that what I was describing is in fact a join table (having done some reading). Thanks for the mention of database normalisation too, which got me reading up on that.
For others learning about this, a Wikipedia article says a join table can also be known as:
Junction table, cross-reference table, bridge table, map table, intersection table, linking table, many-to-many resolver, link table, pairing table, pivot table, association table.
I show this only as reference, not as accurate advice because I don't know if these terms are common, used when working with MySQL specifically or even correct! Perhaps laserlight or other experts would like to clarify.
I'll set this thread as resolved since the actual question I asked has been answered.
Thanks again.