# FusionAuth Documentation Learn what FusionAuth is and how to get started using it. > For the index of this section of the site, see [llms.txt](https://4002.18-224-161-104.sslip.io/docs/llms.txt) FusionAuth is a Customer Identity and Access Management (CIAM) server that provides: * Authentication * Authorization * User Management ```mermaid graph LR classDef orangeBorder stroke:#ff9800,stroke-width:2px; User((User)) -->|authenticates| FA(FusionAuth):::orangeBorder App[Application] -->|delegates auth| FA FA <-->|brokers identity| IdP[External IdPs] User -->|consumes| App ``` FusionAuth connects users, applications, and identity providers FusionAuth provides a full implementation of [OAuth2](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/oauth.md), [OpenID Connect (OIDC)](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/identity-providers/overview-oidc.md), and [SAML v2](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/saml.md), where FusionAuth functions as both a [Service Provider (SP)](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/identity-providers/overview-samlv2.md) and a [SAML Identity Provider (IdP)](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/saml.md). ## Try To get started with FusionAuth today, check out one of our [QuickStarts](https://4002.18-224-161-104.sslip.io/docs/get-started/quickstarts.md). [React](https://4002.18-224-161-104.sslip.io/docs/get-started/quickstarts/spa/react.md) [Django](https://4002.18-224-161-104.sslip.io/docs/get-started/quickstarts/web/quickstart-python-django-web.md) [iOS](https://4002.18-224-161-104.sslip.io/docs/get-started/quickstarts/app/quickstart-swift-ios-native.md) [Go](https://4002.18-224-161-104.sslip.io/docs/get-started/quickstarts/api/quickstart-golang-api.md) ## Deploy You can deploy FusionAuth anywhere: self-hosted on a [local machine](https://4002.18-224-161-104.sslip.io/docs/get-started/download-and-install/docker.md), on-premises in [your own cloud](https://4002.18-224-161-104.sslip.io/docs/get-started/marketplaces.md), on an [air-gapped server](https://4002.18-224-161-104.sslip.io/docs/get-started/download-and-install/reference/air-gapping.md), or via a [managed FusionAuth Cloud instance](https://4002.18-224-161-104.sslip.io/docs/cloud.md). [Self-Host](https://4002.18-224-161-104.sslip.io/docs/get-started/download-and-install/docker.md) [Cloud Marketplace](https://4002.18-224-161-104.sslip.io/docs/get-started/marketplaces.md) [FusionAuth Cloud](https://4002.18-224-161-104.sslip.io/docs/cloud.md) ## Customize FusionAuth is highly customizable, both in appearance and behavior. You can control every [page](https://4002.18-224-161-104.sslip.io/docs/theme/simple-theme-editor.md) and [message](https://4002.18-224-161-104.sslip.io/docs/messengers/template-reference.md). You can use lambda functions to customize [data validation](https://4002.18-224-161-104.sslip.io/docs/extend/code/lambdas/login-validation.md), [MFA challenge logic](https://4002.18-224-161-104.sslip.io/docs/extend/code/lambdas/mfa-requirement.md), [token transformation](https://4002.18-224-161-104.sslip.io/docs/extend/code/lambdas/jwt-populate.md), and [much more](https://4002.18-224-161-104.sslip.io/docs/extend/code/lambdas.md). You can use webhooks to [react to a wide variety of events](https://4002.18-224-161-104.sslip.io/docs/extend/events-and-webhooks/events.md). [Theme](https://4002.18-224-161-104.sslip.io/docs/theme/simple-theme-editor.md) [Messages](https://4002.18-224-161-104.sslip.io/docs/messengers/template-reference.md) [Lambdas](https://4002.18-224-161-104.sslip.io/docs/extend/code/lambdas.md) ## Authenticate FusionAuth supports most popular authentication protocols, including username/password, [a wide range of identity providers](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/identity-providers.md), [passkeys](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/passkeys.md), and [one-time passwords](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/one-time-passwords.md). [Identity Providers](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/identity-providers.md) [Social Sign-On](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/identity-providers.md#social-identity-providers) [Enterprise Sign-On](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/identity-providers.md#enterprise-identity-providers) [Passkeys](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/passkeys.md) [One-Time Passwords](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/one-time-passwords.md) ## Authorize Define permissions using role-based access control (RBAC) with [users](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/types/users.md), [roles](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/types/roles.md), [groups](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/types/groups.md), [applications](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/types/applications.md), and [entities](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/types/entity-management.md). For highly granular permissions, check out our [fine-grained authorization](https://4002.18-224-161-104.sslip.io/docs/extend/fine-grained-authorization.md) integration. [Role-Based Access Control (RBAC)](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/types/roles.md) [Fine-Grained Authorization (FGA)](https://4002.18-224-161-104.sslip.io/docs/extend/fine-grained-authorization.md) ## Security Configure threat mitigation and detection features like [multi-factor authentication (MFA)](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/multi-factor-authentication.md), [breached password detection](https://4002.18-224-161-104.sslip.io/docs/operate/secure/breached-password-detection.md), [rate limiting](https://4002.18-224-161-104.sslip.io/docs/operate/secure/advanced-threat-detection.md#customizable-rate-limiting), and [captcha](https://4002.18-224-161-104.sslip.io/docs/operate/secure/advanced-threat-detection.md#captcha) to keep both you and your users secure. [Multi-Factor Authentication (MFA)](https://4002.18-224-161-104.sslip.io/docs/lifecycle/authenticate-users/multi-factor-authentication.md) [Captcha](https://4002.18-224-161-104.sslip.io/docs/operate/secure/advanced-threat-detection.md#captcha) [Rate Limiting](https://4002.18-224-161-104.sslip.io/docs/operate/secure/advanced-threat-detection.md#customizable-rate-limiting) ## Support When you can't figure out how to solve a problem yourself, FusionAuth provides [first-class support](https://4002.18-224-161-104.sslip.io/docs/operate/troubleshooting/technical-support.md) from battle-hardened humans. Related [Get Started Install with Docker Learn how to deploy and test FusionAuth using a Docker container.](https://4002.18-224-161-104.sslip.io/docs/get-started/download-and-install/docker.md) [Get Started Authentication and Authorization Learn about the difference between authentication and authorization in FusionAuth. authenticationauthorization](https://4002.18-224-161-104.sslip.io/docs/get-started/core-concepts/authentication-authorization.md) [Lifecycle Lifecycle The CIAM lifecycle. ciamauthentication](https://4002.18-224-161-104.sslip.io/docs/lifecycle.md) [APIs Create an Application Role API API documentation for the FusionAuth Create an Application Role API. authorization](https://4002.18-224-161-104.sslip.io/docs/apis/applications/create-an-application-role.md)