Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-25451

Refactor QAuthenticator

    XMLWordPrintable

Details

    • Task
    • Resolution: Unresolved
    • P2: Important
    • None
    • None
    • None

    Description

      QAuthenticator is fragile and tries to do too many things in one class.
      It should be split up something like this:

      QAuthenticator - keep the public class, but just become a value type for passing credentials around. (should become implicitly sharable again)
      QAuthenticationProvider - abstract base class with functions for calculating authentication responses
      QAuthenticationProviderBasic - the "basic" scheme of http (password encoded but not encrypted or hashed)
      QAuthenticationProviderPlaintext - password sent in the clear (e.g. ftp)
      QAuthenticationProviderDigest - the "digest" scheme of http
      QAuthenticationProviderNtlm - MS windows authentication

      Any state would be part of the authentication provider instance.
      Places where QAuthenticatorPrivate is being used, the authentication provider should be used instead with a clean interface.
      The QAuthenticationProvider hierarchy should initially be internal

      (this task is a placeholder for discussion)

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              Unassigned Unassigned
              shkearns Shane Kearns
              Votes:
              4 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Gerrit Reviews

                  There are no open Gerrit changes