Uploaded image for project: 'Identity Provider'
  1. Identity Provider
  2. IDP-1463

Authentication finalize action fails to overwrite previous active flow result

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.0, 3.1.0, 3.1.1, 3.1.2, 3.2.0, 3.2.1, 3.3.0, 3.3.1, 3.4.0, 3.3.2, 3.3.3, 3.4.1, 3.4.2, 3.4.3, 3.4.4
    • Fix Version/s: 3.4.5
    • Component/s: Authentication
    • Labels:
      None

      Description

      I noted during testing that the FinalizeAuthentication action dating back to its first version ever has a bug that manifests when you bypass SSO for a particular flow by marking it non-reusable. This causes the code to copy in the previously active result from the AuthenticationContext's active results collection, but it deliberately doesn't overwrite that with a fresh result that was just produced.

      This doesn't matter much in practice, and it doesn't cause any problems if the identity actually changes, but it does create anomalous results if you're proxying authentication with richer attribute data, because it ends up using the previous set of attributes until the next request when it pulls the updated result out of the session and so on, so it's always off by one.

      We discussed and think the impact is minor enough in that it really is just a kind of caching, of which we have a lot of similar examples in the system. Will fix now and backport if we do a patch.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              cantor.2@osu.edu Scott Cantor
              Reporter:
              cantor.2@osu.edu Scott Cantor
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 15 minutes
                  15m