The user grants permission the same way they always have, through your apps OAuth flow as documented here: https://dev.twitch.tv/docs/authentication/getting-tokens-oauth
Once the user goes through the Implicit or Auth Code flow that user is connected to your app, that is nothing new that has always happened. The only difference with EventSub is that Twitch checks your app for the connection/scopes required for what topics you’re subscribing too, rather than using the token and checking for validity/scopes from that.
You can see all the apps that you’re connected to here: https://www.twitch.tv/settings/connections
All of those apps that are listed there will be able to use their App token to subscribe to EventSub topics that you’ve granted them permission for.