Skip to content

Commit 983d66a

Browse files
authored
Update sidebar navigation & homepage cards
* Update Getting Started section & navigation * Add Login section & nav * Add missing parens * Testing category variable in navigation * Add url to category * Move children from category * Test expanded var * Add connections nav * Add authorization section and fix includes * Add configure section * Update config section * Add Manager User navigation * Add remaining sections * Remove nav section * Update Getting Started index Reworded short descriptions to be less redundant. * Update homepage cards * Fix identation * Update ids so icons present * Index page fixes
1 parent 951ac47 commit 983d66a

File tree

15 files changed

+1534
-922
lines changed

15 files changed

+1534
-922
lines changed

articles/authorization/index.md

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
---
22
description: Understand the concept of Authorization using Auth0.
3-
toc: true
43
topics:
54
- authorization
65
contentType:
+53
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
---
2+
classes: topic-page
3+
title: Branding & Customization
4+
description: Learn how to customize and apply branding to Auth0's product.
5+
topics:
6+
- branding
7+
- customization
8+
contentType: index
9+
useCase:
10+
- customize-domains
11+
- customize-emails
12+
- localize
13+
- customize-templates
14+
---
15+
<!-- markdownlint-disable MD041 MD002 MD026 -->
16+
<div class="topic-page-header">
17+
<div data-name="example" class="topic-page-badge"></div>
18+
<h1>Branding & Customization</h1>
19+
<p>
20+
Learn how to customize and apply branding to Auth0's product.
21+
22+
<ul class="topic-links">
23+
<li>
24+
<i class="icon icon-budicon-292"></i><a href="/custom-domains">Custom Domains</a>
25+
<p>
26+
Auth0 allows you to map the domain for your tenant to a custom domain of your choosing. This allows you to maintain a consistent experience for your users by keeping them on your domain instead of redirecting or using Auth0's domain.
27+
</p>
28+
</li>
29+
<li>
30+
<i class="icon icon-budicon-292"></i><a href="/email/templates">Email</a>
31+
<p>
32+
Auth0 provide several types of emails including verification emails, welcome emails, change password emails, breached password emails, and blocked account emails. Learn how to customize these emails.
33+
</p>
34+
</li>
35+
<li>
36+
<i class="icon icon-budicon-292"></i><a href="/multifactor-authentication/sms-templates">SMS Messages</a>
37+
<p>
38+
Multi-factor Authentication (MFA) is a method of verifying a user's identity by requiring them to present more than one piece of identifying information, such as a password, a mobile device, or a fingerprint. When mobile devices are selected, you can customize the SMS messages sent by Auth0 during enrollment and verification.
39+
</p>
40+
</li>
41+
<li>
42+
<i class="icon icon-budicon-334"></i><a href="/scopes/current/guides/customize-consent-prompt">Consent Prompt</a>
43+
<p>
44+
When a third-party application requests <dfn data-key="scope">scopes</dfn>, users see a consent prompt. Learn how to customize the consent prompt.
45+
</p>
46+
</li>
47+
<li>
48+
<i class="icon icon-budicon-705"></i><a href="/i18n">Internationalization</a>
49+
<p>
50+
Auth0 supports methods of translating and internationalizing various features of our products. Learn how to set up translation and handling of multiple languages.
51+
</p>
52+
</li>
53+
</ul>

articles/configure/index.md

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
classes: topic-page
3+
title: Configuration
4+
description: Learn how to configure tenants, applications, APIs, and other settings in Auth0
5+
topics:
6+
- configuration
7+
contentType: index
8+
---
9+
# Configuration
10+
11+
Learn how to configure tenants, applications, APIs, and other settings in Auth0.
12+
13+
<%= include('../_includes/_topic-links', { links: [
14+
'dashboard/dashboard-tenant-settings',
15+
'dashboard/reference/settings-application',
16+
'dashboard/reference/settings-api',
17+
'sso/current',
18+
'anomaly-detection',
19+
'protocols/saml',
20+
'guides/ip-whitelist',
21+
] }) %>

articles/deploy/checklist.md

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
title: Deploy Checklist
3+
description: Deployment checklists for your implementation.
4+
topics:
5+
- SDLC
6+
- checklists
7+
- best practices
8+
- implementation checklist
9+
contentType: reference
10+
useCase:
11+
- implementation
12+
---
13+
# Deploy Checklist
14+
15+
Auth0 has provided the following deployment checklist for your use. You may not find that every item is applicable, so please modify the checklist based on the needs of your implementation.
16+
17+
## How to use the checklist
18+
19+
1. Click the links below to download each checklist.
20+
2. Open the checklist in any spreadsheet application.
21+
3. Customize the checklist to suit your needs.
22+
23+
![](/media/articles/architecture-scenarios/checklists/file_type_icons-02.png) [Deploy Checklist](/media/articles/architecture-scenarios/checklists/Deploy-Checklist.xlsx)
24+
25+
In the Deploy phase, you will deploy the system to either a staging or production environment, where actual users begin to operate and interact with it.
26+
27+
Eventually, you deploy all components of the system to the production environment when you make a live release.

articles/deploy/index.md

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
classes: topic-page
3+
title: Deploy
4+
description: Information about deploying Auth0
5+
topics:
6+
- deploy
7+
contentType:
8+
- index
9+
---
10+
# Deploy
11+
12+
The following pages will cover everything you need to know about deploying Auth0. In addition to covering deployment models, we'll provide you with pre-deployment tips, tricks, and tests, as well as an extension to make multi-environment deployments easier.
13+
14+
<ul class="topic-links">
15+
<li>
16+
<i class="icon icon-budicon-715"></i><a href="https://auth0.com/docs/getting-started/deployment-models">Deployment Models</a>
17+
</li>
18+
<p>
19+
Learn about the four different deployment models that Auth0 offers and the differences between them.
20+
</p>
21+
<li>
22+
<i class="icon icon-budicon-715"></i><a href="https://auth0.com/docs/pre-deployment">Pre-Deployment Tips and Testing</a>
23+
</li>
24+
<p>Get pre-launch tips and tricks, and learn how to use Auth0's pre-deployment testing suite to make sure that you've completed all necessary tasks prior to go live.</p>
25+
<li>
26+
<i class="icon icon-budicon-715"></i><a href="https://auth0.com/docs/extensions/deploy-cli">Deploy CLI Extension</a>
27+
</li>
28+
<p>The Deploy CI Extension is helpful for multi-environment deployments and can be used to support integration into existing CI/CD pipelines.</p>
29+
</ul>

articles/extend-integrate/index.md

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
classes: topic-page
3+
title: Extend & Integrate
4+
description: Learn how to extend the functionality of Auth0's base product and integrate Auth0 with other applications and services.
5+
topics:
6+
- extensions
7+
- integrations
8+
contentType: index
9+
useCase:
10+
- integrate-third-party-apps
11+
- integrate-analytics
12+
- integrate-marketing
13+
- integrate-saas-sso
14+
- extensibility-extensions
15+
---
16+
<!-- markdownlint-disable MD041 MD002 MD026 -->
17+
<div class="topic-page-header">
18+
<div data-name="example" class="topic-page-badge"></div>
19+
<h1>Extend & Integrate</h1>
20+
<p>
21+
Learn how to extend the functionality of Auth0's base product and integrate Auth0 with other applications and services.
22+
23+
<ul class="topic-links">
24+
<li>
25+
<i class="icon icon-budicon-292"></i><a href="/rules">Rules</a>
26+
<p>
27+
Rules are JavaScript functions that execute when a user authenticates to your application. They run once the authentication process is complete, and you can use them to customize and extend Auth0's capabilities. Learn how to configure and use rules with Auth0.
28+
</p>
29+
</li>
30+
<li>
31+
<i class="icon icon-budicon-292"></i><a href="/hooks">Hooks</a>
32+
<p>
33+
Hooks are Webtasks associated with specific extensibility points of the Auth0 platform, which allow you to customize the behavior of Auth0 with custom code using Node.js. Learn how to configure and use hooks with Auth0.
34+
</p>
35+
</li>
36+
<li>
37+
<i class="icon icon-budicon-292"></i><a href="/extensions">Extensions</a>
38+
<p>
39+
Auth0 provides pre-defined extensions that enable you to install applications or run commands/scripts that extend the functionality of the Auth0 base product.
40+
</p>
41+
</li>
42+
<li>
43+
<i class="icon icon-budicon-292"></i><a href="/integrations/analytics">Analytics Integrations</a>
44+
<p>
45+
Learn how to set up analytics integrations with Auth0.
46+
</p>
47+
</li>
48+
<li>
49+
<i class="icon icon-budicon-334"></i><a href="/integrations/sso">Single Sign-On (SSO) Integrations</a>
50+
<p>
51+
Learn how to set up <dfn data-key="single-sign-on">Single Sign-on (SSO)</dfn> between Auth0 and various services.
52+
</p>
53+
</li>
54+
<li>
55+
<i class="icon icon-budicon-705"></i><a href="/integrations/marketing">Marketing Integrations</a>
56+
<p>
57+
Learn how to import your Auth0 user data into marketing tools.
58+
</p>
59+
</li>
60+
<li>
61+
<i class="icon icon-budicon-292"></i><a href="/addons">Add-ons</a>
62+
<p>
63+
Add-ons are plugins associated with an application registered with Auth0. Usually, they are third-party APIs used by application(s) for which Auth0 generates Access Tokens (e.g., Salesforce, Azure Service Bus, Windows Azure Mobile Services, SAP).
64+
</p>
65+
</li>
66+
</ul>
+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
title: Create a Tenant
3+
description: Learn how to create a tenant in the Auth0 Dashboard.
4+
topics:
5+
- tenants
6+
contentType: how-to
7+
useCase:
8+
- create-tenant
9+
- get-started
10+
---
11+
# Create a Tenant
12+
13+
If you haven't already [signed up](https://auth0.com/signup) for an Auth0 **account**, do so (it's free). You can either use username/password or log in with a social provider (GitHub, Google, or Microsoft).
14+
15+
Once you create your account you will be asked to create a **Tenant**. This is a **logical isolation unit**.
16+
17+
The term is borrowed from "software multitenancy". This refers to an architecture where a single instance of the software serves multiple tenants. No tenant can access the instance of another tenant, even though the software might be running on the same machine (hence the logical isolation).
18+
19+
Some characteristics:
20+
21+
- The tenant name has to be unique (we will see in the next paragraph that it is used to create your own personal domain).
22+
- The tenant name must be all lowercase.
23+
- The tenant name cannot be changed after creation.
24+
- You can create more than one tenant; in fact, you are encouraged to do so for each environment you have (such as Development, Staging, or Production).
25+
- If you chose to host your data in Europe or Australia, then your tenant will have a suffix (`eu` or `au`). In our example, if `Example-Co` picked the name `example-co`, then depending on where the data is stored, the tenant name would be `example-co-eu` or `example-co-au`.
26+
27+
You can create additional tenants at any time. To do so, go to the upper-right corner of the Dashboard and click on your tenant name to display the pulldown menu. Click **Create Tenant**.
28+
29+
## Keep reading
30+
31+
* [Set Up Multiple Environments](/dev-lifecycle/setting-up-env)

articles/getting-started/index.md

+15-19
Original file line numberDiff line numberDiff line change
@@ -19,35 +19,31 @@ useCase:
1919
</p>
2020
</div>
2121

22-
Welcome! If you are new to Auth0, you are in the right place.
23-
24-
This introduction to Auth0 covers things like:
25-
26-
* What we do
27-
* How we can help you
28-
* The basic terminology we use
29-
* The process of implementing Auth0
30-
* The Auth0 ecosystem
31-
* ... and many more
32-
33-
Let's get started!
34-
22+
Welcome! If you are new to Auth0, you are in the right place. Here we will cover how to get started using Auth0.
3523

