Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • 12-9-stable
  • 12-7-stable
  • 12-6-stable
  • 12-8-stable
  • github/fork/Kloppi313/patch-1
  • 12-5-stable
  • 12-4-stable
  • github/fork/ramalokesh8477/master
  • 12-1-stable
  • 12-2-stable
  • 12-0-stable
  • 12-3-stable
  • 42-42-stable
  • github/fork/hussamgit398/patch-2
  • 12-3-auto-deploy-20190911
  • 12-3-auto-deploy-20190916
  • 12-3-auto-deploy-20190908
  • 12-3-auto-deploy-20190901
  • 12-3-auto-deploy-20190901-32664
  • v12.10.0.pre
  • v12.9.0
  • v12.9.0-rc42
  • v12.8.7
  • v12.8.6
  • v12.8.5
  • v12.8.4
  • v12.8.3
  • v12.6.8
  • v12.7.7
  • v12.8.2
  • v12.8.1
  • v12.9.0.pre
  • v12.8.0
  • v12.8.0-rc42
  • v12.5.10
  • v12.7.6
  • v12.6.7
  • v12.7.5
  • v12.5.9
40 results

users.rb

  • Timothy Andrew's avatar
    20f679d6
    Allow unauthenticated access to the `/api/v4/users` API. · 20f679d6
    Timothy Andrew authored
    - The issue filtering frontend code needs access to this API for non-logged-in
      users + public projects. It uses the API to fetch information for a user by
      username.
    
    - We don't authenticate this API anymore, but instead - if the `current_user` is
      not present:
    
      - Verify that the `username` parameter has been passed. This disallows an
        unauthenticated user from grabbing a list of all users on the instance. The
        `UsersFinder` class performs an exact match on the `username`, so we are
        guaranteed to get 0 or 1 users.
      - Verify that the resulting user (if any) is accessible to be viewed publicly
        by calling `can?(current_user, :read_user, user)`
    20f679d6
    History
    Allow unauthenticated access to the `/api/v4/users` API.
    Timothy Andrew authored
    - The issue filtering frontend code needs access to this API for non-logged-in
      users + public projects. It uses the API to fetch information for a user by
      username.
    
    - We don't authenticate this API anymore, but instead - if the `current_user` is
      not present:
    
      - Verify that the `username` parameter has been passed. This disallows an
        unauthenticated user from grabbing a list of all users on the instance. The
        `UsersFinder` class performs an exact match on the `username`, so we are
        guaranteed to get 0 or 1 users.
      - Verify that the resulting user (if any) is accessible to be viewed publicly
        by calling `can?(current_user, :read_user, user)`