Guard component

Brings many layers of authentication together, making it much easier to create complex authentication systems where you have total control.

Resources: Code