Account vs Session
Understanding the difference between account and session signals in Verisoul
Accounts and Sessions are the fundamental data entities in Verisoul. Understanding this distinction is crucial for implementing effective fraud prevention strategies.
How Accounts and Sessions Work Together
Every webpage or app interaction gets a session_id
on the client side. This session is then later tied to an account (account_id
).
- Sessions represent a point in time interaction with your application
- Accounts represent persistent user identities that span multiple sessions
Sessions are typically only tied to a single account but this is not enforced via the API.
Key Differences
Account | Session |
---|---|
Persistent identity | Temporary interaction |
Aggregate of all sessions | Data from a single client-side interaction |
Spans multiple sessions | Limited time window (24 hours) |
Can be deleted and updated | Cannot be modified once created |
Can be added to lists | Cannot be added to lists |
Session Signals
Session signals are derived purely from data collected from the webpage or application without requiring information about the account_id or other sessions.
- Device Information: Hardware, software, and browser characteristics
- Network information: IP address, connection type, service provider
- Location information: Geolocation, country, state, city, zip code
- Behavioral data: Mouse movements, typing patterns, touch interactions
Types of Session Signals
Session signals fall into two main categories:
- Session Data: Raw information collected during the session
- Session Scores: Risk evaluations derived from the session data
Session Data
Session data includes detailed information about the user’s environment and behavior:
Session Scores
Session scores are risk evaluations derived from analyzing the session data:
Account Signals
Account signals are an aggregate of all the sessions associated with an account_id. They also include information that can only be tied to the account level.
What Are Account Signals?
Account signals include:
- Identity information: Email domains, usernames, account creation patterns
- Cross-session patterns: How the user behaves across multiple sessions
- Linked accounts: Connections to other accounts in your system
- Impossible travel: Login attempts from geographically impossible locations
- Email risk: Risk associated with the email address
- List membership: Inclusion in allow/block lists
- Device and network uniqueness: Number of unique devices and networks used over time periods
Example of Account Signals
Account signals provide a comprehensive view of user activity across multiple sessions:
Risk Signal Average
The risk_signal_average
field represents an intelligent time-decay based algorithm of the session scores. This means:
- Recent sessions have more weight in the calculation than older sessions
- The algorithm intelligently aggregates risk signals across all sessions
- It provides a more accurate representation of current risk than a simple average
- It helps identify patterns of risk that persist across multiple sessions
API Access and Rules
Both account and session data is available via the API in real time. This allows you to:
- Make real-time decisions based on current risk scores
- Apply different rules to accounts vs sessions
- Implement custom logic based on your specific use case
Rules can be configured to run on both Accounts and Sessions, allowing for flexible fraud prevention strategies.
Combining Account and Session Signals
Verisoul’s power comes from analyzing both account and session signals together
New User Signup
During signup, a user will only have one session, and that session’s risk score will effectively be their account score. This initial assessment is critical for preventing fraudulent accounts from being created.
Established Accounts with Risky Sessions
An account in good standing can occasionally have a risky session that doesn’t necessarily mean the entire account should be banned. For example:
- A legitimate user might connect through a VPN or proxy for privacy reasons
- A shared device might show unusual behavioral patterns
- Network conditions might trigger certain risk signals
In these cases, you might choose to:
- Block the specific session activity without banning the account
- Require additional authentication for that session
- Limit functionality until the risk is cleared
This approach allows you to maintain security while minimizing disruption for legitimate users who occasionally trigger risk signals.
Implementation Best Practices
When to Focus on Account Signals
- During user registration
- When users claim promotions or bonuses
- For high-value transactions
- When monitoring for multi-accounting
When to Focus on Session Signals
- During login attempts
- When users change account settings
- For password reset requests
- When monitoring for account takeovers
Balancing Security and User Experience
- Apply stricter controls for high-risk accounts or sessions
- Use progressive security measures based on risk levels
- Consider the context of the action being performed
- Monitor false positive rates and adjust thresholds accordingly