afcb5a855c
* AuthZ: embed an authorization server * CODEOWNERS * Remove swagger * WIP * Flatten structure and inject wireset * sync mod files * Rename authorization package * Fix swagger gen * CODEOWNERS * Use itf instead of impl --------- Co-authored-by: Karl Persson <kalle.persson@grafana.com>
34 lines
812 B
Go
34 lines
812 B
Go
package authz
|
|
|
|
import (
|
|
"github.com/grafana/grafana/pkg/infra/tracing"
|
|
"github.com/grafana/grafana/pkg/services/accesscontrol"
|
|
"github.com/grafana/grafana/pkg/services/featuremgmt"
|
|
"github.com/grafana/grafana/pkg/services/grpcserver"
|
|
"github.com/grafana/grafana/pkg/setting"
|
|
)
|
|
|
|
type Client interface {
|
|
// TODO
|
|
}
|
|
|
|
type LegacyClient struct {
|
|
}
|
|
|
|
func ProvideAuthZClient(
|
|
cfg *setting.Cfg, features featuremgmt.FeatureToggles, acSvc accesscontrol.Service,
|
|
grpcServer grpcserver.Provider, tracer tracing.Tracer,
|
|
) (Client, error) {
|
|
if !features.IsEnabledGlobally(featuremgmt.FlagAuthZGRPCServer) {
|
|
return nil, nil
|
|
}
|
|
|
|
_, err := newLegacyServer(acSvc, features, grpcServer, tracer)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
// TODO differentiate run local from run remote grpc
|
|
return &LegacyClient{}, nil
|
|
}
|