The concepts are simple but the implementation can be very difficult.
Authorization and Business Logic are two entirely separate domains. You have to start there. They are orthogonal.
From that follows that requirements involving who you are get implemented in the authorization logic/service/etc, and other requirements get divided up into the appropriate domain logic/services/etc.
If there are requirements around access to emojis then that involves the authorization service.
Sometimes data needs to get duplicated across service boundaries and that's when you need application concepts like sagas to manage this. That's where the implementation starts to get difficult.