Skip to content

feat(FOUR-32734): allow ProcessMaker login in cross-site iframes - #9034

Closed
gproly wants to merge 1 commit into
developfrom
feature/FOUR-32734
Closed

gproly wants to merge 1 commit into
developfrom
feature/FOUR-32734

Conversation

@gproly

@gproly gproly commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Set CSP frame-ancestors and relax session cookies (SameSite=None, Secure, partitioned) when IFRAME_EMBEDDING_ENABLED=true and IFRAME_EMBEDDING_ALLOWED_ORIGINS lists parent origins (e.g. http://localhost:8093).

Example: pmList embeds PM login via

<iframe src="https://127.0.0.5:8092/login" ...></iframe>.

Security notes:

  • Only enable when cross-site embedding is required; disable when not in use.
  • IFRAME_EMBEDDING_ALLOWED_ORIGINS must list explicit parent origins; empty allowlist does not activate relaxed cookies or CSP.
  • SameSite=None increases cross-site cookie exposure; CSRF risk is higher—restrict allowed origins to trusted domains only.
  • In production, only https:// origins are accepted for frame-ancestors (http:// entries are ignored).
  • Third-party cookie blocking in browsers may still break iframe login; test target browsers and prefer HTTPS on both parent and PM.
  • Do not use as a substitute for SSO; treat as a narrow integration option.

https://processmaker.atlassian.net/browse/FOUR-32734

Set CSP frame-ancestors and relax session cookies (SameSite=None, Secure,
partitioned) when IFRAME_EMBEDDING_ENABLED=true and IFRAME_EMBEDDING_ALLOWED_ORIGINS
lists parent origins (e.g. http://localhost:8093).

Example: pmList embeds PM login via
<iframe src="https://127.0.0.5:8092/login" ...></iframe>.

Security notes:
- Only enable when cross-site embedding is required; disable when not in use.
- IFRAME_EMBEDDING_ALLOWED_ORIGINS must list explicit parent origins; empty allowlist
  does not activate relaxed cookies or CSP.
- SameSite=None increases cross-site cookie exposure; CSRF risk is higher—restrict
  allowed origins to trusted domains only.
- In production, only https:// origins are accepted for frame-ancestors (http://
  entries are ignored).
- Third-party cookie blocking in browsers may still break iframe login; test target
  browsers and prefer HTTPS on both parent and PM.
- Do not use as a substitute for SSO; treat as a narrow integration option.

https://processmaker.atlassian.net/browse/FOUR-32734
@decisions-sonarqube

Copy link
Copy Markdown

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@pmPaulis

pmPaulis commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

@gproly
All the changes related to this configuration needs to add in the package-product-analytics.
In sync wiht support we will add the considerations to know for this change
Regards,

@pmPaulis pmPaulis closed this Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants