Session Audits¶
Ranger generates a session audit event on every login attempt and every session refresh — whether the request originates from the Privacera Portal or from a client calling the Ranger REST API directly. These events capture who attempted to authenticate, when, from which IP address, whether the attempt succeeded or failed, and how the user authenticated. Session audits are the primary source of truth for login activity and are essential for security monitoring, compliance reporting, and incident investigation.
Routine authenticated API calls that do not trigger a login or session refresh do not produce session audit events.
What Triggers a Session Audit¶
| Trigger | action value |
|---|---|
| A new login is detected (no matching session exists) | CREATE |
| An existing session is refreshed (session already exists) | UPDATE |
Accessing Session Audits¶
Session audits can be viewed in the Privacera Portal under the Login Sessions tab.
Session Audit Fields¶
| Field | Description |
|---|---|
| Event ID | Unique UUID assigned to this audit event at the moment it is emitted. Used as the document primary key in Solr and S3. |
| Login ID | Username submitted at login. This is the raw value from the login form or HTTP header and may differ in casing from the stored Ranger user record. |
| Auth Status | Outcome of the login attempt. See Authentication Status values below. |
| Auth Type | Mechanism used to authenticate. See Authentication Type values below. |
| Auth Provider | Identity provider that verified the credentials. See Authentication Provider values below. |
| Device Type | Category of the client device, derived from the User-Agent header. See Device Type values below. |
| Request IP | IP address of the client that initiated the login. When Privacera is behind a reverse proxy, this reflects the address seen by the application server. |
| Auth Time | Timestamp of the authentication attempt as recorded in the database. Always slightly earlier than the event emission time. |
| Event Time | Wall-clock timestamp captured at the moment the audit event is built and emitted — a few milliseconds after authTime. |
| Action | Whether the session row was CREATEd (new login) or UPDATEd (session refresh). |
| DB Record ID | Primary key of the underlying x_auth_sess database row, providing a direct link between the audit event and the database record. |
| User ID | Internal Privacera user ID. null for failed login attempts where the username was not found. |
| Session Token | HTTP/Spring session token assigned by the server after a successful login. null for non-interactive logins (for example, API clients). |
| Tenant ID | Multi-tenant deployment identifier. Empty in single-tenant installations. |
Authentication Status¶
| Value | Meaning |
|---|---|
0 — Unknown | Status could not be determined |
1 — Success | Login succeeded |
2 — Wrong Password | Credentials were incorrect |
3 — Disabled | The account has been disabled |
4 — Locked | The account is locked after too many failed attempts |
5 — Password Expired | The user's password has expired |
6 — User Not Found | No Ranger user matches the submitted username |
Authentication Type¶
| Value | Meaning |
|---|---|
0 — Unknown | Authentication mechanism could not be determined |
1 — Password | Username and password form login |
2 — Kerberos | Kerberos ticket |
3 — SSO | Single Sign-On (SAML, OAuth, etc.) |
4 — Trusted Proxy | Pre-authenticated header from a trusted upstream proxy |
Authentication Provider¶
| Value | Meaning |
|---|---|
0 — Unknown | No specific provider configured (default in single-provider setups) |
1 — Password | Internal Ranger/Privacera password store |
2 — Kerberos | Kerberos KDC |
3 — SSO | External SSO provider |
4 — Trusted Proxy | Upstream trusted proxy |
Device Type¶
Derived from the User-Agent header at login time. The raw User-Agent string is not stored in the audit event.
| Value | Meaning |
|---|---|
0 — Unknown | Device type could not be determined |
1 — Browser | Desktop or mobile browser |
2 — iPhone | iPhone |
3 — iPad | iPad |
4 — iPod | iPod |
5 — Android | Android device |
Sample Session Audit Event¶
The following is an example of a session audit event as it appears in S3 and in the Audit Server's HTTP delivery pipeline.
In this example:
- User
blue.skylogged in successfully (authStatus: 1) using a username and password (authType: 1) from a browser (deviceType: 1). - The login originated from IP
10.227.53.251. - A new session row was created (
action: CREATE) with database ID42. - The session token issued is
AF8C2BC20BA4B3811DD4186DD3CF6BBF.
User-Agent not stored
The raw User-Agent header string is intentionally excluded from session audit events to avoid bloating audit payloads — strings up to 1,024 characters per login add up quickly at scale. The deviceType field provides a condensed categorical equivalent.
- Prev : Admin Audit Forwarding
- Next : Session Audit Forwarding