Giter VIP home page Giter VIP logo

Comments (13)

rfk avatar rfk commented on September 21, 2024

(Doing this accurately depends on #16)

from channelserver.

rfk avatar rfk commented on September 21, 2024

@jrconlin do you have any ideas in mind for how to apply rate-limiting for this service? Would you try to do it internally (maybe storing data into a shared redis instance?) or by talking to an external rate-limiting service?

from channelserver.

shane-tomlinson avatar shane-tomlinson commented on September 21, 2024

that introduces more coupling between this service and the rest of the FxA stack.

If the customs server were viewed along the lines of similar to 'iprepd', it's a dependency, but maybe one that's worthwhile.

from channelserver.

jrconlin avatar jrconlin commented on September 21, 2024

sigh. if secops ever does build a abuse tracking and mitigation system, I really hope they name it Godot.

@rfk No, I have no ideas or preferences for what sort of mitigation system we put in place. I suppose we should probably define what "abusive" behavior is. We've already got a few things in place for that, but I also wonder if in this time of bot farms and IPv6 addresses, if tracking per origin IP is reasonable?

FWIW, i'd kinda/sorta prefer a centralized abuse management system to keep us from re-inventing wheels, as well as preempt larger attacks.

from channelserver.

rfk avatar rfk commented on September 21, 2024

i'd kinda/sorta prefer a centralized abuse management system to keep us from re-inventing wheels,
as well as preempt larger attacks.

Me too! secops recently released their "iprepd" service for checking IP reputation, which isn't rate-limiting but is a step in that direction.

from channelserver.

rfk avatar rfk commented on September 21, 2024

We could integrate with the existing fxa-customs-server

Actually, this is not that easy in practice. We currently run fxa-customs-server as a "sidecar" service on the fxa-auth-server webheads, meaning that it's only available over localhost and not exposed to the broader network.

We could make a public-facing instance, but would need to figure out the security story for API calls, maybe using server-to-server secret keys.

I'm going to take this to the mailing list in order to loop others in on the discussion.

from channelserver.

shane-tomlinson avatar shane-tomlinson commented on September 21, 2024

We could make a public-facing instance, but would need to figure out the security story for API calls, maybe using server-to-server secret keys.

It could also be available only behind a VPN so not any goon could try to DDOS the service, even so server-to-server shared keys seems a responsible additional measure.

from channelserver.

rfk avatar rfk commented on September 21, 2024

This wasn't actually fixed in #31 in the end, re-opening.

from channelserver.

jrconlin avatar jrconlin commented on September 21, 2024

I thought that we agreed that we would use an outside system in order to restrict IP access? Doesn't that remove the need (or even the ability) for our server to do any sort of IP control?

from channelserver.

rfk avatar rfk commented on September 21, 2024

IIUC, we may still need to (1) parse and interpret a header provided by the security infrastructure, possibly rejecting requests as a result, and (2) log specific events about app-level misbehaviour to be interpreted by this infrastructure. I'll update the bug title accordingly.

from channelserver.

jrconlin avatar jrconlin commented on September 21, 2024

+1

Although I wonder if we should close this bug (and all the now invalid comments) and just start a new issue that talks about just doing that stuff.

from channelserver.

rfk avatar rfk commented on September 21, 2024

Sure, that makes sense; please file one as you see fit :-)

from channelserver.

jrconlin avatar jrconlin commented on September 21, 2024

Closing in favor of #34

from channelserver.

Related Issues (20)

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.