1. 03 Feb, 2019 1 commit
    • ale's avatar
      Add a SearchResource API · dd4cfa28
      ale authored
      To support pattern searches, make the LDAP query templates understand
      both "admin-provided input" and "user-provided input", so that
      wildcards will only be escaped in the latter case.
      dd4cfa28
  2. 14 Dec, 2018 1 commit
  3. 20 Nov, 2018 1 commit
  4. 17 Nov, 2018 3 commits
  5. 16 Nov, 2018 1 commit
    • ale's avatar
      Add shard and status to the User type · c5d3b1a5
      ale authored
      The shard is kept in sync with the email resource shard. CreateUser
      validation enforces a single email resource per account.
      c5d3b1a5
  6. 14 Nov, 2018 2 commits
  7. 12 Nov, 2018 2 commits
  8. 09 Nov, 2018 2 commits
    • ale's avatar
      Rename PasswordRecovery to AccountRecovery · ec82ed43
      ale authored
      Referring to the account is clearer. Also add account recovery
      integration tests, and a test fixture with encryption keys.
      ec82ed43
    • ale's avatar
      First stage of refactor targeting simplicity · 4e34034b
      ale authored
      Structure flow around requests themselves and composition rather than
      handlers and wrappers, the results are likely more readable (and
      shorter).
      
      Move all the user auth management business logic to a smart RawUser
      object, to separate it from details of API handling. The result should
      be more understandable: all critical changes are contained within a
      single type.
      
      Also, with all the workflow driven by Requests, we can get rid of the
      boilerplate in the HTTP API server and replace it with a tiny tiny
      layer of reflection.
      4e34034b
  9. 01 Nov, 2018 1 commit
  10. 17 Aug, 2018 1 commit
  11. 26 Jul, 2018 1 commit
    • ale's avatar
      Add an explicit Type field to Resources · da871e97
      ale authored
      The type is already encoded in the resource ID, but this is handy for
      API clients so that they do not need to parse resource IDs.
      da871e97
  12. 19 Jul, 2018 1 commit
  13. 01 Jul, 2018 3 commits
  14. 30 Jun, 2018 2 commits
  15. 26 Jun, 2018 1 commit
    • ale's avatar
      Minor refactoring of LDAP query templates · 11cab73f
      ale authored
      Rename queryConfig to queryTemplate to better reflect its purpose, and
      drop all cruft that had to do with config deserialization.
      11cab73f
  16. 24 Jun, 2018 1 commit
  17. 23 Jun, 2018 1 commit
    • ale's avatar
      Add password recovery logic · 3a30acc6
      ale authored
      Implement a password recovery endpoint, and a way to set the recovery
      hints (in the current model, it's a hint/response system).
      3a30acc6
  18. 22 Jun, 2018 3 commits
  19. 21 Jun, 2018 3 commits
  20. 20 Jun, 2018 3 commits
  21. 19 Jun, 2018 2 commits
    • ale's avatar
      Implement a transaction-like interface for the backend · ac2aa256
      ale authored
      This should make it easier to implement a SQL backend in the future if
      necessary, even though LDAP knows no such thing as transactions.
      
      As a result of a better low-level interface, reducing the boilerplate
      LDAP code, the business logic in model.go should be quite more
      readable.
      ac2aa256
    • ale's avatar
      Add a test LDAP server (Java-based) · b299bbd7
      ale authored
      This is a compiled version of the unboundid-ldap-server project,
      with our own patches. All dependencies are included.
      b299bbd7
  22. 10 Jun, 2018 1 commit
    • ale's avatar
      Add validators for request fields · 5ffe2e08
      ale authored
      This includes a number of validators meant to support the creation of
      new users and resources (for instance by checking for resource ID
      uniqueness etc).
      5ffe2e08
  23. 02 Apr, 2018 2 commits
  24. 01 Apr, 2018 1 commit