Python SDK for user monitoring
Sqreen protects your application users against major threats, such as account takeover, password bruteforce, suspicious activities coming from TOR or unusual VPN.
Sqreen supports Django framework, out of the box, for automatic User Context.
Advanced User Context allows you to set up user monitoring in your application with flexibility and powerful additional features. You will need to integrate Sqreen SDK in your application (< 10 minutes).
User monitoring SDK
Two lines are enough to monitor your users activities with Sqreen.
sqreen.auth_track should be performed when creating your user session, basically at signup, and login.
import sqreen sqreen.auth_track(is_login_successful, username=user.email)
Sqreen integration at signup and login
You should not call
sqreen.auth_track each time you check a user session in your application.
Example of a full implementation:
import sqreen def login(username, password): user = check_password(username, password) if user is not None: sqreen.auth_track(True, username=username) else: sqreen.auth_track(False, username=username) return user
auth_track takes one positional argument and keyword arguments.
def auth_track(success, **user_identifiers):
The first argument is a boolean indicating if the login attempt was successful or not (True or False).
Then, the keywords argument takes your user identification information. They will be used on Sqreen's user interface to help you identify which users are at risk, or which are attacking your application. The hash keys and values should only be strings.
If your users can be identified with a single value (email, nickname...), you can send proceed that way:
If your users are identified with a composite primary key (multiple values), all of them should be sent in order to identify them accurately on Sqreen's user interface.
For example, if you are a white label shop and your users are identified by their email and the shop id, you can send these identifiers like this:
sqreen.auth_track(True, username=user.email, platform_id=platform.id)
Sqreen SDK only accepts user identifiers
Don't send any other information (like the auth failure reason). Sqreen will consider them as part of the user identifier, and will not be able to merge successful and failed authentications.