auth0
Auth0 is a comprehensive identity and access management (IAM) platform that provides authentication and authorization services for applications and APIs. As a customer identity and access management (CIAM) solution, Auth0 enables developers to implement secure user authentication, single sign-on (SSO), multi-factor authentication (MFA), and identity federation across web, mobile, and legacy applications.
| Category | Identity |
| Direction | Query source |
| Sign-in | Management API Token, Client ID and Client Secret |
| Query languages | SQLite |
| Tables | 15 |
| Query templates | 50 |
| Website | http://auth0.com |
Before you start
Huntbase can sign in to auth0 with any of these methods: Management API Token, Client ID and Client Secret. Pick one, create the credential in auth0, then keep it to hand for the Connect step.
Management API Token
Auth0 Management API access token. Used in preference to client_id + client_secret if both are provided.
- In the Auth0 Dashboard, go to Applications › APIs › Auth0 Management API.
- Open the API Explorer tab and copy the token from the Token section.
Client ID and Client Secret
Auth0 application client ID and client secret, used to obtain a Management API token automatically.
- In the Auth0 Dashboard, go to Applications › Applications and click Create Application.
- Enter a name, choose Machine to Machine Applications, and click Create.
- Select the Auth0 Management API, choose only the Permissions you need for querying, and click Authorize.
- Open the application's Settings tab and copy the Client ID and Client Secret.
- A token copied from the API Explorer is meant for testing only. It expires after 24 hours by default and cannot be revoked, so use Client ID and Client Secret for a lasting connection.
- Avoid granting
create:client_grantsorupdate:client_grants. They let the application grant itself further permissions.
For the vendor's own instructions, see Auth0 machine-to-machine application documentation.
Use a dedicated, read-only credential for Huntbase where the product allows it. Huntbase only needs to read.
Connect auth0
- Go to Connections and click New connection, or click New connection on the auth0 product page.
- On Product, pick auth0 and choose the Owner.
- On Details, give the connection a Name and, optionally, a Description.
- On Connect, fill in the settings and credentials described below.
- On Verify, review the summary and click Create & check.
For everything else on the setup page — saving a draft, I'll do this later, and what each check result means — see Connections.
Settings
Where your auth0 lives:
| Field | Required | Notes |
|---|---|---|
| Auth0 Domain | Yes | Your tenant domain, such as <tenant>.<region>.auth0.com, without https://. |
| Client ID | No |
Credentials
Choose a Method, enter a Credential label (for example Production), then fill in the fields for that method.
Management API Token
| Field | Required | Notes |
|---|---|---|
| Management API Token | Yes | Secret — not shown again after you save it. |
Client ID and Client Secret
| Field | Required | Notes |
|---|---|---|
| Client Secret | Yes | Secret — not shown again after you save it. |
Query it
Once connected, auth0 can serve these languages in a query tab, and Scout can use it when you ask in Auto:
| Language | Use it for |
|---|---|
| SQLite | SQL over the 15 tables listed below, alongside every other connected source. |
Example: SQLite
Session and Idle Session Lifetime Settings — Retrieve the configured duration of active and idle sessions for the tenant.
select
session_lifetime,
idle_session_lifetime
from
auth0_tenant_settings;
auth0 ships with 50 query templates. Find them in Library › Queries — see Query templates.
What syncs automatically
auth0 comes with a content pack. These queries run on a schedule on each new connection so the entities they find appear in the Activity Feed without you asking. You can turn syncing off from the connection's Synchronisation Settings card.
| Query | Finds |
|---|---|
| Sync users | user, account, ip |
Tables
auth0 adds 15 tables. Browse their columns from Schema in the query bar's ⋯ menu.
All 15 tables
| Table | Contains |
|---|---|
auth0_action | Actions are secure, tenant-specific, versioned functions written in Node.js that execute at certain points within the Auth0 platform. |
auth0_client | Client is an application or an SSO integration. |
auth0_connection | Connection is the relationship between Auth0 and a source of users. |
auth0_hook | Hooks allow you to customize the behavior of Auth0 with Node.js code that is executed in selected extension points. |
auth0_log | Logs are all the events that occur in your tenants including user authentication and administrative actions such as adding and updating applications, connections, and rules. |
auth0_organization | Organization is used to allow B2B customers to better manage their partners and customers, and to customize the ways that end-users access their applications. |
auth0_role | Role is a collection of permissions that you can apply to user. |
auth0_role_assigned_user | List of users assigned to role. |
auth0_role_permission | Permissions assigned to role. |
auth0_signing_key | Signing keys are used to sign ID tokens, access tokens, SAML assertions, and WS-Fed assertions sent to your application or API. |
auth0_stats_daily | Daily stats for an Auth0 Tenant. |
auth0_tenant_settings | Tenant settings definitions. |
auth0_user | User represents an Auth0 user resource. |
auth0_user_assigned_role | List of roles assigned to user. |
auth0_user_permission | Permissions assigned to user, including permissions assigned through users roles. |
Next steps
- Connections — health, credentials and settings after you connect
- Query languages — syntax, parameters and time ranges
- Chatting with Scout — ask questions without writing a query
- All integrations — the rest of the catalog