Skip to content

Commit

Permalink
feat(security): added option to exclude sec requirement
Browse files Browse the repository at this point in the history
Added option to exclude security requirement for handlers.
  • Loading branch information
alesbrelih committed Sep 21, 2023
1 parent 2b39139 commit 9232076
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
4 changes: 3 additions & 1 deletion gen/_template/security.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,9 @@ func (s *Server) security{{ $s.Type.Name }}(ctx context.Context, operationName s
{{ errorf "unexpected security %q:%q" $s.Kind $s.Format }}
{{- end }}
rctx, err := s.sec.Handle{{ $s.Type.Name }}(ctx, operationName, t)
if err != nil {
if errors.Is(err, ogenerrors.ErrSkipServerSecurity) {
return nil, false, nil
} else if err != nil {
return nil, false, err
}
return rctx, true, err
Expand Down
4 changes: 3 additions & 1 deletion ogenerrors/security.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,7 @@ var (
// ErrSecurityRequirementIsNotSatisfied is returned when security requirement is not satisfied.
ErrSecurityRequirementIsNotSatisfied = errors.New("security requirement is not satisfied")
// ErrSkipClientSecurity is guard error to exclude security scheme from client request.
ErrSkipClientSecurity = errors.New("skip security")
ErrSkipClientSecurity = errors.New("skip client security")
// ErrSkipServerSecurity is guard error to exclude security scheme from server request.
ErrSkipServerSecurity = errors.New("skip server security")
)

0 comments on commit 9232076

Please sign in to comment.