)]}'
{
  "commit": "10fd930aed1f457202c220a70194de83e1942971",
  "tree": "6157fd25d875cfb2023d3c5aca3af0b04c803b7a",
  "parents": [
    "c8d81c4ab6784d9ccd9bceb5189d89c0a892eef2"
  ],
  "author": {
    "name": "Luca Milanesio",
    "email": "luca.milanesio@gmail.com",
    "time": "Fri Nov 13 18:44:29 2020 +0000"
  },
  "committer": {
    "name": "Luca Milanesio",
    "email": "luca.milanesio@gmail.com",
    "time": "Tue Nov 17 08:58:14 2020 +0000"
  },
  "message": "Workaround Gitiles bug on All-Users visibility\n\nGitiles has special FilteredRepository wrapper that\nallows to carefully hide refs based on the project\u0027s ACLs.\nThere is however an optimisation that skips the filtering\nin case a user has READ permissions on every ACLs patterns.\n\nWhen the target repository is All-Users, the optimisation\nturns into a security issue because it allows seeing everything\nthat belongs to everyone:\n- draft comments\n- PII of all users\n- external ids\n- draft edits\n\nBlock Gitiles or any other part of Gerrit to abuse of this\npower when the target repository is All-Users, where nobody\ncan be authorised to skip the ACLs evaluation.\n\nCover the additional special case of the All-Users project\naccess with two explicit positive and negative tests,\nso that the security check is covered.\n\nBug: Issue 13621\nChange-Id: Ia6ea1a9fd5473adff534204aea7d8f25324a45b7\n(cherry picked from commit 45071d6977932bca5a1427c8abad24710fed2e33)\n(cherry picked from commit 1be1d6ff45f18c978fd21e5c7d437d0a1351d7d8)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fefc84d73df960157cef0039ee412c75d249572a",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java",
      "new_id": "1b035b95b851ecc9ed77dc4687356866e6216624",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/main/java/com/google/gerrit/server/project/ProjectControl.java"
    },
    {
      "type": "modify",
      "old_id": "4f2284cb403c306cdeaab62e9af1e096a50214d1",
      "old_mode": 33188,
      "old_path": "gerrit-server/src/test/java/com/google/gerrit/server/project/RefControlTest.java",
      "new_id": "0c3d4c28e98d59a8564a020193f55d5908206e3e",
      "new_mode": 33188,
      "new_path": "gerrit-server/src/test/java/com/google/gerrit/server/project/RefControlTest.java"
    }
  ]
}
