AuthForge supports per-app access control lists for HWIDs and IP addresses. Use them to block pirated copies, restrict beta access, or geo-limit your application.
How it works
During license validation (/auth/validate), the server checks the requesting HWID and IP address against your app’s access control lists before validating the license itself.
Evaluation order
- IP blacklist: If the IP is blacklisted, reject immediately.
- IP whitelist: If a whitelist is configured and the IP is NOT on it, reject.
- HWID blacklist: If the HWID is blacklisted, reject.
- HWID whitelist: If a whitelist is configured and the HWID is NOT on it, reject.
Blacklist takes precedence over whitelist. If an entry appears on both lists, it is blocked.
HWID blacklist
Block specific hardware IDs from authenticating. The HWID is the SHA-256 hash the SDK collects from the user’s machine.
Use cases:
- Block a known pirated/cracked machine fingerprint
- Revoke access from a specific device without revoking the entire license
HWID whitelist
When set, only listed HWIDs can authenticate. This is allowlist mode; any HWID not on the list is rejected.
Use cases:
- Restrict a beta to specific testers’ machines
- Lock down access to known-good devices in an enterprise deployment
Enabling a HWID whitelist blocks ALL devices not explicitly listed. Make sure you’ve added all expected HWIDs before enabling.
IP blacklist
Block specific IP addresses from authenticating.
Use cases:
- Block IPs associated with abuse
- Block known VPN/proxy ranges
IP whitelist
When set, only listed IPs can authenticate. Useful for enterprise environments where users connect from known office IPs.
Configuration
Via the dashboard
Go to your app’s Settings → Security. You’ll see four sections for each list type. Add entries and click Save.
Via the Developer API
Get current security config:
Replace entire security config:
You can include only the lists you want to update; omitted lists remain unchanged.
Add/remove individual entries:
Limits
Error response
When a request is blocked by a blacklist or whitelist, the SDK receives:
The SDK treats this as a login failure. See SDK Best Practices for guidance on user-facing error messages.
Next steps