Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a user activity page to highlight suspicious activity #1001

Closed
edmorley opened this issue Mar 3, 2016 · 7 comments
Closed

Add a user activity page to highlight suspicious activity #1001

edmorley opened this issue Mar 3, 2016 · 7 comments
Labels
feature request help needed We'd love volunteers to advise on or help fix/implement this.

Comments

@edmorley
Copy link

edmorley commented Mar 3, 2016

Currently on PyPI, whilst there is a per-package activity table, there isn't anything that shows user activity.

To make account compromise more obvious, it would be great to have a user activity page on Warehouse, that shows:

  • Recent failed login attempts
  • Recent successful login attempts
  • 2FA enabling/disabling/adding of new devices (once we have Add support for two-factor authentication #996)
  • Recent actions performed against packages under the user's control (eg new version uploads, owner/maintainer addition/removal)
  • Timestamp, IP addresses and geolocation for all of the above
@edmorley edmorley changed the title Add an account activity page to make suspicious activity more obvious Add a user activity page to highlight suspicious activity Mar 3, 2016
@dstufft
Copy link
Member

dstufft commented Mar 3, 2016

I'd like to make something similar to what GitHub has, where they have a "Security" page in the user settings (and in the organization settings, which we should also mimic once we get organizations) that shows all of this information. Example:

screen-shot-2016-03-03-05-57-06

Clicking on one of the entries shows information like:

screen-shot-2016-03-03-05-57-38

This is almost certainly going to be a post-launch task though.

@demianbrecht
Copy link
Contributor

What would be awesome would be to have some event bus backend (Kafka or similar) that could service dispatched events (perhaps aggregated by statsd). Then, we could have consumers that would be responsible for reading the data and sending it along to various sources, one of which could be a service such as the above. We could then also take a look at feeding that data into Graphite (or some other metrics system) to provide an overall view of system health.

@dstufft: Is there currently architecture for something along those lines, or would that need to be investigated?

@edmorley
Copy link
Author

edmorley commented Mar 7, 2016

I'd like to make something similar to what GitHub has

Perfect - their security page was exactly what I had in mind when I filed this issue.

This is almost certainly going to be a post-launch task though.

Yeah I imagined this and the other issues I filed would be post-launch - I just wanted to make sure we had something on file to track the future work :-)

@brainwane
Copy link
Contributor

I think this is a great idea but I'm marking it for a future milestone to indicate that we shouldn't block launching the new PyPI on this issue. :)

@brainwane brainwane added the help needed We'd love volunteers to advise on or help fix/implement this. label Mar 14, 2018
@brainwane brainwane added the blocked Issues we can't or shouldn't get to yet label Jun 20, 2019
@brainwane
Copy link
Contributor

I'm pretty sure this depends on, and thus is blocked on, #5863. Heads-up @woodruffw -- once you get to that issue, I'd love you to leave a comment here clarifying what subset of the requests above are supported by the new logging.

@brainwane brainwane removed the blocked Issues we can't or shouldn't get to yet label Aug 15, 2019
@brainwane
Copy link
Contributor

Now unblocked! @edmorley see #6339 for events currently being logged. Is that enough to close this issue? I think it is but I want you to double-check.

@edmorley
Copy link
Author

@brainwane Hi! Yeah that list of now-logged events looks great - thank you :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request help needed We'd love volunteers to advise on or help fix/implement this.
Projects
None yet
Development

No branches or pull requests

5 participants