remove remaining uses of `GlobalAuthz`
Created by: camdencheek
This removes all remaining uses of database.GlobalAuthz
, replacing
them with a passed in db from a parent scope.
In order to do that, we needed to change how we override the
GlobalAuthz
database in the enterprise version. Instead of creating
a global no-op AuthzStore
, then overriding it with the enterprise
version, instead this creates an Authz
constructor which defaults
to constructing the no-op AuthzStore
, but is overriden by the
enterprise constructor. This allows us to use the Authz
constructor
like we do all the other store constructors in our codebase, which
makes it possible to use a non-global AuthzStore
.
I added @sourcegraph/security as a reviewer because this touches authz enterprise override code, and I'd rather not screw that up. All the relevant changes are contained in the first commit, so please take a peek at that.
Stacked on #26116 Progresses #26112 (closed)