Add membership provisioning middleware to compliance page

Signed-off-by: Émile Ré <emile@getprobo.com>
This commit is contained in:
Émile Ré
2026-03-13 12:45:30 +04:00
parent e499c628ec
commit ea8253ea78
3 changed files with 65 additions and 5 deletions

View File

@@ -16,7 +16,6 @@ package trust_v1
import (
"context"
"errors"
"github.com/99designs/gqlgen/graphql"
"go.gearno.de/kit/log"
@@ -47,10 +46,6 @@ func newNDADirective(
membership, err := trustSvc.GetMembershipByCompliancePageIDAndIdentityID(ctx, compliancePage.ID, identity.ID)
if err != nil {
if errors.Is(err, trust.ErrMembershipNotFound) {
return nil, gqlutils.Unauthenticatedf(ctx, "authentication needed")
}
logger.ErrorCtx(ctx, "cannot get compliance page membership", log.Error(err))
return nil, gqlutils.Internal(ctx)
}

View File

@@ -88,6 +88,7 @@ func NewMux(
r.Use(compliancepage.NewCompliancePagePresenceMiddleware())
r.Use(authn.NewSessionMiddleware(iamSvc, cookieConfig))
r.Use(compliancepage.NewMembershipProvisioningMiddleware(trustSvc, logger))
graphqlHandler := NewGraphQLHandler(iamSvc, trustSvc, esignSvc, mailmanSvc, logger, baseURL, cookieConfig, tokenSecret)
r.Handle("/graphql", graphqlHandler)