A custom domain is needed to be setup within the Auth0 platform, this way the CDN can intercept the requests. A CNAME DNS needs to be created with Proxied enabled.
|Universal Login Classic Login
|Universal Login Classic Registration
|Universal Login New Login (Identifier first)
|Universal Login New Login (UN/PW)
|Universal Login New Registration (Identifier first)
|Universal Login New Registration (UN/PW)
Whilst Universal Login Classic does have a HTML editor where you can add the client side Arkose implementation and Universal Login New has the ability to edit the template, having all the code in a single Cloudflare worker allows for a simpler integration.
A worker will run regardless of the client side integration method due to Auth0 using the same URL to render the page and to validate the entered credentials, for Universal Login New this URL is in the format of
https://customdomain/u/login. Auth0 switches between a GET and POST call.
- Access your Auth0 tenant.
- In the side panel, navigate to Branding -> Custom Domains.
- Input a custom domain and select Certificate Type.
- Select Add Domain.
- Now that the base configuration is set up, the Cloudflare setup can be added.
The worker logic needs to handle 2 flows:
- Token Validation through Arkose Labs Verify API: The second flow within the worker is to validate the Token by sending it to the Arkose Labs Verify API.
This step by step guide will walk you through the setup for Universal Login New (Identifier first), for other flows the URLs will be different.
- Log in to your Cloudflare account.
- Navigate to the Workers & Pages section in the side navigation panel and select Overview.
- After the page loads, click Create an Service button.
- Make sure you are on the Workers tab and select Create Worker.
- Provide a name for the worker.
- Leave the default HTTP handler selected and click Create Service.
- The Worker has been created, the next step is editing workers code.
- Once the worker has been created, click on Edit Code.
- Delete the sample code from the
- Open CDN-Examples Auth0 and copy and paste the code into the
- Click on Save and deploy.
- Navigate to the Settings page of the worker.
- Select the Variables menu item from the side navigation panel.
Add the following parameters as Worker variables:
Variable Description Sample
Arkose Labs public key obtained through Command Center
Arkose Labs private key obtained through Command Center
Client subdomain name provided to you via the Arkose Labs team. Default “client-api” will always work for the keys.
Verify subdomain name provided to you via Arkose Labs team. Default “verify-api” will always work for the keys.
A page to route the user to when an error occurs (outside of fail open). https://www.arkoselabs.com
The length of time the Arkose cookies should be active for (in milliseconds).
The name of the cookie that the Arkose token will be stored in.
The name of the cookie that an Arkose error will be stored in.
The number of times to retry resetting Arkose if there is a client side error.
The number of times to retry verification if there is an error.
If Arkose has an outage, can Arkose be bypassed.
Make the privateKey encrypted by selecting the Encrypt button.
Click Save and Deploy
- Navigate to the Worker page and select the Triggers tab.
- Click on Add route.
- Enter the route name with the following format
customdomain/u/*(no https is needed).
- Select the domain Zone from the dropdown menu.
- Click on Add route.
- Once the route is added, the setup has been completed.
Updated 6 months ago