Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-12143

Make some unauthenticated commands require auth

    XMLWordPrintable

    Details

    • Sprint:
      Security 2019-07-29
    • Case:

      Description

      There are currently 19 commands that do not require authentication. Several of these commands has no use case before an successful authentication has been performed.

      To reduce the unauthenticated API surface without introducing any complexity into the auth system we should introduce commands that require authentication but not authorization.

      The following commands should only be runnable after a successful authentication (with any user, even a user with no roles):
      availableQueryOptions, buildinfo, copydbgetnonce, features, forceerror, getoptime, isdbgrid, isMaster*, listCommands, logout, whatsmyuri

      *isMaster is used by several drivers before performing any authentication so this change will require driver adoption.

      The following commands should be kept as they are:
      _isSelf, authenticate, connectionStatus, getLastError, getnonce, getPrevError, ping, resetError

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              spencer.jackson Spencer Jackson
              Reporter:
              andreas.nilsson@ninetech.se Andreas Nilsson
              Participants:
              Votes:
              5 Vote for this issue
              Watchers:
              27 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: