mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-05-05 11:00:12 -05:00
add tokenmanager to userlog to fix startup
This commit is contained in:
@@ -18,6 +18,8 @@ type Config struct {
|
|||||||
HTTP HTTP `yaml:"http"`
|
HTTP HTTP `yaml:"http"`
|
||||||
GRPCClientTLS *shared.GRPCClientTLS `yaml:"grpc_client_tls"`
|
GRPCClientTLS *shared.GRPCClientTLS `yaml:"grpc_client_tls"`
|
||||||
|
|
||||||
|
TokenManager *TokenManager `yaml:"token_manager"`
|
||||||
|
|
||||||
MachineAuthAPIKey string `yaml:"machine_auth_api_key" env:"OCIS_MACHINE_AUTH_API_KEY;USERLOG_MACHINE_AUTH_API_KEY" desc:"Machine auth API key used to validate internal requests necessary to access resources from other services."`
|
MachineAuthAPIKey string `yaml:"machine_auth_api_key" env:"OCIS_MACHINE_AUTH_API_KEY;USERLOG_MACHINE_AUTH_API_KEY" desc:"Machine auth API key used to validate internal requests necessary to access resources from other services."`
|
||||||
RevaGateway string `yaml:"reva_gateway" env:"REVA_GATEWAY" desc:"CS3 gateway used to look up user metadata"`
|
RevaGateway string `yaml:"reva_gateway" env:"REVA_GATEWAY" desc:"CS3 gateway used to look up user metadata"`
|
||||||
Events Events `yaml:"events"`
|
Events Events `yaml:"events"`
|
||||||
@@ -60,3 +62,8 @@ type HTTP struct {
|
|||||||
CORS CORS `yaml:"cors"`
|
CORS CORS `yaml:"cors"`
|
||||||
TLS shared.HTTPServiceTLS `yaml:"tls"`
|
TLS shared.HTTPServiceTLS `yaml:"tls"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TokenManager is the config for using the reva token manager
|
||||||
|
type TokenManager struct {
|
||||||
|
JWTSecret string `yaml:"jwt_secret" env:"OCIS_JWT_SECRET;USERLOG_JWT_SECRET" desc:"The secret to mint and validate jwt tokens."`
|
||||||
|
}
|
||||||
|
|||||||
@@ -69,6 +69,14 @@ func EnsureDefaults(cfg *config.Config) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if cfg.TokenManager == nil && cfg.Commons != nil && cfg.Commons.TokenManager != nil {
|
||||||
|
cfg.TokenManager = &config.TokenManager{
|
||||||
|
JWTSecret: cfg.Commons.TokenManager.JWTSecret,
|
||||||
|
}
|
||||||
|
} else if cfg.TokenManager == nil {
|
||||||
|
cfg.TokenManager = &config.TokenManager{}
|
||||||
|
}
|
||||||
|
|
||||||
if cfg.Commons != nil {
|
if cfg.Commons != nil {
|
||||||
cfg.HTTP.TLS = cfg.Commons.HTTPServiceTLS
|
cfg.HTTP.TLS = cfg.Commons.HTTPServiceTLS
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,5 +39,9 @@ func Validate(cfg *config.Config) error {
|
|||||||
return shared.MissingMachineAuthApiKeyError(cfg.Service.Name)
|
return shared.MissingMachineAuthApiKeyError(cfg.Service.Name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if cfg.TokenManager.JWTSecret == "" {
|
||||||
|
return shared.MissingJWTTokenError(cfg.Service.Name)
|
||||||
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import (
|
|||||||
|
|
||||||
"github.com/go-chi/chi/v5"
|
"github.com/go-chi/chi/v5"
|
||||||
chimiddleware "github.com/go-chi/chi/v5/middleware"
|
chimiddleware "github.com/go-chi/chi/v5/middleware"
|
||||||
|
"github.com/owncloud/ocis/v2/ocis-pkg/account"
|
||||||
"github.com/owncloud/ocis/v2/ocis-pkg/middleware"
|
"github.com/owncloud/ocis/v2/ocis-pkg/middleware"
|
||||||
"github.com/owncloud/ocis/v2/ocis-pkg/service/http"
|
"github.com/owncloud/ocis/v2/ocis-pkg/service/http"
|
||||||
"github.com/owncloud/ocis/v2/ocis-pkg/version"
|
"github.com/owncloud/ocis/v2/ocis-pkg/version"
|
||||||
@@ -49,7 +50,10 @@ func Server(opts ...Option) (http.Service, error) {
|
|||||||
middleware.Logger(
|
middleware.Logger(
|
||||||
options.Logger,
|
options.Logger,
|
||||||
),
|
),
|
||||||
middleware.ExtractAccountUUID(),
|
middleware.ExtractAccountUUID(
|
||||||
|
account.Logger(options.Logger),
|
||||||
|
account.JWTSecret(options.Config.TokenManager.JWTSecret),
|
||||||
|
),
|
||||||
}
|
}
|
||||||
|
|
||||||
mux := chi.NewMux()
|
mux := chi.NewMux()
|
||||||
|
|||||||
Reference in New Issue
Block a user