Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DUO Mode: Switch on DUO Mode for Existing and New Customers #2399

Closed
3 of 4 tasks
zcolah opened this issue Dec 12, 2023 · 14 comments · Fixed by #2926 or #2961
Closed
3 of 4 tasks

DUO Mode: Switch on DUO Mode for Existing and New Customers #2399

zcolah opened this issue Dec 12, 2023 · 14 comments · Fixed by #2926 or #2961
Assignees
Labels
enhancement Improvement to an existing feature

Comments

@zcolah
Copy link

zcolah commented Dec 12, 2023

Problem
Customers do not know about DUO Mode and how to start it. We just want to start it for existing customers and new customers/instance in the future.

Solution Steps
Specifically this solution is based around a content policy setting.

  • 1. @giseleblair Please document the solution or assign someone to document this
  • 2. There needs to be a change made to the product by the manager ui team to allow for the value that @giseleblair has documented. If there are any questions on how to go about this please ask @shrunyan.
  • 3. We need to bake that value into the starter blue print, and into all of the existing templates. We want to make DUO mode the default experience for all of the templates.
  • 4. Once we complete this solution, we will lead an outreach effort to existing customers where we inform them of DUO mode, and the steps they need to set it up along with an option for a training/setup call.
@zcolah zcolah changed the title DUO Mode: Identify how to better onboard customers on DUO Mode DUO Mode: Switch on DUO Mode for Existing Customers Dec 15, 2023
@zcolah zcolah changed the title DUO Mode: Switch on DUO Mode for Existing Customers DUO Mode: Switch on DUO Mode for Existing and New Customers Dec 15, 2023
@agalin920
Copy link
Contributor

@zcolah DUO mode is turned on by default if they have it enabled

@zcolah
Copy link
Author

zcolah commented Dec 21, 2023

@agalin920 this is a ticket that is WIP with Randy. Not yet assigned to any developers therefore.

@zcolah zcolah added the enhancement Improvement to an existing feature label Jan 3, 2024
@giseleblair
Copy link
Contributor

The following settings would be the ideal values to allow to use DUO mode within the product:
Settings:
Header: X-Frame-Options
Content-Security-Policy
Referrer-Policy

Screenshot 2023-12-13 at 4 02 35 PM

@agalin920
Copy link
Contributor

These settings when present disable duomode
setting.key === "basic_content_api_key"
setting.key === "headless_authorization_key"
setting.key === "authorization_key"
setting.key === "x_frame_options"

@allenpigar
Copy link
Contributor

@giseleblair @agalin920 i already create a branch (https://github.com/zesty-io/template-pomelo/tree/enable-duo-mode) for this, removing the setting to enable duo mode but the installer template installation does not support deletion of settings. it only updates or creates settings. with this, i think we must also need to delete those settings on the "template base blueprint" since this blueprint creates the base or default setting for the instance before the installer updates or creates the settings for template.

Image

@giseleblair
Copy link
Contributor

I believe that template base blueprint only exists in the database, can you confirm @allenpigar

@allenpigar
Copy link
Contributor

@giseleblair yes it exist on the database and sql scripts are need to update. but as we have discussed, there no need to remove those settings and just set the default value to null. with this, we can just update the values on the template itself without any changes on the blueprint. i already created pr for review.

zesty-io/template-blank#2
zesty-io/template-simple-blog#1
zesty-io/template-pomelo#3

@zcolah zcolah moved this to In Progress in Product Roadmap Jun 28, 2024
@finnar-bin finnar-bin self-assigned this Aug 14, 2024
@finnar-bin
Copy link
Contributor

finnar-bin commented Aug 19, 2024

@giseleblair it seems like there's nothing needed to done in manager-ui for this ticket anymore as I tried creating new instances using all the existing templates are they all have duo mode enabled by default already.

I checked in with @allenpigar and he has confirmed that he changed the template's default values for the following settings (basic_content_api_key, headless_authorization_key, authorization_key and x_frame_options) to null which is what manager-ui needs for duo mode to be enabled. Therefore it doesn't seem like any work needs to be done in the manager-ui since the changes that Allen made already enables duo mode by default for newly-created instances.

@giseleblair
Copy link
Contributor

@finnar-bin please refer to my screenshot above in the thread (from Jan 3) and test with those values. Duo mode needs to work with the those values not just the null values from the templates

@finnar-bin
Copy link
Contributor

finnar-bin commented Aug 19, 2024

@giseleblair so just to clarify, the goal here is to make sure that duo mode is activated if those settings are either null or contain the specific values you mentioned?

@giseleblair
Copy link
Contributor

@finnar-bin Duo mode does not get activated by these settings. But the goal is that when Duo Mode is turned on, AND the above settings are either null or the specific mentioned values that the Duo Mode frame will render the page as expected. Currently, the values MIUST be null in order for the Duo Mode frame to render. But we want to update this logic so it will also work with the mentioned values.

@finnar-bin
Copy link
Contributor

Note to self: CSP needs to be validated as well

@finnar-bin
Copy link
Contributor

finnar-bin commented Sep 6, 2024

@giseleblair is there a need to validate that the value for Referrer-Policy be either null or "strict-origin-when-cross-origin" for the duo mode toggle to be visible?

I've already tested the CSP setting and it seems like what works is frame-ancestors 'self' *.zesty.io for the iframe to be rendered within manager-ui but not elsewhere.

@giseleblair
Copy link
Contributor

I believe that CSP will trump the Referrer-Policy value @finnar-bin but it is still worth validating in the order of operations

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