3624
<ul class="topic-links">
37-
<li>
38-
<i class="icon icon-budicon-715"></i><a href="/getting-started/overview">Auth0 Overview</a>
39-
<p>Learn what Auth0 is and how you can use it.</p>
40-
</li>
4125
<li>
4226
<i class="icon icon-budicon-715"></i><a href="/getting-started/the-basics">Learn the Basics</a>
4327
<p>Learn the basics of Auth0 and familiarize yourself with the basic terminology.</p>
4428
</li>
4529
<li>
4630
<i class="icon icon-budicon-715"></i><a href="/getting-started/dashboard-overview">Dashboard Overview</a>
47-
<p>The Dashboard is where you configure and manage all things Auth0. This article offers a brief overview of the sections it contains and what you can do in each section.</p>
31+
<p>Learn the basics of using the Auth0 Dashboard.</p>
32+
</li>
33+
<li>
34+
<i class="icon icon-budicon-715"></i><a href="/getting-started/create-tenant">Create a Tenant</a>
35+
<p>Learn how to create an Auth0 tenant.</p>
36+
</li>
37+
<li>
38+
<i class="icon icon-budicon-715"></i><a href="/getting-started/set-up-app">Set Up an App</a>
39+
<p>Learn how to configure your application.</p>
40+
</li>
41+
<li>
42+
<i class="icon icon-budicon-715"></i><a href="/getting-started/set-up-api">Set Up an API</a>
43+
<p>Learn how to configure an API. </p>
4844
</li>
4945
<li>
5046
<i class="icon icon-budicon-715"></i><a href="/getting-started/deployment-models">Deployment Models</a>
51-
<p>Read about the four different deployment models that Auth0 offers.</p>
47+
<p>Read about the four deployment models that Auth0 offers.</p>
5248
</li>
5349
</ul>
+103
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
---
2+
title: Set Up an API
3+
description: Learn how to set up an API in Auth0 Dashboard.
4+
topics:
5+
- apis
6+
contentType: how-to
7+
useCase:
8+
- set-up-api
9+
- get-started
10+
---
11+
# Set Up an API
12+
13+
1. Click on the [APIs menu option](${manage_url}/#/apis) on the left.
14+
15+
::: note
16+
The API tab will already have one API created automatically, the **Auth0 Management API**. For more details on the features of the Management API and its available endpoints, refer to: [Management API](/api/management/v2).
17+
:::
18+
19+
2. Click the **+ Create API** button.
20+
21+
![Create a new API](/media/articles/api/overview/create-api.png)
22+
23+
You need to provide the following information for your API:
24+
25+
- **Name**: a friendly name for the API. Does not affect any functionality.
26+
27+
- **Identifier**: a unique identifier for the API. Auth0 recommends using a URL. Auth0 does differentiate between URLs that include the last forward slash. For example, https://example.com and https://example.com/ are two different identifiers. The URL does not have to be a publicly available URL. Auth0 will not call your API. This value **cannot** be modified afterwards.
28+
29+
- **Signing Algorithm**: the algorithm to sign the tokens with. The available values are `HS256` and `RS256`. When selecting `RS256` the token will be signed with the tenant's private key. For more details on the signing algorithms go to the [Signing Algorithms paragraph](#signing-algorithms).
30+
31+
3. Fill in the required information and click the **Create** button.
32+
33+
Once you do so you will be navigated to the *Quick Start* of your API. Here you can find details on the implementation changes you have to do to your API, which basically consists of choosing a JWT library from a predefined list and configuring this library to validate the Access Tokens in your API.
34+
35+
![API Quick Starts](/media/articles/api/overview/quickstarts-view.png)
36+
37+
The other available views for your API are:
38+
39+
- **Settings**: lists the settings for your API. Some are editable. Here you can change the token expiration time and enable offline access (this way Auth0 will allow your applications to ask for <dfn data-key="refresh-token">Refresh Tokens</dfn> for this API). For details refer to the [API Settings paragraph](#api-settings).
40+
41+
- **Scopes**: here you can define the scopes for this API, by setting a name and a description.
42+
43+
- **Machine to Machine Applications**: lists all applications for which the **Client Credentials** grant is **enabled**. By default, this grant is **enabled* for [Regular Web Applications and Machine to Machine Applications](/applications/concepts/app-types-auth0). You can authorize any of these applications to request Access Tokens for your API. Optionally, you can select a subset of the defined scopes to limit your authorized application's access.
44+
45+
- **Test**: from this view, you can execute a sample Client Credentials flow with any of your authorized applications to check that everything is working as expected.
46+
47+
## API settings
48+
49+
Click on the **Settings** tab of your [API](${manage_url}/#/apis) to review the available settings:
50+
51+
- **Id**: A unique alphanumeric string generated by Auth0. The information is read only and you will only need it if you will be working directly with [Auth0's Management API Resource Servers endpoints](/api/management/v2#!/Resource_Servers/get_resource_servers_by_id).
52+
53+
- **Name**: A friendly name for the API. Does not affect any functionality. The following characters are not allowed: `< >`.
54+
55+
- **Identifier**: A unique identifier for your API. This value is set upon API creation and cannot be modified afterwards. We recommend using a URL but note that this doesn't have to be a publicly available URL, Auth0 will not call your API at all.
56+
57+
- **Token Expiration (Seconds)**: The amount of time (in seconds) before the Auth0 Access Token expires. The default value is 86400 seconds (24 hours). The maximum value you can set is 2592000 seconds (30 days).
58+
59+
- **Allow Skipping User Consent**: When a first party application requests authorized access against an API with the *Allow Skipping User Consent* flag set, the User Consent dialog will not be shown to the final user. Note that if the hostname of your application's <dfn data-key="callback">**callback URL**</dfn> is `localhost` or `127.0.0.1` the consent dialog will always be displayed.
60+
61+
- **Allow Offline Access**: If this setting is enabled, Auth0 will allow applications to ask for Refresh Tokens for this API.
62+
63+
- **Signing Algorithm**: The algorithm to sign the tokens with. The available values are `HS256` and `RS256`. When selecting `RS256` (recommended) the token will be signed with the tenant's private key. This value is set upon API creation and cannot be modified afterwards. For more details on the signing algorithms see the [Signing Algorithms paragraph](#signing-algorithms) below.
64+
65+
## Signing algorithms
66+
67+
When you create an API you have to select the algorithm your tokens will be signed with. The signature is used to verify that the sender of the JWT is who it says it is and to ensure that the message wasn't changed along the way.
68+
69+
::: note
70+
The signature is part of a JWT. If you are not familiar with the JWT structure, please see [JSON Web Tokens (JWTs) in Auth0](/jwt#what-is-the-json-web-token-structure-).
71+
:::
72+
73+
To create the signature part you have to take the encoded header, the encoded payload, a secret, the algorithm specified in the header, and sign that. That algorithm, which is part of the JWT header, is the one you select for your API: `HS256` or `RS256`.
74+
75+
- **RS256** is an [asymmetric algorithm](https://en.wikipedia.org/wiki/Public-key_cryptography) which means that there are two keys: one public and one private (secret). Auth0 has the secret key, which is used to generate the signature, and the consumer of the JWT has the public key, which is used to validate the signature.
76+
77+
- **HS256** is a [symmetric algorithm](https://en.wikipedia.org/wiki/Symmetric-key_algorithm) which means that there is only one secret key, shared between the two parties. The same key is used both to generate the signature and to validate it. Special care should be taken in order for the key to remain confidential.
78+
79+
The most secure practice, and our recommendation, is to use **RS256**. Some of the reasons are:
80+
81+
- With RS256 you are sure that only the holder of the private key (Auth0) can sign tokens, while anyone can check if the token is valid using the public key.
82+
83+
- Under HS256, if the secret key is compromised (e.g. by the application) you would have to re-deploy the API with the new secret.
84+
85+
- With RS256 you can request a token that is valid for multiple <dfn data-key="audience">audiences</dfn>.
86+
87+
- With RS256 you can implement key rotation without having to re-deploy the API with the new secret.
88+
89+
::: panel Verify an RS256 signed token
90+
Go to [Dashboard > Applications](${manage_url}/#/applications). Open the **Settings** of your applications, scroll down and open **Advanced Settings**. Open the **Certificates** tab and you will find the Public Key in the **Signing Certificate** field.
91+
92+
If you want to use the Public Key to verify a JWT signature on [JWT.io](https://jwt.io/), you can copy the Public Key and paste it in the **Public Key or Certificate** field under the **Verify Signature** section on the [JWT.io](https://jwt.io/) website.
93+
94+
If you want to verify the signature of a token from one of your applications, we recommend that you get the Public Key from your tenant's [JSON Web Key Set (JWKS)](/jwks). Your tenant's JWKS is `https://${account.namespace}/.well-known/jwks.json`.
95+
:::
96+
97+
For a more detailed overview of the JWT signing algorithms, see [JSON Web Token (JWT) Signing Algorithms Overview](https://auth0.com/blog/json-web-token-signing-algorithms-overview/).
98+
99+
# Keep reading
100+
101+
- [API Authorization Overview](/api-auth)
102+
- [Which OAuth Flow to Use](/api-auth/which-oauth-flow-to-use)
103+
- [Why you should always use Access Tokens to secure an API](/api-auth/why-use-access-tokens-to-secure-apis)

0 commit comments

Comments
 (0)