diff options
| author | mo khan <mo@mokhan.ca> | 2025-07-23 11:50:42 -0600 |
|---|---|---|
| committer | mo khan <mo@mokhan.ca> | 2025-07-23 11:50:42 -0600 |
| commit | 944ef4ca499fe27a57d4cd3c21bccb99508526ca (patch) | |
| tree | 3c929141ee07fc2a4f2c2b825630cb2ad3121b44 /app/init.go | |
| parent | 8a1b03afb949a5a3be6a78e9b2c88d2e48643f46 (diff) | |
refactor: Update RequirePermission middleware to connect to spicedb CheckPermission API
Diffstat (limited to 'app/init.go')
| -rw-r--r-- | app/init.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/app/init.go b/app/init.go index 5057fe4..53f9e66 100644 --- a/app/init.go +++ b/app/init.go @@ -1,19 +1,21 @@ package app import ( + "context" "net/http" "os" + "github.com/authzed/authzed-go/v1" "github.com/rs/zerolog" "github.com/xlgmokha/x/pkg/env" "github.com/xlgmokha/x/pkg/ioc" "github.com/xlgmokha/x/pkg/log" "github.com/xlgmokha/x/pkg/mapper" - "gitlab.com/gitlab-org/software-supply-chain-security/authorization/authzd.git/pkg/rpc" "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/dashboard" "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/sparkles" "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/db" "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/domain" + "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/authz" "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/web" ) @@ -40,12 +42,16 @@ func init() { }, } }) - ioc.Register[rpc.Ability](ioc.Default, func() rpc.Ability { - return rpc.NewAbilityProtobufClient( - env.Fetch("AUTHZD_HOST", ""), - ioc.MustResolve[*http.Client](ioc.Default), + ioc.RegisterSingleton[*authzed.Client](ioc.Default, func() *authzed.Client { + return authz.NewSpiceDBClient( + context.Background(), + env.Fetch("ZED_ENDPOINT", ":50051"), + env.Fetch("ZED_TOKEN", "secret"), ) }) + ioc.Register[authz.CheckPermission](ioc.Default, func() authz.CheckPermission { + return ioc.MustResolve[*authzed.Client](ioc.Default) + }) http.DefaultClient = ioc.MustResolve[*http.Client](ioc.Default) |
