1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-11 09:22:40 +01:00
phorge-phorge/src/applications/auth
epriestley 69ddb0ced6 Issue "anonymous" sessions for logged-out users
Summary:
Ref T4339. Ref T4310. Currently, sessions look like `"afad85d675fda87a4fadd54"`, and are only issued for logged-in users. To support logged-out CSRF and (eventually) external user sessions, I made two small changes:

  - First, sessions now have a "kind", which is indicated by a prefix, like `"A/ab987asdcas7dca"`. This mostly allows us to issue session queries more efficiently: we don't have to issue a query at all for anonymous sessions, and can join the correct table for user and external sessions and save a query. Generally, this gives us more debugging information and more opportunity to recover from issues in a user-friendly way, as with the "invalid session" error in this diff.
  - Secondly, if you load a page and don't have a session, we give you an anonymous session. This is just a secret with no special significance.

This does not implement CSRF yet, but gives us a client secret we can use to implement it.

Test Plan:
  - Logged in.
  - Logged out.
  - Browsed around.
  - Logged in again.
  - Went through link/register.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T4310, T4339

Differential Revision: https://secure.phabricator.com/D8043
2014-01-23 14:03:22 -08:00
..
application Fix new logged-out "Login" button URI and workflowiness 2013-11-13 11:48:24 -08:00
constants Consolidate use of magical cookie name strings 2014-01-23 14:01:35 -08:00
controller Issue "anonymous" sessions for logged-out users 2014-01-23 14:03:22 -08:00
editor Allow authentication providers to store and customize additional configuration 2013-06-18 10:02:34 -07:00
engine Issue "anonymous" sessions for logged-out users 2014-01-23 14:03:22 -08:00
garbagecollector Expire and garbage collect unused sessions 2014-01-15 13:56:16 -08:00
management Extend all "ManagementWorkflow" classes from a base class 2013-12-27 13:15:40 -08:00
provider Consolidate use of magical cookie name strings 2014-01-23 14:01:35 -08:00
query Remove session limits and sequencing 2014-01-15 17:27:59 -08:00
storage Issue "anonymous" sessions for logged-out users 2014-01-23 14:03:22 -08:00
view Send old login code to the bottom of the sea 2013-06-19 01:33:27 -07:00