Coder Social home page Coder Social logo

Secure tracking about condor HOT 8 OPEN

micnews avatar micnews commented on July 20, 2024
Secure tracking

from condor.

Comments (8)

ralphtheninja avatar ralphtheninja commented on July 20, 2024

What kind of data are you tracking?

from condor.

dominictarr avatar dominictarr commented on July 20, 2024

@ralphtheninja it's user analytics. links clicked on, how far they scroll down, etc etc.

Idea: in first request, the server detects ip address, and hashes that with user agent, session etc into one token. the token should be deterministic given the data. it would be given to the client and uses as the id in the logs - but also stored in a database. then we know that if it is not in the database then it's not valid. could hash with salt so that it's infeasible to guess a valid id.

from condor.

dominictarr avatar dominictarr commented on July 20, 2024

of course, someone could still get the token off the page and mess with the analytics by writing out funny data. there isn't anyway to stop that. so most of this would come down to validation. maybe rate limiting updates from one connection?

from condor.

ralphtheninja avatar ralphtheninja commented on July 20, 2024

Sign the data somehow? Too expensive?

from condor.

sessa avatar sessa commented on July 20, 2024

Just one thought -- Regardless of if we can sign the data or not there is a need to clean up the data anyways, and if so, can we handle bogus data then, instead of pre-empting it? (Ideally we do both, but perhaps short-term clean-up can handle most use cases and then we can figure out how bad bots or malicious users are abusing the endpoints?)

from condor.

heapwolf avatar heapwolf commented on July 20, 2024

We can have predetermined types and lengths for the data on the receiving servers, maybe even some simple validation schema. This will protect against mal-formed requests.

Anything that originates on the client and isn't passed through the back end of the application is going to be untrusted. But that's not terrible since there aren't really any incentives for attack. This interface isn't (D)DOS-able.

from condor.

dominictarr avatar dominictarr commented on July 20, 2024

signing the data will be quite cpu expensive (on both the client and server) we don't want to affect UX at by something the user is not getting anything out of. agree what we want is mainly filtering.

from condor.

will123195 avatar will123195 commented on July 20, 2024

+1 simple validation schema

from condor.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.