github.com/openfga/openfga@v1.5.4-rc1/internal/middleware/authn/authn.go (about)

     1  package authn
     2  
     3  import (
     4  	"context"
     5  
     6  	grpcauth "github.com/grpc-ecosystem/go-grpc-middleware/v2/interceptors/auth"
     7  
     8  	"github.com/openfga/openfga/internal/authn"
     9  )
    10  
    11  func AuthFunc(authenticator authn.Authenticator) grpcauth.AuthFunc {
    12  	return func(ctx context.Context) (context.Context, error) {
    13  		claims, err := authenticator.Authenticate(ctx)
    14  		if err != nil {
    15  			return nil, err
    16  		}
    17  
    18  		return authn.ContextWithAuthClaims(ctx, claims), nil
    19  	}
    20  }