Create tags only from whitelisted branches

Is it possible to whitelist which branches are eligible to be tagged (specifically protected branches?)

I want to trigger my release CI when a branch is tagged like v1.0.0

But by default it is still possible to make a mistake and tag any branch like this. Ideally I would whitelist the main branch so that only it can be tagged. Is that feature possible?

If not, what other workarounds are people using?