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

Persistence layer migrations for MFA support #419 #460

Merged
merged 5 commits into from
Mar 4, 2022

Conversation

sam-glendenning
Copy link
Collaborator

Creating a fresh pull request based off of #452, which got confused with the branch it was merging to and the branch it was originally based off of. As such, there were merge conflicts which weren't being registered, which complicated the entire PR. This PR should be considered the most up to date one.


This PR contains the necessary database migrations and Java model changes to support the inclusion of multi-factor authentication into the IAM. Broadly speaking, the changes encompass:

  • new tables for authenticator app secrets and their respective recovery codes (iam_totp_mfa and iam_totp_recovery_code)
  • an additional iam_authority called ROLE_PRE_AUTHENTICATED which is used by Spring to grant a user access to webpages where they can continue the authentication process after signing in with their basic login credentials but does not grant them full access to the IAM. This was necessary to simulate the "two-step" login process associated with multi-factor authentication.

This PR is related to #441 which focuses on the higher-level implementation of MFA in the IAM.

Closes #419

This includes models for mfa secrets and their respective recovery codes. A custom repository is used to find secrets by their attached IAM accounts. Includes some tests.

Also adding a new PRE_AUTHENTICATED authority, assigned to the user after authenticating with one factor but before authenticating with another. This is used to access the webpages to verify the second factor.
@sam-glendenning sam-glendenning changed the title NEW: WIP: Persistence layer migrations for MFA support #419 WIP: Persistence layer migrations for MFA support #419 Feb 18, 2022
Sam Glendenning added 3 commits February 18, 2022 18:43
Adding MFA data to the existing test user has been causing problems so this should help
@sam-glendenning sam-glendenning marked this pull request as ready for review February 18, 2022 20:25
@sam-glendenning sam-glendenning changed the title WIP: Persistence layer migrations for MFA support #419 Persistence layer migrations for MFA support #419 Feb 18, 2022
@enricovianello
Copy link
Member

As expected, adding this one-to-one table to IamAccount without adding stuff to IamAccountService and other related classes, as you've done later on this PR (https://github.com/indigo-iam/iam/pull/441/files#diff-b61d0dbfd42c33b0632f9868c83d2caaaa6588fa508458c436116dde3234bf5a) makes the deletion of your added user "test-with-mfa" not working for a "Referential integrity constraint violation"

[EL Warning]: 2022-02-25 19:14:14.22--UnitOfWork(2096969069)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.7.9.v20210604-2c549e2208): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: Referential integrity constraint violation: "FK_IAM_TOTP_MFA_ACCOUNT_ID: PUBLIC.IAM_TOTP_MFA FOREIGN KEY(ACCOUNT_ID) REFERENCES PUBLIC.IAM_ACCOUNT(ID) (1000)"; SQL statement:
DELETE FROM iam_account WHERE (ID = ?) [23503-200]
Error Code: 23503
Call: DELETE FROM iam_account WHERE (ID = ?)
	bind => [1 parameter bound]
Query: DeleteObjectQuery(IamAccount [id=1000, uuid=467c882e-90da-11ec-b909-0242ac120002, username=test-with-mfa, active=true])
2022-02-25 19:14:14.238 ERROR 25919 --- [io-8080-exec-10] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.transaction.TransactionSystemException: Could not commit JPA transaction; nested exception is javax.persistence.RollbackException: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.7.9.v20210604-2c549e2208): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: Referential integrity constraint violation: "FK_IAM_TOTP_MFA_ACCOUNT_ID: PUBLIC.IAM_TOTP_MFA FOREIGN KEY(ACCOUNT_ID) REFERENCES PUBLIC.IAM_ACCOUNT(ID) (1000)"; SQL statement:
DELETE FROM iam_account WHERE (ID = ?) [23503-200]
Error Code: 23503
Call: DELETE FROM iam_account WHERE (ID = ?)
	bind => [1 parameter bound]
