ory-am/hydra

View on GitHub

Showing 853 of 853 total issues

Method DefaultStrategy.authenticationSession has 6 return statements (exceeds 4 allowed).
Open

func (s *DefaultStrategy) authenticationSession(ctx context.Context, _ http.ResponseWriter, r *http.Request) (*flow.LoginSession, error) {
    store, err := s.r.CookieStore(ctx)
    if err != nil {
        return nil, err
    }
Severity: Major
Found in consent/strategy_default.go - About 40 mins to fix

    Method Flow.HandleLoginRequest has 6 return statements (exceeds 4 allowed).
    Open

    func (f *Flow) HandleLoginRequest(h *HandledLoginRequest) error {
        if f.LoginWasUsed {
            return errors.WithStack(x.ErrConflict.WithHint("The login request was already used and can no longer be changed."))
        }
    
    
    Severity: Major
    Found in flow/flow.go - About 40 mins to fix

      Function NewCreateClientsCommand has 6 return statements (exceeds 4 allowed).
      Open

      func NewCreateClientsCommand() *cobra.Command {
          cmd := &cobra.Command{
              Use:     "oauth2-client",
              Short:   "Create an OAuth 2.0 Client",
              Aliases: []string{"client"},
      Severity: Major
      Found in cmd/cmd_create_client.go - About 40 mins to fix

        Function serve has 6 return statements (exceeds 4 allowed).
        Open

        func serve(
            ctx context.Context,
            d driver.Registry,
            cmd *cobra.Command,
            wg *sync.WaitGroup,
        Severity: Major
        Found in cmd/server/handler.go - About 40 mins to fix

          Method Handler.setOidcDynamicClient has 6 return statements (exceeds 4 allowed).
          Open

          func (h *Handler) setOidcDynamicClient(w http.ResponseWriter, r *http.Request, ps httprouter.Params) {
              if err := h.requireDynamicAuth(r); err != nil {
                  h.r.Writer().WriteError(w, r, err)
                  return
              }
          Severity: Major
          Found in client/handler.go - About 40 mins to fix

            Method RegistrySQL.HealthHandler has 6 return statements (exceeds 4 allowed).
            Open

            func (m *RegistrySQL) HealthHandler() *healthx.Handler {
                if m.hh == nil {
                    m.hh = healthx.NewHandler(m.Writer(), m.buildVersion, healthx.ReadyCheckers{
                        "database": func(_ *http.Request) error {
                            return m.Ping()
            Severity: Major
            Found in driver/registry_sql.go - About 40 mins to fix

              Function NewUpdateClientCmd has 6 return statements (exceeds 4 allowed).
              Open

              func NewUpdateClientCmd() *cobra.Command {
                  cmd := &cobra.Command{
                      Use:     "oauth2-client [id]",
                      Aliases: []string{"client"},
                      Short:   "Update an OAuth 2.0 Client",
              Severity: Major
              Found in cmd/cmd_update_client.go - About 40 mins to fix

                Method MigrateHandler.MigrateStatus has 6 return statements (exceeds 4 allowed).
                Open

                func (h *MigrateHandler) MigrateStatus(cmd *cobra.Command, args []string) error {
                    p, err := h.makePersister(cmd, args)
                    if err != nil {
                        return err
                    }
                Severity: Major
                Found in cmd/cli/handler_migrate.go - About 40 mins to fix

                  Method Persister.findSessionBySignature has 6 return statements (exceeds 4 allowed).
                  Open

                  func (p *Persister) findSessionBySignature(ctx context.Context, signature string, session fosite.Session, table tableName) (fosite.Requester, error) {
                      r := OAuth2RequestSQL{Table: table}
                      err := p.QueryWithNetwork(ctx).Where("signature = ?", signature).First(&r)
                      if errors.Is(err, sql.ErrNoRows) {
                          return nil, errorsx.WithStack(fosite.ErrNotFound)
                  Severity: Major
                  Found in persistence/sql/persister_oauth2.go - About 40 mins to fix

                    Method Handler.getOidcUserInfo has 6 return statements (exceeds 4 allowed).
                    Open

                    func (h *Handler) getOidcUserInfo(w http.ResponseWriter, r *http.Request) {
                        ctx := r.Context()
                        session := NewSessionWithCustomClaims(ctx, h.c, "")
                        tokenType, ar, err := h.r.OAuth2Provider().IntrospectToken(ctx, fosite.AccessTokenFromRequest(r), fosite.AccessToken, session)
                        if err != nil {
                    Severity: Major
                    Found in oauth2/handler.go - About 40 mins to fix

                      Method GrantValidator.Validate has 6 return statements (exceeds 4 allowed).
                      Open

                      func (v *GrantValidator) Validate(request createGrantRequest) error {
                          if request.Issuer == "" {
                              return errorsx.WithStack(ErrMissingRequiredParameter.WithHint("Field 'issuer' is required."))
                          }
                      
                      
                      Severity: Major
                      Found in oauth2/trust/validator.go - About 40 mins to fix

                        Function GetOrGenerateKeys has 6 return statements (exceeds 4 allowed).
                        Open

                        func GetOrGenerateKeys(ctx context.Context, r InternalRegistry, m Manager, set, kid, alg string) (private *jose.JSONWebKey, err error) {
                            getLock(set).Lock()
                            defer getLock(set).Unlock()
                        
                            keys, err := m.GetKeySet(ctx, set)
                        Severity: Major
                        Found in jwk/helper.go - About 40 mins to fix

                          Similar blocks of code found in 3 locations. Consider refactoring.
                          Open

                                              if encryptSecret && result.ClientSecret != nil {
                                                  enc, err := ek.Encrypt([]byte(*result.ClientSecret))
                                                  if err != nil {
                                                      _, _ = fmt.Fprintf(cmd.ErrOrStderr(), "Failed to encrypt client secret: %s", err)
                                                      return cmdx.FailSilently(cmd)
                          Severity: Major
                          Found in cmd/cmd_import_client.go and 2 other locations - About 40 mins to fix
                          cmd/cmd_create_client.go on lines 103..111
                          cmd/cmd_update_client.go on lines 56..64

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 110.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Similar blocks of code found in 3 locations. Consider refactoring.
                          Open

                                      if encryptSecret && client.ClientSecret != nil {
                                          enc, err := ek.Encrypt([]byte(*client.ClientSecret))
                                          if err != nil {
                                              _, _ = fmt.Fprintf(cmd.ErrOrStderr(), "Failed to encrypt client secret: %s", err)
                                              return cmdx.FailSilently(cmd)
                          Severity: Major
                          Found in cmd/cmd_create_client.go and 2 other locations - About 40 mins to fix
                          cmd/cmd_import_client.go on lines 114..122
                          cmd/cmd_update_client.go on lines 56..64

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 110.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Similar blocks of code found in 3 locations. Consider refactoring.
                          Open

                                      if encryptSecret && client.ClientSecret != nil {
                                          enc, err := ek.Encrypt([]byte(*client.ClientSecret))
                                          if err != nil {
                                              _, _ = fmt.Fprintf(cmd.ErrOrStderr(), "Failed to encrypt client secret: %s", err)
                                              return cmdx.FailSilently(cmd)
                          Severity: Major
                          Found in cmd/cmd_update_client.go and 2 other locations - About 40 mins to fix
                          cmd/cmd_create_client.go on lines 103..111
                          cmd/cmd_import_client.go on lines 114..122

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 110.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Identical blocks of code found in 2 locations. Consider refactoring.
                          Open

                                consent: {
                                  accept: acceptConsent = true,
                                  skip: skipConsent = false,
                                  remember: rememberConsent = false,
                                  scope: acceptScope = [],
                          Severity: Minor
                          Found in cypress/support/commands.js and 1 other location - About 40 mins to fix
                          cypress/support/commands.js on lines 37..42

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 48.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Identical blocks of code found in 2 locations. Consider refactoring.
                          Open

                                consent: {
                                  accept: acceptConsent = true,
                                  skip: skipConsent = false,
                                  remember: rememberConsent = false,
                                  scope: acceptScope = [],
                          Severity: Minor
                          Found in cypress/support/commands.js and 1 other location - About 40 mins to fix
                          cypress/support/commands.js on lines 112..117

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 48.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Identical blocks of code found in 2 locations. Consider refactoring.
                          Open

                            if (!req.query.code) {
                              res.send(JSON.stringify({ result: "error", error: "no code given" }))
                              return
                            }
                          Severity: Minor
                          Found in test/e2e/oauth2-client/src/index.js and 1 other location - About 40 mins to fix
                          test/e2e/oauth2-client/src/index.js on lines 312..315

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 48.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Identical blocks of code found in 2 locations. Consider refactoring.
                          Open

                            if (!req.query.code) {
                              res.send(JSON.stringify({ result: "error", error: "no code given" }))
                              return
                            }
                          Severity: Minor
                          Found in test/e2e/oauth2-client/src/index.js and 1 other location - About 40 mins to fix
                          test/e2e/oauth2-client/src/index.js on lines 130..133

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 48.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Similar blocks of code found in 2 locations. Consider refactoring.
                          Open

                                  for _, tc := range []struct{ token string }{
                                      {""},
                                      {"foo"},
                                      {"foo.bar"},
                                      // tokens with three parts will be handled by the JWT strategy
                          Severity: Minor
                          Found in fositex/token_strategy_test.go and 1 other location - About 40 mins to fix
                          fositex/token_strategy_test.go on lines 24..36

                          Duplicated Code

                          Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                          Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                          When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                          Tuning

                          This issue has a mass of 108.

                          We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                          The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                          If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                          See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                          Refactorings

                          Further Reading

                          Severity
                          Category
                          Status
                          Source
                          Language