In the previous post, I looked at how to put together a basic route controller in Drupal 8, and restrict access by specifying permissions. But there are my situations where basic permissions aren't enough.
In Drupal 7 we had procedural access callbacks. In Drupal 8 we now have AccessCheck services.
This post takes you through how to use the new AccessCheck interface to provide a custom access checker for your routes.