local-storage-wromo-guard
v1.0.0
Published
A universal uid local storage guard for handling authentication state. By Ghepes - with ❤️ for Wromo and the web.
Maintainers
Readme
local-storage-web-reset
Local Storage Web Reset to send user to Login page if the uid has expired or is not correct and no data is received on that web dashboard.
INFO and trust in UID: Encrypting the UID in localStorage: Useless. For Dashboard to read it, the decryption algorithm must be in your Vanilla JS files. A hacker opens DevTools, sees how you decrypt it, and does the same.
Moving to IndexedDB: Only gives a false sense of visual security. Under the hood, it's just as exposed.
Long and complicated codes: This is the only correct option. Standard UIDs are already exactly that. They are based on the mathematical impossibility of being guessed.
Keep XXXX_uid in localStorage. It's the industry standard. If a user plays around there and enters a fake ID, they ruin their own experience. Your system is armored by the fact that DB Bucket files with a unique ID for each user are enough:
Can someone "guess" a real ID? If the ID is generated correctly (like the ones from Firebase with 28 alphanumeric characters, ex: nG4RE2PqlpN1qs...), the answer is: NO. The possible combinations are in the order of trillions of trillions. If a hacker were to use a supercomputer to try a billion codes per second, it would still take millions of years to accidentally hit a single valid Website client ID.
(the confirmation signal): window.SecurityGuard.dateIncarcateCuSucces();
This is all your guard (CDN script) is waiting for:
If the UID is correct: The fetch succeeds, the application reaches that line of code, executes it, and the 8-second timer stops.
If the UID is false (hacker): The fetch fails, execution jumps directly to catch (error), and that line of code is never executed again. Because the CDN script did not receive the "signal", it continues its countdown and kicks the user out at the end of the 8 seconds.
Simple js tool to send user to login if UID not correct:
Add to cod dashbord : SCRIPT CODE PAGE BODY or HEAD
<script
src="https://cdn.domeniul-tau.com/local-storage-wromo-guard/wromo-guard.js"
data-login-url="https://xyz.mydomain.com/login/"
data-timeout="8000">
</script>