> ## Documentation Index
> Fetch the complete documentation index at: https://docs-dev-react-sdk-reference.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Enable and configure Customer Managed Keys (BYOK) for your Auth0 tenant using the Auth0 Dashboard.

# Configure Customer Managed Keys with the Dashboard

Auth0 secures your tenant secrets and data using an Auth0 Environment Root Key, at the top of the envelope encryption key hierarchy. The Auth0 Environment Root Key and Customer Provided Root Key are stored in the hardware security module (HSM) of the corresponding Auth0 Cloud Service Provider, AWS or Azure.

## Bring Your Own Key

Using Bring Your Own Key, users with the  [Key Management Editor role](/docs/get-started/manage-dashboard-access/add-dashboard-users) can use the <Tooltip tip="Auth0 Dashboard: Auth0's main product to configure your services." cta="View Glossary" href="/docs/glossary?term=Auth0+Dashboard">Auth0 Dashboard</Tooltip> to replace the default Auth0 Environment Root Key with their own Customer provided Root Key.

Customers can securely upload their own Root Key which contains their own cryptographic material to:

* Meet custom key generation and provenance requirements for the Environment Root Key.
* Meet specific key installation or lifespan requirements for the Environment Root Key.

<Warning>
  By importing your own Customer Provided Root Key with Bring Your Own Key, you are implicitly deauthorizing Auth0 from managing the lifecycle of the Customer Provided Root Key, except for its deletion.
</Warning>

To begin, go to Dashboard > Settings > Encryptions keys

<Frame>
  <img src="https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=a6526ceb389a8c475916187295677739" alt="Dashboard > Settings > Encryption Keys" data-og-width="1162" width="1162" data-og-height="577" height="577" data-path="docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?w=280&fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=fbc590493cdd695bb66e8c8523ced4ef 280w, https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?w=560&fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=277e4d0b513b9f6ef448d927c068d3cd 560w, https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?w=840&fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=1af29a81fb44e6a8b399258199302824 840w, https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?w=1100&fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=566239612b51fedd784e090b77e3742f 1100w, https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?w=1650&fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=7967145e47e3599bfda2f964bee7b688 1650w, https://mintcdn.com/docs-dev-react-sdk-reference/oy6IBZBKl4tzK2RW/docs/images/cdy7uua7fh8z/1qmfCSl7cOugrHIAdxSyAt/6c7d7185920e61809d9423c8e3d4c4f2/Encryption_Keys_-_EN.png?w=2500&fit=max&auto=format&n=oy6IBZBKl4tzK2RW&q=85&s=ae5e4b22691c54e490871c51bc5043ec 2500w" />
</Frame>

Select **Upload Key** to begin the import process for your Customer Provided Root Key. This will open the import dialog:

<Frame>
  <img src="https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=49d373c84e7af71b9d80543badc5d1c4" alt="Dashboard > Settings > Encryption Keys > Upload" data-og-width="629" width="629" data-og-height="462" height="462" data-path="docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?w=280&fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=b93796da9a5c517435e931b690fe28aa 280w, https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?w=560&fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=52405504d896f7006e17dea67f406aa7 560w, https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?w=840&fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=b4040719ce3150eca0be89cd2acc8b15 840w, https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?w=1100&fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=e5a736d2623a903957e23e758ff58af3 1100w, https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?w=1650&fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=9b8138a4e4fd310c4c37abb66dab8670 1650w, https://mintcdn.com/docs-dev-react-sdk-reference/M10Sj0FBspbC6aTf/docs/images/cdy7uua7fh8z/1GJPgT1Be7Wm6G6ldCVW4q/96e5a326aa643f29bb50aea76fce27aa/image__2_.png?w=2500&fit=max&auto=format&n=M10Sj0FBspbC6aTf&q=85&s=7061648bf25d28dd7441490bbfb75d7f 2500w" />
</Frame>

When you select **Upload Key** and then **Download,** it initiates the Bring Your Own Keys  process:

1. Creates a public wrapping key and downloads it to your system.
2. Take the public wrapping key and wrap your own cryptographic material with it using your own key management system to create a Wrapped Encryption Key (the Customer Provided Root Key).
3. Upload your Wrapped Encryption Key and select **Save**.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  The Wrapped Encryption Key once uploaded replaces the Auth0 Environment Root Key in the hardware security module (AWS or Azure) as a Customer Provided Root key.
</Callout>

## Cryptographic material requirements

Use your key management system to wrap your own cryptographic material with the public wrapping key and create the Wrapped Encryption Key. Use these settings for the [CKM\_RSA\_AES\_KEY\_WRAP](https://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226894) algorithm parameters based on your Auth0 Cloud Service Provider (AWS or Azure):

### Auth0 on AWS cloud

* Public wrapping key length: 3072 bits
* Algorithm: CKG\_MGF1\_SHA256
* Temporary AES key length for CKM\_AES\_KEY\_WRAP\_PAD: 256 bits
* Customer provided root key type: 256 bits long AES symmetric key

### Auth0 on Azure cloud

* Public wrapping key length: 2048 bits
* Algorithm: CKG\_MGF1\_SHA-1
* Temporary AES key length for CKM\_AES\_KEY\_WRAP\_PAD: 256 bits
* Customer Provided Root Key type: 2048 bits long RSA private key
* Private key encoding: PKCS #8 - ASN.1 DER
