Skip to content

Improve UI for global reset "remember my choice" cookies #348

Description

@baszoetekouw

Important

Original story of #345 with more/better user feedback. We decided not to implement this in the first version of OpenConext/OpenConext-engineblock#1956, because it would require Profile to have access to EngineBlock's "remember-my-choice" cookie, or implement a complex way to relay this information from EngineBlock to Profile.

In OpenConext/OpenConext-engineblock#1956 we describe a feature where a user can specify per SP which IdP they want to use. On a next login to that SP, the preferred IdP will be used automatically without user interaction.

This story will allow a user to reset that choice (globally, for all SPs at the same time).

The settings of which SP should use which IdP are stored in a cookie rememberedidps which is set on the main OpenCOnext domain (so if profile lives on https://profile.openconex.dev the cookie lives on the .openconext.dev domain).

The cookie is a base64-encoded deflated json structure like this:

{
  "https://sp_entityid_1": { "idp": "https://idp_entityid_1", "time": 1784534287 },
  "https://sp_entityid_2": { "idp": "https://idp_entityid_2", "time": 1784512345 }
}

In profile, the presence of this cookie should enable the following:

  • On the "my personal data" screen, add an entry at the bottom that shows how many choices are remembered and an option to reset them:

    Image

    If the cookie is not present, is invalid (base base64, bad deflation data, bad json) or has empty json, show the text "No choices remembered" and hide the reset option.

  • If the user presses the button, show a confirmation popup:

    Image
  • If the user presses "Reset all", remove the cookie.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions