Token-gating is one of the main ways you can control access in Web3, and it generally has two parts: authentication and authorization.