Query: DeleteObjectQuery(IamAccount [id=1000, uuid=467c882e-90da-11ec-b909-0242ac120002, username=test-with-mfa, active=true])] with root cause

org.h2.jdbc.JdbcSQLIntegrityConstraintViolationException: Referential integrity constraint violation: "FK_IAM_TOTP_MFA_ACCOUNT_ID: PUBLIC.IAM_TOTP_MFA FOREIGN KEY(ACCOUNT_ID) REFERENCES PUBLIC.IAM_ACCOUNT(ID) (1000)"; SQL statement:
DELETE FROM iam_account WHERE (ID = ?) [23503-200]
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:459)
	at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)
[...]

I got this by running the spring boot application locally. But we were expecting this behavior after the decision to not touch IamAccount. This is the natural consequence.
But, for sure, users have no chance to add stuff into the new tables. So this behavior won't happen in any case. So I think we could ignore this problem at the moment and merge all.
We can discuss this all together on our Monday weekly meeting and then definitively approve and merge this PR. 👍

Copy link
Member

@enricovianello enricovianello left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was about to merge then I took another look and saw a little thing that could be fixed.

Comment on lines 137 to 142
if (this.recoveryCodes.isEmpty()) {
this.recoveryCodes = recoveryCodes;
} else {
this.recoveryCodes.clear();
this.recoveryCodes.addAll(recoveryCodes);
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code in "else" works also in case recoveryCodes is empty. My suggestion is to replace all the if-else with:

this.recoveryCodes.clear();
this.recoveryCodes.addAll(recoveryCodes);

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed this in the latest commit. Also added some additional setting of creation and update time to the constructors

@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 4, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
0.0% 0.0% Duplication

Copy link
Member

@enricovianello enricovianello left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect! It's time to merge all!

@enricovianello enricovianello merged commit 3d1d47d into indigo-iam:v1.8.0 Mar 4, 2022
sam-glendenning pushed a commit that referenced this pull request Mar 11, 2022
commit 5b4e513
Merge: d2c977d 3d1d47d
Author: Enrico Vianello <[email protected]>
Date:   Fri Mar 4 18:16:21 2022 +0100

    Merge pull request #458 from indigo-iam/v1.8.0

    WIP v1.8.0 release branch

commit 3d1d47d
Merge: e46349e e7ce000
Author: Enrico Vianello <[email protected]>
Date:   Fri Mar 4 18:15:29 2022 +0100

    Merge pull request #460 from sam-glendenning/mfa-db-migrations

    Persistence layer migrations for MFA support #419

commit e46349e
Author: rmiccoli <[email protected]>
Date:   Fri Mar 4 17:23:17 2022 +0100

    Add event test

    about client creation, update and removal from admin account

commit 3fd5847
Author: rmiccoli <[email protected]>
Date:   Fri Mar 4 17:20:35 2022 +0100

    Remove unused interface

commit 3c8b65a
Merge: 0e07607 d3787f0
Author: rmiccoli <[email protected]>
Date:   Fri Mar 4 11:50:24 2022 +0100

    Merge branch 'v1.8.0' of github.com:indigo-iam/iam into v1.8.0

commit 0e07607
Author: rmiccoli <[email protected]>
Date:   Fri Mar 4 11:40:39 2022 +0100

    Add event publisher for client creation

    from admin account

commit e7ce000
Author: Sam Glendenning <[email protected]>
Date:   Fri Mar 4 10:07:05 2022 +0000

    Fixing setter for recovery codes, adding creation and update time setting to constructors

commit d3787f0
Author: Enrico Vianello <[email protected]>
Date:   Thu Mar 3 18:50:03 2022 +0100

    Bumped version to 1.8.0.beta.20220303

commit 9f4f911
Author: Enrico Vianello <[email protected]>
Date:   Tue Mar 1 17:59:43 2022 +0100

    Fixed pom.xml schema location

commit 65cc11f
Author: rmiccoli <[email protected]>
Date:   Tue Mar 1 16:32:03 2022 +0100

    Fix some warnings

    resulting from SonarCloud analysis

commit 3d1302c
Author: rmiccoli <[email protected]>
Date:   Fri Feb 25 17:54:02 2022 +0100

    Fix some code imperfections

commit 0a21dae
Author: rmiccoli <[email protected]>
Date:   Fri Feb 25 15:23:14 2022 +0100

    WIP: Solve SonarCloud Quality Gate failures

commit f648ec4
Author: Sam Glendenning <[email protected]>
Date:   Fri Feb 18 20:03:30 2022 +0000

    Fixing method name to conform to regex standards

commit 37fa5c6
Author: Sam Glendenning <[email protected]>
Date:   Fri Feb 18 19:49:32 2022 +0000

    Updating count of users in tests

commit 6a3bd61
Author: Sam Glendenning <[email protected]>
Date:   Fri Feb 18 18:43:30 2022 +0000

    Adding new test user for MFA tests

    Adding MFA data to the existing test user has been causing problems so this should help

commit 787281e
Author: Sam Glendenning <[email protected]>
Date:   Fri Feb 18 16:34:36 2022 +0000

    Adding totp secrets and recovery codes and repository to access secrets

    This includes models for mfa secrets and their respective recovery codes. A custom repository is used to find secrets by their attached IAM accounts. Includes some tests.

    Also adding a new PRE_AUTHENTICATED authority, assigned to the user after authenticating with one factor but before authenticating with another. This is used to access the webpages to verify the second factor.

commit 8476b84
Author: rmiccoli <[email protected]>
Date:   Wed Feb 16 18:36:44 2022 +0100

    Fix license

commit e08db5f
Author: rmiccoli <[email protected]>
Date:   Wed Feb 16 18:18:04 2022 +0100

    Fix error message about username

commit eeed9fc
Author: rmiccoli <[email protected]>
Date:   Wed Feb 16 16:54:30 2022 +0100

    Fix IAM version in pom files

commit f559b51
Author: rmiccoli <[email protected]>
Date:   Wed Feb 16 16:37:11 2022 +0100

    Fix errors in database file

commit f2fa805
Author: rmiccoli <[email protected]>
Date:   Wed Feb 16 16:25:18 2022 +0100

    Fix deprecated classes

commit 92fbb6f
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 23 11:36:08 2021 +0100

    Remove @transactional

    Which leads to strange behaviour for an integration test...

commit 6cba0ab
Author: rmiccoli <[email protected]>
Date:   Wed Nov 17 14:43:21 2021 +0100

    WIP: Investigate test problem

commit 6bde519
Author: rmiccoli <[email protected]>
Date:   Fri Nov 12 11:25:27 2021 +0100

    WIP: Filter requested scopes according to the scope policy

commit 50d4dda
Author: rmiccoli <[email protected]>
Date:   Wed Nov 3 15:36:45 2021 +0100

    Further corrections

commit a90bcec
Author: rmiccoli <[email protected]>
Date:   Wed Oct 27 15:59:52 2021 +0200

    Cosmetic improvements

commit db2b39d
Author: rmiccoli <[email protected]>
Date:   Tue Oct 26 18:41:40 2021 +0200

    Scopes error fixed

commit 51c70c6
Author: rmiccoli <[email protected]>
Date:   Tue Oct 26 16:49:25 2021 +0200

    Cosmetic fix

commit d43606a
Author: rmiccoli <[email protected]>
Date:   Mon Oct 25 18:34:35 2021 +0200

    New consent page

commit 0c69539
Author: rmiccoli <[email protected]>
Date:   Tue Sep 28 15:57:54 2021 +0200

    WIP: Added client application logo

commit 236bfea
Author: rmiccoli <[email protected]>
Date:   Fri Sep 24 15:45:57 2021 +0200

    WIP: new consent page template

commit d50abc3
Author: rmiccoli <[email protected]>
Date:   Tue Sep 21 14:36:44 2021 +0200

    Bumped version back to 1.8.0-SNAPSHOT

commit 9123834
Author: rmiccoli <[email protected]>
Date:   Tue Sep 21 14:07:01 2021 +0200

    wip

commit 97046c5
Author: rmiccoli <[email protected]>
Date:   Thu Sep 16 14:18:43 2021 +0200

    Fix licenses

commit 6875bde
Author: rmiccoli <[email protected]>
Date:   Thu Sep 16 13:51:10 2021 +0200

    Step 1: Move and test the consent page

commit ae99690
Merge: 971df59 4b9560c
Author: Enrico Vianello <[email protected]>
Date:   Wed Feb 16 10:25:46 2022 +0100

    Merge remote-tracking branch 'origin/issue-391-show-group-labels-in-account-home-page' into v1.8.0

commit 971df59
Merge: cbafc73 ce50926
Author: Enrico Vianello <[email protected]>
Date:   Wed Feb 16 10:15:28 2022 +0100

    Merge remote-tracking branch 'origin/fix-user-details-update-button' into v1.8.0

commit cbafc73
Merge: 4efd231 256714a
Author: Enrico Vianello <[email protected]>
Date:   Wed Feb 16 10:14:59 2022 +0100

    Merge remote-tracking branch 'origin/restore-tokens-component-in-IAM-dashboard' into v1.8.0

commit 4efd231
Author: rmiccoli <[email protected]>
Date:   Tue Feb 15 17:00:15 2022 +0100

    Changed the minimum length of the username field

    to two characters

commit 256714a
Author: rmiccoli <[email protected]>
Date:   Tue Feb 15 16:29:26 2022 +0100

    Fix failed tests

commit 744bf3b
Author: rmiccoli <[email protected]>
Date:   Mon Feb 14 16:04:49 2022 +0100

    Add compose file for linux users

commit aef6ef3
Merge: d968d47 d2c977d
Author: Enrico Vianello <[email protected]>
Date:   Mon Feb 14 12:16:24 2022 +0100

    Merge branch 'develop' into merge_before

commit d968d47
Merge: 04300ef edb6d2f
Author: Enrico Vianello <[email protected]>
Date:   Fri Feb 11 17:44:30 2022 +0100

    Merge commit 'edb6d2f2951841f67fe454eb94cb25f150b4f9ab' into merge_before

commit bfc3bfc
Author: rmiccoli <[email protected]>
Date:   Wed Feb 2 16:56:39 2022 +0100

    Added client name in /iam/api/access-tokens

commit 3a7d27a
Author: rmiccoli <[email protected]>
Date:   Wed Feb 2 16:33:53 2022 +0100

    Added tokens component

commit 04300ef
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Jan 10 20:07:08 2022 +0100

    Fixed db upgrade failure test

commit 93bbe89
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Dec 11 11:11:35 2021 +0100

    New client registration & management APIs

commit ce50926
Author: rmiccoli <[email protected]>
Date:   Mon Dec 27 19:18:13 2021 +0100

    Solved update button bug

commit 9a71c84
Author: rmiccoli <[email protected]>
Date:   Mon Dec 20 17:37:43 2021 +0100

    WIP: added green tick for the name when valid

commit ceeb6b6
Author: rmiccoli <[email protected]>
Date:   Tue Dec 14 14:23:08 2021 +0100

    Update button bug fixed

commit 596d4f7
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Dec 11 08:42:43 2021 +0100

    Fixed typo

commit 5cb8ad1
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Dec 11 08:24:40 2021 +0100

    Fix managed docker image build

commit bd2e69f
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Dec 9 08:28:32 2021 +0100

    More push images debugging...

commit 40f9bcf
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Dec 8 20:05:10 2021 +0100

    More verbosity in tag-push-images

commit 7bb00c6
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Dec 8 19:24:02 2021 +0100

    actions: install maven artifacts locally

commit d1ed254
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Dec 8 18:43:45 2021 +0100

    Add license information

commit 0ce1845
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Dec 8 18:40:50 2021 +0100

    Build buildpacks & managed docker images

commit 34a3528
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Dec 8 12:00:16 2021 +0100

    Fixed self-managed docker file

commit 452142c
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Dec 6 19:17:57 2021 +0100

    Database upgrade tests

commit 89530e6
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Dec 6 19:17:21 2021 +0100

    Make constants static finals

commit 8fcb5be
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Dec 6 19:16:55 2021 +0100

    Use MySQL image as default db

    But keep the mariadb handy

commit 595d6dc
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Dec 4 16:33:43 2021 +0100

    Bump version to avoid snapshot poisoning

commit d2c977d
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Dec 3 12:09:43 2021 +0100

    Fix missing license issues

commit cead8d0
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Dec 3 11:32:59 2021 +0100

    Upgrade to flyway 4.2.0

    As this will manage the upgrade to later versions more gracefully

commit e5f5247
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Dec 2 16:57:40 2021 +0100

    wip

commit 0326eff
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Dec 1 19:14:51 2021 +0100

    Refactored IAM signing and encryption service

commit dcc2122
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 30 13:31:13 2021 +0100

    Use legacy flyway schema_version table name

commit 069895d
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 30 12:27:39 2021 +0100

    Improved mysql defaults for voms-aa

commit 19fe791
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 30 12:26:40 2021 +0100

    Layered approach to temurin-based docker image

commit cf504c0
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 30 12:25:20 2021 +0100

    Removed legacy volume container

commit 1102832
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 30 12:18:27 2021 +0100

    Fixed prod profile startup issue

commit e9424a4
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 30 08:07:30 2021 +0100

    Disable spring cloud bindings in packeto image builds

commit 1c1fae8
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 29 18:50:20 2021 +0100

    bash over sh

commit 0dd8097
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 29 18:00:17 2021 +0100

    Fix docker push step

commit 9d8d8fc
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 29 17:30:17 2021 +0100

    Restructure jenkins build

    To remove docker build (we rely on the GH actions build for that).

commit 86e2fa6
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 29 17:25:35 2021 +0100

    Use java 17 also in sonar

commit 9c0aed9
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 12:49:09 2021 +0100

    Use java 17 pod template

commit 07d455c
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 11:52:47 2021 +0100

    Working version of tag-push-images script

commit 079f7bd
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 11:20:05 2021 +0100

    Fix GH actions workflow

commit ba0e105
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 11:17:09 2021 +0100

    Upgrade to latest setup-java gh action

commit a4040b5
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 11:11:29 2021 +0100

    Move to java 17 and use buildpacks

commit 1ff7400
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 08:49:23 2021 +0100

    Tests gree on java 17

commit a35f96f
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 27 07:24:36 2021 +0100

    Fix more sonar warnings

commit 1ec08f9
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 24 19:47:24 2021 +0100

    Run jacoco also on the voms-aa

commit 0a4037d
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 24 19:20:40 2021 +0100

    More tests for VOMS AA

commit 0088566
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 24 18:30:03 2021 +0100

    Fixed some Sonar warnings on VOMS AA code

commit 7d7ef32
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 24 17:54:08 2021 +0100

    Refactoring iam-test-client properties parsing

commit 618d6de
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 24 16:43:04 2021 +0100

    Added license

commit ab60d53
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 24 16:40:46 2021 +0100

    Fix compose so that test-client works fine

commit 88ac598
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 23 19:36:18 2021 +0100

    Fix JSON serialization in iam-test-client

    The nimbus update broke backward compatibility

commit df8d64c
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 23 19:35:42 2021 +0100

    Use the right spring boot property for forwarded headers

commit e1ea581
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 20 09:36:19 2021 +0100

    Use latest javax.persistence and jacoco version

commit bcb5fca
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 20 09:09:24 2021 +0100

    Added support for jib docker image builds

commit 82b6128
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 20 08:47:09 2021 +0100

    Imported voms-aa codebase

commit c2118bc
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 20 08:46:47 2021 +0100

    Updated rest-assured to the latest version

commit 9157be9
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 19 09:00:58 2021 +0100

    Added voms-test profile for easier voms-aa testing

commit 71c1b00
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Nov 18 08:23:46 2021 +0100

    wip

commit edb6d2f
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Nov 18 07:39:56 2021 +0100

    Fail early if wrong version of java is detected

    And enforce that Java 8 is used.

    https://maven.apache.org/enforcer/enforcer-rules/versionRanges.html

commit a135b87
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 17 17:10:22 2021 +0100

    wip

commit d5c10b2
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 15 17:32:13 2021 +0100

    Introduced testcontainers

commit 56ebdb8
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 15 16:17:56 2021 +0100

    Improved test logging

commit 55473e4
Merge: e9e5408 37a2df2
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 15 14:31:28 2021 +0100

    Merge pull request #438 from indigo-iam/nginx-local-dev-linux

    Add compose file for linux users

commit fc437f8
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 15 11:48:38 2021 +0100

    Fix pom indentation

commit cc3b4d5
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 15 08:33:55 2021 +0100

    More fixes for SonarCloud warnings

commit 5ff5e3b
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Nov 14 16:38:07 2021 +0100

    Fixes for Sonar warnings/errors

    and other minor improvements

commit 91d0533
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 13 16:02:51 2021 +0100

    Tests green (locally)

commit d575a47
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 13 08:59:09 2021 +0100

    More warning and test fixes

commit 0b62963
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 12 18:38:35 2021 +0100

    More test fixes

commit 922b464
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Nov 9 11:00:34 2021 +0100

    Test errors -> 0, Test failures -> ~12%

commit f7f8513
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 6 09:50:08 2021 +0100

    Silence deprecation warnings

    Only if coming from the latest spring-security-oauth2 (for which we do
    not and won't have a replacement for some time).

commit 8f27bd2
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Nov 6 08:44:07 2021 +0100

    Use H2 datasource for the tests

    This prevents issues with the hikari connection pool being closed.

commit 45c7b4e
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 19:44:15 2021 +0100

    Service starts up!

commit 4f984ee
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 19:27:01 2021 +0100

    Use a keystore with key size 2048

commit 3efc9f9
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 18:37:34 2021 +0100

    Flyway migration refactoring to avoid naming errors

commit 3f5e741
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 18:22:42 2021 +0100

    Moved source/target compatibility to Java 11

commit 7e1f1d6
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 18:14:18 2021 +0100

    License updates

commit b63ce93
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 18:13:32 2021 +0100

    Config files changes

commit 66d28d2
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 17:59:07 2021 +0100

    Builds against spring boot 2.5.6

commit 0d9167a
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 10:26:35 2021 +0100

    Fixed flyway migrations compilation problems

commit 1ca9d73
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 10:09:10 2021 +0100

    wip

commit acd7e4f
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Nov 5 08:07:33 2021 +0100

    WIP: maven clean succeeds

commit 2b9835e
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Nov 4 18:18:33 2021 +0100

    wip

commit 8dbf1cf
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 19:35:18 2021 +0100

    Fixed code smells reported by Sonar

commit 56b570e
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 19:16:59 2021 +0100

    Just build on Java 11

    Still not there for Java 17...

commit 1529049
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 18:41:18 2021 +0100

    Restore sonar analysis

commit ed52207
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 18:40:23 2021 +0100

    Use openjdk:11 docker images

commit cc382c2
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 18:26:14 2021 +0100

    Drop java 8

commit 9dc729c
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 17:59:29 2021 +0100

    Build on Jenkins with Java 11

commit 7c090dd
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 17:52:18 2021 +0100

    First attempt at java version matrix build

commit d77d860
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Nov 3 17:43:21 2021 +0100

    Dropped validator-collections dependency

commit 47cf69b
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 1 16:46:22 2021 +0100

    Fix test fixture initialization

commit 59406e0
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 1 16:45:23 2021 +0100

    Drop DevToolsDataSourceAutoConfiguration

    Which breaks h2 tests.

commit 6c18f35
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 1 16:44:52 2021 +0100

    Add flyway debug log handle

commit 2f433ad
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 1 16:44:28 2021 +0100

    Streamlined h2 db test configuration

commit c9eaa16
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Nov 1 16:41:39 2021 +0100

    Upgrade surefire plugin to the latest version

commit 37a2df2
Author: Federica Agostini <[email protected]>
Date:   Sun Oct 31 23:25:39 2021 +0100

    Add compose file for linux users

    which maps host.docker.internal into host-gateway.
    It prevents 'host not found in upstream "host.docker.internal" in /etc/nginx/conf.d/default.conf:24' error.
    Solution for this error found in

    https://stackoverflow.com/questions/48546124/what-is-linux-equivalent-of-host-docker-internal/61001152

commit 3ae9b7f
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Oct 29 08:18:12 2021 +0200

    Archive JUnit reports

commit 9626982
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Oct 29 07:45:04 2021 +0200

    Removed ununsed dependency

commit de574c8
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Oct 29 07:44:30 2021 +0200

    More test fixes

commit b3620ac
Author: Andrea Ceccanti <[email protected]>
Date:   Fri Oct 29 07:43:58 2021 +0200

    Control how many test contexts are cached during builds

commit a853f94
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Oct 28 12:32:08 2021 +0200

    More test fixes

commit 481a456
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Oct 28 11:13:39 2021 +0200

    More test fixes

commit 003a486
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Oct 28 08:49:19 2021 +0200

    More test fixes

commit 0417ad1
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Oct 27 19:25:19 2021 +0200

    More test porting

commit ed30322
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Oct 27 18:29:58 2021 +0200

    Fixed Velocity initialization

    And moved email templates from the /templates folder
    to the /email-templates folder in the classpath.

commit b35bf83
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Oct 27 08:52:18 2021 +0200

    More test fixing work

commit c2b205b
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Oct 26 17:48:16 2021 +0200

    More test fixes

commit b310d4c
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Oct 26 17:23:47 2021 +0200

    All api tests green

commit 4a70982
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Oct 26 12:17:49 2021 +0200

    Cors configuration & actuator test fixes

commit 4ed75ff
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Oct 26 00:38:23 2021 +0200

    Remove cors filter configuration

commit a948741
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:37:51 2021 +0200

    Added license

commit e025b7d
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:37:25 2021 +0200

    Started migration of integration tests

commit ee7fc54
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:36:54 2021 +0200

    New unified test annotation

commit 149d9d1
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:14:54 2021 +0200

    Project compiles

commit 84ed532
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:12:59 2021 +0200

    Run update-tests script

commit ce93f59
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:07:21 2021 +0200

    Fix compilation problems on main code

    Fix renamed classes and changed JPAConfig

commit 93b80c6
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 19:06:47 2021 +0200

    First migrate to spring boot 1.5.22

commit de5f1b1
Author: Andrea Ceccanti <[email protected]>
Date:   Mon Oct 25 18:30:00 2021 +0200

    Updated Spring and mitreid deps

commit e9e5408
Merge: 8c9b8bc 4bfc271
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Oct 24 17:47:19 2021 +0200

    Merge pull request #433 from indigo-iam/issue-432-include-groups-in-userinfo-response-wlcg

    Include wlcg.groups in userinfo response

commit 8c9b8bc
Merge: ec31232 8ffed21
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Oct 24 17:47:05 2021 +0200

    Merge pull request #431 from indigo-iam/issue-430-improved-jwk-configuration

    Improved support for JWK configuration

commit ec31232
Merge: 767e86e 88bb278
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Oct 24 17:46:45 2021 +0200

    Merge pull request #427 from indigo-iam/issue-426-jwt-based-client-auth

    First attempt at JWT-based client-auth

commit 4bfc271
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Oct 24 17:23:36 2021 +0200

    Include wlcg.groups information in userinfo response

    Even though the IAM access token is a JWT and even though groups are
    included in the access token when requested, as mandated by the WLCG JWT
    profile, there are still apps treating the access token as an opaque
    string.

    To support those apps, and be more consistent with the traditional IAM
    profile behaviour, IAM should include group information in the userinfo
    endpoint response also for the WLCG profile.

    Issue: #432

commit 195c2d7
Merge: 7f90144 5b8d9d8
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Sep 23 15:23:34 2021 +0200

    Merge pull request #425 from indigo-iam/issue-424-IAM-does-not-encode-group-names-correctly-aarc-g002

    Fix for issue-422: iam does not encode group names correctly according to AARC G002

commit 8ffed21
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Oct 24 09:25:36 2021 +0200

    Improved support for JWT configuration

    It's now possible to specify the default key id and algorithm used for
    signing tokens.

    Issue: #430

commit 88bb278
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Oct 23 09:56:08 2021 +0200

    More integration tests

commit cd8ef61
Author: Andrea Ceccanti <[email protected]>
Date:   Sat Oct 23 08:39:43 2021 +0200

    More tests for JWTAuthenticationProvider

commit fc7148d
Author: Andrea Ceccanti <[email protected]>
Date:   Sun Oct 17 23:03:37 2021 +0200

    First attempt at JWT-based client-auth

commit 767e86e
Merge: 7f90144 5b8d9d8
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Sep 23 15:23:34 2021 +0200

    Merge pull request #425 from indigo-iam/issue-424-IAM-does-not-encode-group-names-correctly-aarc-g002

    Fix for issue-422: iam does not encode group names correctly according to AARC G002

commit 5b8d9d8
Author: Andrea Ceccanti <[email protected]>
Date:   Thu Sep 23 14:50:32 2021 +0200

    Fix wrong AARC G002 group name encoding

commit 7f90144
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Sep 14 07:56:12 2021 +0200

    Version bumped back to 1.8.0-SNAPSHOT

commit 1828bf0
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Sep 14 07:55:41 2021 +0200

    Test custom logging conf

commit 4b9560c
Merge: 15f7f9f 0014a27
Author: Andrea Ceccanti <[email protected]>
Date:   Wed Sep 1 06:00:17 2021 +0200

    Merge branch 'develop' into issue-391-show-group-labels-in-account-home-page

commit 15f7f9f
Merge: 7515c14 b2d5805
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Aug 10 12:34:24 2021 +0200

    Merge pull request #395 from rmiccoli/issue-391-show-group-labels-in-account-home-page

    WIP: Issue 391 show group labels in account home page

commit b2d5805
Author: rmiccoli <[email protected]>
Date:   Fri Jul 23 16:38:24 2021 +0200

    Changes fixed

commit f88845c
Author: rmiccoli <[email protected]>
Date:   Mon Jul 19 17:09:20 2021 +0200

    Cosmetic fix

commit 7be2d03
Author: rmiccoli <[email protected]>
Date:   Mon Jul 19 16:58:47 2021 +0200

    Added group labels by using CSS classes

commit 62fc2f5
Author: rmiccoli <[email protected]>
Date:   Fri Jul 16 11:43:10 2021 +0200

    Added group labels in the account home page

commit 1bebbda
Author: rmiccoli <[email protected]>
Date:   Wed Jul 7 17:55:59 2021 +0200

    WIP add label to groups

commit 7515c14
Author: Andrea Ceccanti <[email protected]>
Date:   Tue Jun 29 14:36:36 2021 +0200

    Bootstrap development for issue 391
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