-
Notifications
You must be signed in to change notification settings - Fork 51
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
138 additions
and
29 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
--- | ||
title: Add Functionality | ||
description: This is where you get to add all kinds of great functionality to your application with little to no effort. | ||
section: get started | ||
subcategory: start here | ||
navOrder: 100 | ||
--- | ||
import StartDiagram from 'src/diagrams/docs/get-started/start-here/launch-delegate-add.astro'; | ||
import ListHostedLoginPagesUseCases from 'src/content/docs/_shared/_list-hosted-login-pages-use-cases.mdx'; | ||
|
||
<StartDiagram /> | ||
This is where the fun is! Your application now gets access to all kinds of authentication based functionality. By using FusionAuth for your authentication solution, you get access to all of these workflows: | ||
|
||
<ListHostedLoginPagesUseCases /> | ||
|
||
How you enable functionality depends on what you are looking for. Here is a list of common functionality you might want to enable or customize. | ||
|
||
* [Login with Google](/docs/lifecycle/authenticate-users/identity-providers/social/google) | ||
* [Login with SAML](docs/lifecycle/authenticate-users/identity-providers/overview-samlv2) | ||
* [Multi-factor authentication](/docs/lifecycle/authenticate-users/multi-factor-authentication) | ||
* [Email verification](TODO) | ||
* [Magic links](/docs/lifecycle/authenticate-users/passwordless/magic-links) | ||
* [Set up self-service registration](/docs/lifecycle/register-users/basic-registration-forms) | ||
* [Customize the login and other pages](/docs/customize/look-and-feel/) | ||
* [Customize emails](/docs/customize/email-and-messages/) | ||
* [Log users out](/docs/lifecycle/authenticate-users/logout-session-management) | ||
|
18 changes: 18 additions & 0 deletions
18
astro/src/content/docs/get-started/start-here/delegate.mdx
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
--- | ||
title: Delegate Authentication | ||
description: You can delegate an application's authentication and authorization needs to FusionAuth using the Authorization Code grant. | ||
section: get started | ||
subcategory: start here | ||
navOrder: 50 | ||
--- | ||
import StartDiagram from 'src/diagrams/docs/get-started/start-here/launch-delegate-add.astro'; | ||
|
||
Next, you need to update your application to delegate authentication to FusionAuth. | ||
|
||
You have a few options: | ||
|
||
* Most frameworks have an OIDC library. If you are familiar with one, you can use it, since FusionAuth supports OIDC. Here's a [curated list of OIDC libraries](https://oauth.net/code/). | ||
* FusionAuth provides SDKs for the most common JavaScript frameworks: [Angular](/docs/sdks/angular-sdk), [React](/docs/sdks/react-sdk), and [Vue](/docs/sdks/vue-sdk). | ||
* FusionAuth provides mobile SDKs: [Android](/docs/sdks/android-sdk). iOS support is coming soon, but you can use [iOS AppAuth](https://github.com/openid/AppAuth-iOS) until then. | ||
* Client library TODO do we want to build this out | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,13 @@ | ||
--- | ||
title: Overview | ||
title: Hands-on Tutorial | ||
description: Curious about what FusionAuth can do? Start here to learn about it. | ||
section: get started | ||
subcategory: start here | ||
navOrder: 0 | ||
--- | ||
import StartDiagram from 'src/diagrams/docs/get-started/start-here/launch-delegate-add.astro'; | ||
import DockerComposeFiles from 'src/content/docs/get-started/download-and-install/_docker-compose-files.mdx'; | ||
import ListHostedLoginPagesUseCases from 'src/content/docs/_shared/_list-hosted-login-pages-use-cases.mdx'; | ||
import StartDiagram from 'src/diagrams/docs/get-started/start-here/launch-delegate-add.astro'; | ||
|
||
To get started with FusionAuth, you need to do three tasks: | ||
|
||
|
@@ -17,56 +19,94 @@ Here's a diagram of this process. | |
|
||
<StartDiagram alt="Launch, then delegate, then add functionality" /> | ||
|
||
Let's dig into each of these a bit more. | ||
Let's walk through an example. | ||
|
||
## Prerequisites | ||
|
||
* git | ||
* Docker (if you want to follow the Docker instructions) | ||
|
||
## Launch FusionAuth | ||
|
||
FusionAuth is downloadable software, so you need to run it somewhere. | ||
FusionAuth is downloadable software, so you need to run it somewhere. For this guide, you can either | ||
|
||
* Use Docker to install and run FusionAuth and the application | ||
* Use GitPod to run FusionAuth in the cloud in your GitPod account, with no software install needed. | ||
|
||
### Docker | ||
|
||
<DockerComposeFiles /> | ||
|
||
There are many options. | ||
TODO need to have this take a kickstart from the tutorial app. | ||
|
||
* Download FusionAuth and run it on your own laptop, using [Docker and Docker Compose](/docs/get-started/download-and-install/docker) to avoid installing a database. | ||
* Download FusionAuth as a [ZIP, DEB or RPM](/docs/get-started/download-and-install/fusionauth-app) if you have a database installed and want to use it. This will require proceeding through maintenance mode. | ||
* Use [GitPod to run it in the cloud](TODO) in your GitPod account. | ||
* [Spin up free trial instance in FusionAuth Cloud](TODOexpressfreetrial) if you don't want to install anything locally. | ||
### GitPod | ||
|
||
After all of these, you'll have to step through [Setup Wizard](/docs/get-started/download-and-install/setup-wizard) to configure your first user. You'll also be prompted to set up your first application in the admin UI, which corresponds to your mobile or web application. | ||
TODO | ||
|
||
### What Did You Just Do? | ||
|
||
You launched a standalone authentication server and configured it. You set up a user with the email address `[email protected]` and the password `password`, which you will use in the next step. | ||
|
||
## Delegate Authentication | ||
|
||
Next, you need to update your application to delegate authentication to FusionAuth. Again, you have a few options: | ||
Next, you need to update an application to delegate authentication to FusionAuth. This guide will use a simple nodejs application, but any language that supports OIDC or REST APIs will work. You can view working examples in over 20 languages in our [quickstarts](/docs/quickstarts). | ||
|
||
TODO maybe use nodejs quickstart as a base https://fusionauth.io/docs/quickstarts/quickstart-javascript-express-web | ||
|
||
### Docker | ||
|
||
minimum to do here is: | ||
|
||
* disable normal login (which goes against in memory database) | ||
* update login button to point to fusionauth | ||
Check failure on line 61 in astro/src/content/docs/get-started/start-here/index.mdx GitHub Actions / runner / vale
|
||
|
||
|
||
* Most frameworks have an OIDC library. If you are familiar with one, you can use it, since FusionAuth supports OIDC. Here's a [curated list of OIDC libraries](https://oauth.net/code/). | ||
* FusionAuth provides SDKs for the most common JavaScript frameworks: [Angular](/docs/sdks/angular-sdk), [React](/docs/sdks/react-sdk), and [Vue](/docs/sdks/vue-sdk). | ||
* FusionAuth provides mobile SDKs: [Android](/docs/sdks/android-sdk). iOS support is coming soon, but you can use [iOS AppAuth](https://github.com/openid/AppAuth-iOS) until then. | ||
* Client library TODO do we want to build this out | ||
### GitPod | ||
|
||
### What Did You Just Do? | ||
|
||
You updated a JavaScript application and changed it from authenticating locally to using FusionAuth. | ||
|
||
## Add Functionality | ||
|
||
This is where the fun is! Your application now gets access to all kinds of authentication based functionality. By using FusionAuth for your authentication solution, you get access to all of these workflows: | ||
By delegating authentication to FusionAuth, your application gets access to authentication and authorization functionality, such as multi-factor authentication, social sign-on, self-service registration and more. | ||
|
||
Enabling your users to log in with a different identity store is can reduce friction and user frustration. Let's enable: | ||
|
||
* Login with Google | ||
* Login with SAML | ||
|
||
You can choose to do one or both of these. | ||
|
||
### Login With Google | ||
|
||
TODO set up sample google project | ||
|
||
<ListHostedLoginPagesUseCases /> | ||
### Login With SAML | ||
|
||
How you enable functionality depends on what you are looking for. Here is a list of common functionality you might want to enable or customize. | ||
login against sandbox | ||
|
||
* [Login with Google](/docs/lifecycle/authenticate-users/identity-providers/social/google) | ||
* [Login with SAML](docs/lifecycle/authenticate-users/identity-providers/overview-samlv2) | ||
* [Multi-factor authentication](/docs/lifecycle/authenticate-users/multi-factor-authentication) | ||
* [Email verification](TODO) | ||
* [Magic links](/docs/lifecycle/authenticate-users/passwordless/magic-links) | ||
* [Set up self-service registration](/docs/lifecycle/register-users/basic-registration-forms) | ||
* [Customize the login and other pages](/docs/customize/look-and-feel/) | ||
* [Customize emails](/docs/customize/email-and-messages/) | ||
* [Log users out](/docs/lifecycle/authenticate-users/logout-session-management) | ||
Is there anything else that would be cool to show here? | ||
|
||
### What Did You Just Do? | ||
|
||
You enabled login functionality which your application can benefit from without touching a single line of code. | ||
|
||
## Next Steps | ||
|
||
You can dig deeper into options for: | ||
|
||
* [launching FusionAuth](/docs/get-started/start-here/launch) | ||
* [options for delegating](/docs/get-started/start-here/delegate) | ||
* [adding functionality](/docs/get-started/start-here/add) | ||
|
||
## Quickstarts | ||
|
||
Looking for something quicker? | ||
|
||
Quickstarts take you through the Launch and Delegate steps, leaving you with a running application in your framework or language of choice to which you can add functionality. | ||
Quickstarts walk you through the Launch and Delegate steps, leaving you with a running application in your framework or language of choice, to which you can add functionality. | ||
|
||
If you have Docker installed and one of over 20 frameworks and languages, you can run through [our quickstarts](/docs/quickstarts). | ||
|
||
Each quickstart includes a complete runnable application and a shell application you can build out by following the step-by-step integration instructions. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
title: Launch FusionAuth | ||
description: To get started with FusionAuth, launch the application. | ||
section: get started | ||
subcategory: start here | ||
navOrder: 10 | ||
--- | ||
import StartDiagram from 'src/diagrams/docs/get-started/start-here/launch-delegate-add.astro'; | ||
import ListHostedLoginPagesUseCases from 'src/content/docs/_shared/_list-hosted-login-pages-use-cases.mdx'; | ||
|
||
FusionAuth is downloadable software, so you need to run it somewhere. | ||
|
||
There are many options. | ||
|
||
* Download FusionAuth and run it on your own laptop, using [Docker and Docker Compose](/docs/get-started/download-and-install/docker) to avoid installing a database. | ||
* Download FusionAuth as a [ZIP, DEB or RPM](/docs/get-started/download-and-install/fusionauth-app) if you have a database installed and want to use it. | ||
* This option requires proceeding through maintenance mode where you'll configure a connection to a database. | ||
* Use [GitPod to run it in the cloud](TODO) in your GitPod account. | ||
* [Spin up a free trial instance in FusionAuth Cloud](TODOexpressfreetrial) if you don't want to install anything locally. | ||
* [Use our public sandbox account](https://sandbox.fusionauth.io) if you want to look around the admin UI and integrate with a free, public cloud instance. | ||
* Did we mention this was PUBLIC? | ||
|
||
After all of these, you'll have to step through [Setup Wizard](/docs/get-started/download-and-install/setup-wizard) to configure your first user. You'll also be prompted to set up your first application in the admin UI, which corresponds to your mobile or web application. TODO | ||
|