
| Role | Description |
|---|---|
Role: Group administrator | Description: Can manage all organizations within a group. Has full access to all settings and data across the group. Use this role for people who oversee multiple organizations. Note that this role is only available in multi-tenant subscriptions. |
Role: Organization administrator & contact | Description: Full access to the organization's settings and data, and the ability to manage users. This user is also the primary contact for the organization . |
Role: Organization administrator | Description: Full access to the organization's settings and data, and the ability to manage users. This role is not designated as the primary contact. |
Role: User | Description: Can view and interact with all data, including creating reports, setting alerts, and running queries. Cannot change organization settings or manage users. |
Role: User (read only) | Description: Can only view data. Cannot make any changes, add assets, modify settings, or create reports. |
| Field | Description |
|---|---|
Field: SSO name (slug) | Description: A short identifier for your organization using only lowercase letters, numbers and dashes (e.g. acme). It is used in the login URL /usr/sso?org=<slug>. |
Field: Provider | Description: Choose "Microsoft Azure AD", "Okta", or "Generic OIDC". Use "Generic OIDC" for Keycloak and any other standard provider. |
Field: Issuer / discovery URL | Description: The OIDC issuer URL of your provider. It must start with https://. ShadowTrackr appends /.well-known/openid-configuration to discover the endpoints automatically. |
Field: Client ID | Description: The client / application ID issued by your provider when you register ShadowTrackr as an application. |
Field: Client secret | Description: The client secret issued by your provider. It is encrypted at rest. Leave this field blank when editing to keep the stored secret unchanged. Note that for Microsoft Entra ID you need to copy the value of the client secret, not the ID of the secret. |
Field: Allowed email domains | Description: Optional comma-separated list (e.g. example.com, example.org). When set, only users whose verified email ends in one of these domains may sign in. |
Field: Enable SSO | Description: Turns SSO on. Users can then log in with the "Log in with SSO" button on the login page or directly at /usr/sso?org=<slug>. |
Field: Require SSO | Description: Disables password login for everyone in the organization. Only enable this after you have confirmed SSO works, or you may lock everyone out. |

https://<your-shadowtrackr-domain>/usr/sso_callbackopenid, email and profile scopes, so make sure your provider returns an email address for each user.| ShadowTrackr field | Example value |
|---|---|
ShadowTrackr field: Provider | Example value: Microsoft Azure AD |
ShadowTrackr field: Issuer / discovery URL | Example value: https://login.microsoftonline.com/<tenant-id>/v2.0 |
ShadowTrackr field: Client ID | Example value: The Application (client) ID from the app registration overview |
ShadowTrackr field: Client secret | Example value: The secret Value from Certificates & secrets (copy it immediately — it is only shown once) |
ShadowTrackr field: Allowed email domains | Example value: yourcompany.com |
<tenant-id> is the Directory (tenant) ID shown on the app registration overview. Azure AD / Entra returns openid, email and profile by default, so no extra API permissions are required for sign-in.| ShadowTrackr field | Example value |
|---|---|
ShadowTrackr field: Provider | Example value: Generic OIDC |
ShadowTrackr field: Issuer / discovery URL | Example value: https://keycloak.example.com/realms/<realm> |
ShadowTrackr field: Client ID | Example value: shadowtrackr |
ShadowTrackr field: Client secret | Example value: The secret from the client's Credentials tab |
ShadowTrackr field: Allowed email domains | Example value: yourcompany.com |
/auth path segment: https://keycloak.example.com/auth/realms/<realm>. Keycloak includes the email and profile scopes by default, so users' email addresses are returned automatically.