58 Commits

Author SHA1 Message Date
Oliver Günther 92a0c03c42 Fix fetching of SAML metadata for large aggregate endpoints (#23531)
* Fix fetching of SAML metadata for large aggregate endpoints

https://community.openproject.org/work_packages/OP-19420

* Use XML pull parser to avoid text parsing
2026-06-09 09:13:52 +02:00
Oliver Günther 86e2b04fda Add SSRF protection to SAML metadata 2026-05-05 07:46:58 +02:00
Henriette Darge d0ebdbdd8a Adapt test to new DangerDialogs 2026-04-10 10:56:14 +02:00
Jan Sandbrink 82413e5b26 Allow to use rewritten record helper with FactoryBot
The fact that it used to be called with a factory name speaks for
a history of using FactoryBot originally and then being rewritten
to use a manually written SQL insert statement.

This has now been changed so when a symbol is passed, it's taken
as a factory name and a factory is used. Only when a class name
is passed, the manual SQL path is chosen.

This is done, so that I can rely on the default-value-filling of
FactoryBot to create my test record.
2026-03-23 09:58:56 +01:00
Alexander Brandon Coles 543477312a Skeleton specs for BorderBoxTableComponent impls. 2025-09-01 08:30:34 +01:00
Jan Sandbrink 4bf16e5215 Freeze string literals in two more modules
Diff was achieved by running

    rubocop -A --only Style/FrozenStringLiteralComment,Layout/EmptyLineAfterMagicComment,Style/RedundantFreeze

for the module folders of the affected modules.
This change is part of the effort to slowly roll out frozen
string literals across the entire application.
2025-06-30 09:51:24 +02:00
Behrokh Satarnejad 25f61a6781 Bump op-primer-view-component to 0.68.0 (#19026)
* update core with new primer view components version

* change h1 to h2 in news test for page header title

* fix failing test in files page header

* fix failing test in saml providers page header

* fix failing test in my page page header

* fix failing test in meetings page header

* use have_heading instead of test selector

* use have_heading instead of test selector

* use have-heading in storages test
2025-05-27 14:22:59 +02:00
Jan Sandbrink 6829f14a24 Fix parsing of multiple certificates from metadata
Once the XML contains multiple certificates, the metadata hash
has a nil idp_cert. The idp_cert_multi key is always populated. However,
we never tried parsing data from there, so it was lost.

The way that the Saml::Provider right now represents multiple certificates
is to concatenate them inside the idp_cert, so the metadata parsing
has been adapted to use that.
2025-05-12 13:47:12 +02:00
Oliver Günther e27ac494d3 Consistent naming of upsell, not upsale 2025-04-24 15:52:34 +02:00
Jan Sandbrink 97c7a946a4 Use test helper to check for presence of enterprise banner
This should be more stable, since we can change expectations regarding enterprise banners in a single place.

Co-authored-by: Oliver Günther <o.guenther@openproject.com>
2025-04-24 08:50:35 +02:00
Jan Sandbrink 6fc6be4e96 Update spec expectation
SSO features were moved to the professional plan, but
this spec was not updated in the process.
2025-04-24 08:45:22 +02:00
Oliver Günther 18574696f5 Fix specs 2025-04-07 10:55:25 +02:00
Ivan Kuchin dfead9fdbe frozen_string_literal in changed specs 2025-03-18 19:35:08 +01:00
Ivan Kuchin 2c1d112aea use require_relative in specs 2025-03-18 19:35:08 +01:00
Oliver Günther e91d4860ef Move SAML and OIDC keys under activerecord, not activemodel 2025-02-25 10:47:21 +01:00
ulferts c64d6561e2 Merge remote-tracking branch 'origin/dev' into merge-release/15.2-20250120033625 2025-01-20 17:43:47 +01:00
Oliver Günther ffd8f9a35e Set default name identifier format to unspecified, making no assertions 2025-01-15 08:28:01 +01:00
Oliver Günther f791d33b72 Replace specs 2025-01-14 10:20:35 +01:00
Oliver Günther 6dc3ede584 Replace references 2024-12-18 10:49:59 +01:00
OpenProject Actions CI 381c2c81d3 Merge branch 'release/15.0' into dev 2024-11-19 03:42:21 +00:00
Oliver Günther ff04f1e691 Respect self-registration in saml 2024-11-18 16:18:10 +01:00
OpenProject Actions CI 9133774d34 Merge branch 'release/15.0' into dev 2024-11-16 03:40:02 +00:00
Markus Kahl 1d8023fb62 test that false is correct in output as well 2024-11-15 15:04:45 +00:00
Markus Kahl f42fbc735a make sure limit_self_registration is included in saml provider hash 2024-11-15 15:00:22 +00:00
Oliver Günther 313cc24e7c Fix saml spec 2024-11-05 17:13:26 +01:00
Oliver Günther ec6f8a71ca Ensure empty uid_attribute is not output
https://community.openproject.org/work_packages/58592
2024-10-29 16:12:59 +01:00
Oliver Günther 7989cdb55e Show delete warning for deleting SSO providers (#16981) 2024-10-21 13:03:51 +02:00
Pavel Balashou e0c5dd3ef6 Update OIDC configuration UI. 2024-10-21 13:03:46 +02:00
Oliver Günther 2ce8b06c57 Indent 2024-09-26 13:04:58 +02:00
Oliver Günther 4faca15371 Optional validation of slo URL 2024-09-26 11:35:48 +02:00
Oliver Günther afd1d4f50a Fix moved label 2024-09-26 11:35:47 +02:00
Oliver Günther 7727641d14 Add metadata spec 2024-09-26 11:35:46 +02:00
Oliver Günther 6c4497b962 Linting 2024-09-26 11:35:46 +02:00
Oliver Günther 005c949b98 Feature spec 2024-09-26 11:35:46 +02:00
Oliver Günther 3c8b529404 Model specs 2024-09-26 11:35:46 +02:00
Oliver Günther 6a9fc6e2ee Fix remaining specs 2024-09-26 11:35:46 +02:00
Oliver Günther dd65ef439c Service specs 2024-09-26 11:35:45 +02:00
Oliver Günther f55f2a0047 Contract specs 2024-09-26 11:35:45 +02:00
Oliver Günther 9fe5bc9082 Load deprecated settings in seeder 2024-09-26 11:35:44 +02:00
Oliver Günther ad91efa908 Rename openid_providers -> sso_auth_providers 2024-09-26 11:35:44 +02:00
Oliver Günther 28c379530d Extract mapper, spec 2024-09-26 11:35:36 +02:00
Oliver Günther aa6a066578 Better error messages 2024-09-20 10:24:01 +02:00
Ivan Kuchin 4911b8a149 remove years from copyrights (except for COPYRIGHT file) 2024-07-31 15:02:49 +02:00
Oliver Günther c7286fb91f Set default host at all times
This results in us having to use a bit more helpers around request and feature specs
to ensure that the configured host name also matches the requested one.
2024-07-08 16:11:09 +02:00
Oliver Günther a9c98a2fb4 Remember back_url/origin as RelayState in saml
When SAML uses the HTTP-POST binding, we lose the saved back_url as the
session cookie is no longer sent due to SameSite=Lax.

We also don't want to widen SameSite to None, so we need another way to
keep this information. SAML has RelayState that we can use for storing this state.

https://community.openproject.org/work_packages/55188
2024-07-03 08:37:52 +02:00
ulferts 3b2121f733 Revert "Merge remote-tracking branch 'origin/release/13.4' into dev"
This reverts commit 40b2bbeb09, reversing
changes made to b4c6cb17cc.
2024-03-21 11:31:17 +01:00
Ivan Kuchin 7787e457a3 Revert "Merge branch 'dev' into release/13.4"
This reverts commit a901541269, reversing
changes made to e573ca00b7.
2024-03-20 20:19:08 +01:00
Ivan Kuchin 9e4934cd0a change quotes using rubocop --only Style/StringLiterals,Style/QuotedSymbols -a 2024-03-20 18:05:22 +01:00
Christophe Bliard c795874f7f Update copyright year for 2024
command used: `rg -l 'Copyright \(C\) 2012-202\d the OpenProject' | xargs -n 100 sed -i -r 's/Copyright \(C\) 2012-202. the OpenProject/Copyright (C) 2012-2024 the OpenProject/'`
2024-01-02 16:23:54 +01:00
Klaus Zanders 0ff0e80295 Fixes Performance/StringIdentifierArgument offenses 2023-09-06 10:59:37 +02:00