# Authentication Authentication is the process of verifying the identity of a user, device, or application attempting to access a system or resource. It confirms that the entity is who or what it claims to be, typically by requiring them to provide credentials such as a username and password, a digital certificate, or biometric data. Successful authentication grants access based on pre-defined permissions and roles. Visit the following resources to learn more: - [@article@Basic Authentication](https://roadmap.sh/guides/basic-authentication) - [@article@Session Based Authentication](https://roadmap.sh/guides/session-based-authentication) - [@article@Token Based Authentication](https://roadmap.sh/guides/token-authentication) - [@article@JWT Authentication](https://roadmap.sh/guides/jwt-authentication) - [@article@Auth - Open Authorization](https://roadmap.sh/guides/oauth) - [@article@SSO - Single Sign On](https://roadmap.sh/guides/sso)