Skip to content

Commit

Permalink
chore(v4): merge v4.0.1 into preview (#503)
Browse files Browse the repository at this point in the history
* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* Enable functionals

* Update contact us details. (#253)

* Removing prod blocker

* Eliminating vulnerabilities

* Removing blocker

* Disable functionals

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

* 2.0 RC (#330)

* Eliminating vulnerabilities

* fix unknown char in email links (#317)

* SIDM-3511 - Update chart-java release 2.16.0 (#318)

* build(chart-java): update chart-java release to 2.16.0

* refactor(cicd): remove deprecated enableDockerBuild()

* feat(staging deployment): add aat values for helm

* feat(sidm-3483-fr6): 6.5 web-public (#315) (#321)

* feat(sidm-3483-fr6): update test regex to extract activation parssword

* feat(sidm-3483-fr6): password reset working but had to change some of the codecepts waits

* feat(sidm-3483-fr6): add 2s wait after Sign In to fix flappy test

* feat(sidm-3483-fr6): remove waits because it was fixed by Shravs changes on codecept conf

* chore(ase asp): disable legacy deployments (#323)

* ci(env name): add override for env name for build with aks (#325)

* Sidm 3561 compare screenshot test (#308)

* screen shot compare test

* updated code

* updated cnp file

* added base screen shot folder to repo

* added functional-output to git ignore

* taking base screen shot is set to false

* added diff folder to screenshot folder

* added diff folder and ignore functional output

* removed some images from base folder

* added f-output folder to gitignore

* removed some images from base folder

* removed some images from base folder

* set base image to false in ui tests

* added foutput folder to gitignore

* update policy check test

* added foutput to gitignore

* updated code to run all functional tests

* updated policy check test

* added foutput to gitignore

* change name of base screen shot

* removed foutpit from gitignore

* added wait to failed tests

* added foitput to gitignore

* added ignore screen compare code

* added wait

* updates screen shot

* removed screen shot

* added foutput folder to gitignore

* applied retry

* added resemblence helper to package.json

* added resemblance helper

* enabled screen shot for visual testing

* cleaned up code

* added functional output folder to gitignore

* ingored package.lock.json

* Delete package-lock.json

* added dependencies

* added node fetch dependency

* updared lockout test

Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>

* Idam nightly tests (#326)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* updated security.sh file

* updated security.sh file

* added false positives to audit.json file

* added false positived to audit.json fike

* added false positives

* added false positives

* updated environment

* removed unwanted code

* updated functional tag

* updated secrets env to aat

* updated secrets env to aat

* updated url to external url

* enabled mutation tests

* added false positives to audit file

* updated audit file

* removed spaces

* removed spaces

* added false positives

* added false positives

* added false positives

* added false positives

* updated jenkins-nightly

* added false positives

* updated jenkins nightly

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: Henry Dobson <henrydobson@me.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* feat(chart): aat values

* 2.0.0 RC1 aat values (#336)

* Eliminating vulnerabilities

* fix unknown char in email links (#317)

* SIDM-3511 - Update chart-java release 2.16.0 (#318)

* build(chart-java): update chart-java release to 2.16.0

* refactor(cicd): remove deprecated enableDockerBuild()

* feat(staging deployment): add aat values for helm

* feat(sidm-3483-fr6): 6.5 web-public (#315) (#321)

* feat(sidm-3483-fr6): update test regex to extract activation parssword

* feat(sidm-3483-fr6): password reset working but had to change some of the codecepts waits

* feat(sidm-3483-fr6): add 2s wait after Sign In to fix flappy test

* feat(sidm-3483-fr6): remove waits because it was fixed by Shravs changes on codecept conf

* chore(ase asp): disable legacy deployments (#323)

* ci(env name): add override for env name for build with aks (#325)

* Sidm 3561 compare screenshot test (#308)

* screen shot compare test

* updated code

* updated cnp file

* added base screen shot folder to repo

* added functional-output to git ignore

* taking base screen shot is set to false

* added diff folder to screenshot folder

* added diff folder and ignore functional output

* removed some images from base folder

* added f-output folder to gitignore

* removed some images from base folder

* removed some images from base folder

* set base image to false in ui tests

* added foutput folder to gitignore

* update policy check test

* added foutput to gitignore

* updated code to run all functional tests

* updated policy check test

* added foutput to gitignore

* change name of base screen shot

* removed foutpit from gitignore

* added wait to failed tests

* added foitput to gitignore

* added ignore screen compare code

* added wait

* updates screen shot

* removed screen shot

* added foutput folder to gitignore

* applied retry

* added resemblence helper to package.json

* added resemblance helper

* enabled screen shot for visual testing

* cleaned up code

* added functional output folder to gitignore

* ingored package.lock.json

* Delete package-lock.json

* added dependencies

* added node fetch dependency

* updared lockout test

Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>

* Idam nightly tests (#326)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* updated security.sh file

* updated security.sh file

* added false positives to audit.json file

* added false positived to audit.json fike

* added false positives

* added false positives

* updated environment

* removed unwanted code

* updated functional tag

* updated secrets env to aat

* updated secrets env to aat

* updated url to external url

* enabled mutation tests

* added false positives to audit file

* updated audit file

* removed spaces

* removed spaces

* added false positives

* added false positives

* added false positives

* added false positives

* updated jenkins-nightly

* added false positives

* updated jenkins nightly

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

* feat(chart): aat values

Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Kremi Nenkova <kremi.nenkova@gmail.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* fix(docker): flexvolume mapping to property

* fix(idam-aat): add test variables (#338)

* SIDM-2868 - Add nightly tests for 2.0.0 (#341)

* fix(idam-aat): add test variables

* SIDM-2686 - Add nightly tests for 2.0.0  (#339)

* feat(qa): cross browser tests'

* revert(delete): remove file

* fix dependencies

* fix codecept unknown option scan error

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* SIDM-3977 - v2 fix selfservice (#351)

* fix(idam-aat): add test variables

* SIDM-2686 - Add nightly tests for 2.0.0  (#339)

* feat(qa): cross browser tests'

* revert(delete): remove file

* fix dependencies

* fix codecept unknown option scan error

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* COVID-19 contatcus page changes

* SIDM-3977 Add test to check if activation link can be used after the user has registered. (#349)

* SIDM-3977 Add test to check if activation link can be used after the user has registered.

* SIDM-3977 Make it a new scenario.

* SIDM-3977 self_registration_test: Fix text

Co-authored-by: Tiago Braun <tiago.braun@amido.com>

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@aml0232.home>
Co-authored-by: dfourn <daniel.patynski@amido.com>
Co-authored-by: Tiago Braun <tiago.braun@amido.com>

* chore(idam-prod): remove prod blocker (#358)

* Zap Scanner exclusions

* excluding contact-us.* from zap scanner

* excluding login.* from zap scanner

* Ignoring some reverse proxy false positives

* v2 rc1 (#375)

* Adding support for multiple affinity cookies (#331)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* SIDM-2686 - Cross browser tests (#333)

* feat(qa): cross browser tests'

* revert(delete): remove file

* fix dependencies

* fix codecept unknown option scan error

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* Welsh language (#334)

* Add currently existing Welsh translations as messages_cy.propertes thus creating a bundle. The messages at this stage are copied "as is", and may contain translation errors.

* Externalise messages from Contact Us page.
Externalise titles from the remaining pages.

* Add a script automating hardcoded text i18n.

* SIDM-3761 Add language switcher to wrapper.tag based on example provided in Jira

* Introduce language-specific static pages and selection mechanism based on locale in context.

* Remove default locale making it possible to set it via Accept-Language HTTP header.

* Add support for preferred languages and scripts for the user interface represented as a space-separated list of BCP47.

* Minor logging fix.

* Fix an invalid test ensuring no cookie is set.

* Fix locale parameter rename in JSPs.

* Reduce cognitive complexity. Increase readability.

* Get available languages from messages bundle rather than hardcoded list of values.

* Fix a broken unit test.

* Introduce a dedicated JSP tag for a language switch. Make it reuse the current URL and add/replace ui_locales parameter with JS.

* Externalise constants.

* Change language switching URL to be build server-side to avoid the need for JS client-side.

* Add locale passing interceptor.

* Inject LocalePassingInterceptor to the global REST Template.

* Ignore other local profiles.

* Extend the locale cookie expiration.

* Increase the cookie expiration to 10 years.

* Cleanup debug code.

* Don't overwrite the language header set in another thread in the interceptor.
Add the language header to forget password call manually, as it's being run in another thread and has no knowledge of the user's selected locale.

* SIDM-3353 Create password - add additional guidance text. (#337)

* Improve test coverage. (#347)

* More test coverage for Welsh. (#348)

* SIDM-3977 Add test to check if activation link can be used after the user has registered. (#349)

* SIDM-3977 Add test to check if activation link can be used after the user has registered.

* SIDM-3977 Make it a new scenario.

* SIDM-3977 self_registration_test: Fix text

Co-authored-by: Tiago Braun <tiago.braun@amido.com>

* COVID-19 Contact Us pages changes (post Welsh) (#350)

* COVID-19 Contact Us pages changes (post Welsh)

* Use the provided Welsh translation for a missing line.

* Sidm 3831 externalise text (#342)

* Externalise messages from static pages.

* Improve message for missing EN elements.

* Add missing email addresses for English.

* Remove an unused property.

* Reexport Contact Us page to include the update and COVID-19 opening times changes.

* SIDM-3831 Fix Welsh translations. (#355)

* SIDM-3582 SIDM-3404 Account Activation link expired screen (#354)

* SIDM-3582 Fix incorrect error screen for expired account activation url.

* SIDM-3582 Increase test coverage.

* SIDM-3582 Fix import.

* SIDM-3582 Code review changes.

* SIDM-3582 Code review changes.

* SIDM-3404 Update captions.

* SIDM-3404 Add Welsh translations.

* SIDM-3582 Fix incorrect error screen for expired account activation url. (#346)

* SIDM-3582 Fix incorrect error screen for expired account activation url.

* SIDM-3582 Increase test coverage.

* SIDM-3582 Fix import.

* SIDM-3582 Code review changes.

* SIDM-3582 Code review changes.

Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>

* Add some missing Welsh translations for SIDM-3353.

* Add a new test.

Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>

* Welsh - fix AKS languages (#357)

* Add debug code listing request params

* Remove debug code. Add an attempted fix.

* Sidm 4015 welsh functional tests (#352)

* Add functional tests: duplicate registration in different languages

* Welsh tests.

* Welsh tests.

* Welsh tests.

* Welsh tests.

* Merge demo to preview after merging master to demo (#365)

* Sidm 4015 welsh functional tests (#352) (#362)

* Add functional tests: duplicate registration in different languages

* Welsh tests.

* Welsh tests.

* Welsh tests.

* Welsh tests.

* merge master to demo (#364)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* Enable functionals

* Update contact us details. (#253)

* Removing prod blocker

* Eliminating vulnerabilities

* Removing blocker

* Disable functionals

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

* 2.0 RC (#330)

* Eliminating vulnerabilities

* fix unknown char in email links (#317)

* SIDM-3511 - Update chart-java release 2.16.0 (#318)

* build(chart-java): update chart-java release to 2.16.0

* refactor(cicd): remove deprecated enableDockerBuild()

* feat(staging deployment): add aat values for helm

* feat(sidm-3483-fr6): 6.5 web-public (#315) (#321)

* feat(sidm-3483-fr6): update test regex to extract activation parssword

* feat(sidm-3483-fr6): password reset working but had to change some of the codecepts waits

* feat(sidm-3483-fr6): add 2s wait after Sign In to fix flappy test

* feat(sidm-3483-fr6): remove waits because it was fixed by Shravs changes on codecept conf

* chore(ase asp): disable legacy deployments (#323)

* ci(env name): add override for env name for build with aks (#325)

* Sidm 3561 compare screenshot test (#308)

* screen shot compare test

* updated code

* updated cnp file

* added base screen shot folder to repo

* added functional-output to git ignore

* taking base screen shot is set to false

* added diff folder to screenshot folder

* added diff folder and ignore functional output

* removed some images from base folder

* added f-output folder to gitignore

* removed some images from base folder

* removed some images from base folder

* set base image to false in ui tests

* added foutput folder to gitignore

* update policy check test

* added foutput to gitignore

* updated code to run all functional tests

* updated policy check test

* added foutput to gitignore

* change name of base screen shot

* removed foutpit from gitignore

* added wait to failed tests

* added foitput to gitignore

* added ignore screen compare code

* added wait

* updates screen shot

* removed screen shot

* added foutput folder to gitignore

* applied retry

* added resemblence helper to package.json

* added resemblance helper

* enabled screen shot for visual testing

* cleaned up code

* added functional output folder to gitignore

* ingored package.lock.json

* Delete package-lock.json

* added dependencies

* added node fetch dependency

* updared lockout test

Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>

* Idam nightly tests (#326)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* updated security.sh file

* updated security.sh file

* added false positives to audit.json file

* added false positived to audit.json fike

* added false positives

* added false positives

* updated environment

* removed unwanted code

* updated functional tag

* updated secrets env to aat

* updated secrets env to aat

* updated url to external url

* enabled mutation tests

* added false positives to audit file

* updated audit file

* removed spaces

* removed spaces

* added false positives

* added false positives

* added false positives

* added false positives

* updated jenkins-nightly

* added false positives

* updated jenkins nightly

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: Henry Dobson <henrydobson@me.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* feat(chart): aat values

* 2.0.0 RC1 aat values (#336)

* Eliminating vulnerabilities

* fix unknown char in email links (#317)

* SIDM-3511 - Update chart-java release 2.16.0 (#318)

* build(chart-java): update chart-java release to 2.16.0

* refactor(cicd): remove deprecated enableDockerBuild()

* feat(staging deployment): add aat values for helm

* feat(sidm-3483-fr6): 6.5 web-public (#315) (#321)

* feat(sidm-3483-fr6): update test regex to extract activation parssword

* feat(sidm-3483-fr6): password reset working but had to change some of the codecepts waits

* feat(sidm-3483-fr6): add 2s wait after Sign In to fix flappy test

* feat(sidm-3483-fr6): remove waits because it was fixed by Shravs changes on codecept conf

* chore(ase asp): disable legacy deployments (#323)

* ci(env name): add override for env name for build with aks (#325)

* Sidm 3561 compare screenshot test (#308)

* screen shot compare test

* updated code

* updated cnp file

* added base screen shot folder to repo

* added functional-output to git ignore

* taking base screen shot is set to false

* added diff folder to screenshot folder

* added diff folder and ignore functional output

* removed some images from base folder

* added f-output folder to gitignore

* removed some images from base folder

* removed some images from base folder

* set base image to false in ui tests

* added foutput folder to gitignore

* update policy check test

* added foutput to gitignore

* updated code to run all functional tests

* updated policy check test

* added foutput to gitignore

* change name of base screen shot

* removed foutpit from gitignore

* added wait to failed tests

* added foitput to gitignore

* added ignore screen compare code

* added wait

* updates screen shot

* removed screen shot

* added foutput folder to gitignore

* applied retry

* added resemblence helper to package.json

* added resemblance helper

* enabled screen shot for visual testing

* cleaned up code

* added functional output folder to gitignore

* ingored package.lock.json

* Delete package-lock.json

* added dependencies

* added node fetch dependency

* updared lockout test

Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>

* Idam nightly tests (#326)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* updated security.sh file

* updated security.sh file

* added false positives to audit.json file

* added false positived to audit.json fike

* added false positives

* added false positives

* updated environment

* removed unwanted code

* updated functional tag

* updated secrets env to aat

* updated secrets env to aat

* updated url to external url

* enabled mutation tests

* added false positives to audit file

* updated audit file

* removed spaces

* removed spaces

* added false positives

* added false positives

* added false positives

* added false positives

* updated jenkins-nightly

* added false positives

* updated jenkins nightly

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

* feat(chart): aat values

Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Kremi Nenkova <kremi.nenkova@gmail.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* fix(docker): flexvolume mapping to property

* fix(idam-aat): add test variables (#338)

* SIDM-2868 - Add nightly tests for 2.0.0 (#341)

* fix(idam-aat): add test variables

* SIDM-2686 - Add nightly tests for 2.0.0  (#339)

* feat(qa): cross browser tests'

* revert(delete): remove file

* fix dependencies

* fix codecept unknown option scan error

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* SIDM-3977 - v2 fix selfservice (#351)

* fix(idam-aat): add test variables

* SIDM-2686 - Add nightly tests for 2.0.0  (#339)

* feat(qa): cross browser tests'

* revert(delete): remove file

* fix dependencies

* fix codecept unknown option scan error

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* COVID-19 contatcus page changes

* SIDM-3977 Add test to check if activation link can be used after the user has registered. (#349)

* SIDM-3977 Add test to check if activation link can be used after the user has registered.

* SIDM-3977 Make it a new scenario.

* SIDM-3977 self_registration_test: Fix text

Co-authored-by: Tiago Braun <tiago.braun@amido.com>

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@aml0232.home>
Co-authored-by: dfourn <daniel.patynski@amido.com>
Co-authored-by: Tiago Braun <tiago.braun@amido.com>

* chore(idam-prod): remove prod blocker (#358)

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <daniel.patynski@amido.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Henry Dobson <henrydobson@me.com>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: Kremi Nenkova <kremi.nenkova@gmail.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@aml0232.home>
Co-authored-by: Tiago Braun <tiago.braun@amido.com>

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <daniel.patynski@amido.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Henry Dobson <henrydobson@me.com>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: Kremi Nenkova <kremi.nenkova@gmail.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@aml0232.home>
Co-authored-by: Tiago Braun <tiago.braun@amido.com>

* add login with pin test (#361)

* add login with pin test

* fix review comment

* fix review

Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* Fix  CVE-2020-9488 vulnerability. (#367)

* Fix  CVE-2020-9488 vulnerability.

* - upgrade Gradle to 6.3
- fix deprecated Gradle elements
- upgrade Spring Boot to 2.2.6.RELEASE
- upgrade idamBob to 2.0.1

* update to chart-java 2.18.0

* Switch to idam BOM 2.1.0 to fix CVE-2020-9488 vulnerability

* Make /activate POST request redirect to a GET endpoint that can have … (#366)

* Make /activate POST request redirect to a GET endpoint that can have its language changes.

* Restore individual imports.

* Code review changes.

* Fix broken functional test.

* Empty commit.

* Sidm 4120 welsh post requests (#368)

* Increase code coverage.

* Functional tests fix attempt.

* Sidm 4120 welsh post requests (#370)

* Increase code coverage.

* Functional tests fix attempt.

* Fix an issue with Welsh language switch urlencoding parameters.

* A NPE fix for when there is no query string.

* Attempt to fix Sonar false-positive.

* V2 1 intermediary master bfg (#374)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* Enable functionals

* Update contact us details. (#253)

* Removing prod blocker

* Eliminating vulnerabilities

* Removing blocker

* Disable functionals

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

* 2.0 RC (#330)

* Eliminating vulnerabilities

* fix unknown char in email links (#317)

* SIDM-3511 - Update chart-java release 2.16.0 (#318)

* build(chart-java): update chart-java release to 2.16.0

* refactor(cicd): remove deprecated enableDockerBuild()

* feat(staging deployment): add aat values for helm

* feat(sidm-3483-fr6): 6.5 web-public (#315) (#321)

* feat(sidm-3483-fr6): update test regex to extract activation parssword

* feat(sidm-3483-fr6): password reset working but had to change some of the codecepts waits

* feat(sidm-3483-fr6): add 2s wait after Sign In to fix flappy test

* feat(sidm-3483-fr6): remove waits because it was fixed by Shravs changes on codecept conf

* chore(ase asp): disable legacy deployments (#323)

* ci(env name): add override for env name for build with aks (#325)

* Sidm 3561 compare screenshot test (#308)

* screen shot compare test

* updated code

* updated cnp file

* added base screen shot folder to repo

* added functional-output to git ignore

* taking base screen shot is set to false

* added diff folder to screenshot folder

* added diff folder and ignore functional output

* removed some images from base folder

* added f-output folder to gitignore

* removed some images from base folder

* removed some images from base folder

* set base image to false in ui tests

* added foutput folder to gitignore

* update policy check test

* added foutput to gitignore

* updated code to run all functional tests

* updated policy check test

* added foutput to gitignore

* change name of base screen shot

* removed foutpit from gitignore

* added wait to failed tests

* added foitput to gitignore

* added ignore screen compare code

* added wait

* updates screen shot

* removed screen shot

* added foutput folder to gitignore

* applied retry

* added resemblence helper to package.json

* added resemblance helper

* enabled screen shot for visual testing

* cleaned up code

* added functional output folder to gitignore

* ingored package.lock.json

* Delete package-lock.json

* added dependencies

* added node fetch dependency

* updared lockout test

Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>

* Idam nightly tests (#326)

* Adding back the prod deployment blocker (#189)

* extra tests for code quality (#196)

* Removing blocker for go live

* Load vault secrets fix

* Security fix

* Adding go live blocker

* Securityscan master (#197)

* adding security scan config

* update public uRI

* adding fun-output dir to gitignore

* adding aat url

* Exclude jquery from the zap scanners.

* [PREVIEW] Fixing the pipeline (#211)

* [PREVIEW] SIDM-3007 SIDM-3089 SIDM-3090 Fix PR asp_name, update Dockerfile, add CVE suppression (#201)

* fix(local.asp_name): add conditional case for asp_name when running PRs

By using the asp_name_override for idam-api, idam-web-public and idam-web-admin for PRs, pipelines
cannot run in parallel as they clash with each other. Do not use asp_name_override for PRs.

* feat(security suppression): add suppression for pitest related to CVE-2019-15052

pitest 1.3.0 and 1.4.0 are flagged under CVE-2019-15052 but are only used in testing. 1.4.0 is the latest release

SIDM-3090

* fix(base image/insights agent): update Dockerfile as base image is no longer available

* Change ref in the terraform file.

* [PREVIEW] Minor content changes for 1.4.1 (#210)

* SIDM-3130 Contact Us screen - Update SSCS details.

* SIDM-2904 Update Survey feedback link across IDAM public screens.

* [PREVIEW] 1.4.1 Scope Change (#216) (#218)

* SIDM-2904 Manually revert SIDM-2904.

* SIDM-2757 Fix double apostrophe in a message. (#187)

* [PREVIEW] footer pages update (#194)

* Add 'Family Public Law' section to the 'Contact Us' page.

* Add Family Public Law Service info to cookies and privacy policy pages.

* A few adjustements.

* Remove repetition.

* Add a space.

* SIDM-2412 Remove records about 2 cookies which are not used in the Family Public Law Service. (#204)

* Add CVE-14540 and 16335 supressions

* Adding prod blocker

* Disable functional tests

* Web public tests 1.5 (#267)

* special character password test

* added password characters

* changed password characters

* redued wait time

* Sidm 3294 mfa e2e tests (#256)

* add mfa otp login tests

* add missing file

* fix typo

* add missing code

* fix test failures

* add more waits

* add more waits

* add exiplit wait

* add block policy scenario

* feat(SIDM-3410-ips): filter out internal ips from policy valuation (#270)

* feat(SIDM-3410-ips): filter out internal ips from policy valuation

* feat(SIDM-3410-ips): simplify and merge methods

* feat(SIDM-3410-ips): simplify regex

* This should fix the ArrAffinity token problem (#277)

* feat(SIDM-3441-sso): Policy eval: remove bearer auth token (#283)

* Include fix for 1.5 (#275)

* feat(SIDM-3410-ips-preview): remove filter pattern in preview (#272)

* Updating with for suggestions (#273)

* Updating with for suggestions

* Need to escape the dot

* feat(sidm-3410-rc2): merge 3410 preview into RC (#284)

* Updating with for suggestions (#273)

* fix(vnet_private_ip_pattern): update escape syntax (#281)

* feat(SIDM-3410-fix-def): use same escaping as preview which is tested (#285)

* feat(SIDM-3437-redir): login/mfa: redirecting using slash (#280) (#287)

* Adding prod blocker

* Duplicated code fix

* updated security.sh file

* updated security.sh file

* added false positives to audit.json file

* added false positived to audit.json fike

* added false positives

* added false positives

* updated environment

* removed unwanted code

* updated functional tag

* updated secrets env to aat

* updated secrets env to aat

* updated url to external url

* enabled mutation tests

* added false positives to audit file

* updated audit file

* removed spaces

* removed spaces

* added false positives

* added false positives

* added false positives

* added false positives

* updated jenkins-nightly

* added false positives

* updated jenkins nightly

Co-authored-by: kremi <34029797+kremi@users.noreply.github.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Upgrade to tomcat 9.0.31 to address CVE-2020-1938

* Affinity cookie name is different

* Adding support for multiple affinity cookies (#332)

Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>

* Apply suggestions from code review

* remove waits and add suggestions

* fix test failure

* add wait for failing tests

* ci(prod blocker): add

* fix hmcts policy set for block user test

* fix(aat deployment): add credential and environment overrides

Co-authored-by: Nikola Naydenov <nikola.naydenov@amido.com>
Co-authored-by: Shravan Mechineni <shravanmechineni5@gmail.com>
Co-authored-by: Henry Dobson <henrydobson@me.com>
Co-authored-by: tbamido <50667636+tbamido@users.noreply.github.com>
Co-authored-by: sudhasane <vanisekhar75@gmail.com>
Co-authored-by: NikolaNaydenov <47004340+NikolaNaydenov@users.noreply.github.com>
Co-authored-by: James Burke <james.burke@amido.com>
Co-authored-by: dfourn <dpatynski@gmail.com>
Co-authored-by: nikola-naydenov-hmcts <47384516+nikola-naydenov-hmcts@users.noreply.github.com>
Co-authored-by: Nikola Naydenov <nikolanaydenov@AML0232.local>
Co-authored-by: Shravan Mechineni <shravan.mechineni@ladbrokescoral.com>

* feat(chart): aat values

* 2.0.0 RC1 aat values (#336)

* Eliminating vulnerabilities

* fix unknown char in email links (#317)

* SIDM-3511 - Update chart-java release 2.16.0 (#318)

* build(chart-java): update chart-java release to 2.16.0

* refactor(cicd): remove deprecated enableDockerBuild()

* feat(staging deployment): add aat values for helm

* feat(sidm-3483-fr6): 6.5 web-public (#315) (#321)

* feat(sidm-3483-fr6): update test regex to extract activation parssword

* feat(sidm-3483-fr6): password reset working but had to change some of the codecepts waits

* feat(sidm-3483-fr6): add 2s wait after Sign In to fix flappy test

* feat(sidm-3483-fr6): remove waits because it was fixed by Shravs changes on codecept conf

* chore(ase asp): disable legacy deployments (#323)

* ci(env name): add override for env name for build with aks (#325)

* Sidm 3561 compare screenshot test (#308)

* screen shot compare test

* updated code

* updated cnp file

* added base screen shot folder to repo

* added functional-output to git ignore

* taking base screen shot is set to false

* added diff folder to screenshot folder

* added diff folder and ignore functional output

* removed some images from base folder

* added f-output folder to gitignore

* removed some images from base folder

* removed some images from base folder

* set base image to false in ui tests

* added foutput folder to gitignore

* update policy check test

* added foutput to gitignore

* updated code to run all functional tests

* updated policy check test

* added foutput to gitignore

* change name of base screen shot

* removed foutpit from gitignore

* added wait to failed tests

* added foitput to gitignore

* added ignore screen compare code

* added wait

* upda…
  • Loading branch information
20 people authored Oct 6, 2020
1 parent fc12df4 commit 5b8bdd4
Show file tree
Hide file tree
Showing 22 changed files with 233 additions and 54 deletions.
5 changes: 5 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
repos:
- repo: git://github.com/antonbabenko/pre-commit-terraform
rev: v1.18.0
hooks:
- id: terraform_fmt
15 changes: 10 additions & 5 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ plugins {
id 'java'
id 'jacoco'
id 'io.spring.dependency-management' version '1.0.9.RELEASE' apply false
id 'org.owasp.dependencycheck' version '5.1.1'
id 'org.owasp.dependencycheck' version '5.3.2.1'
id 'org.sonarqube' version '2.6.2'
id 'org.springframework.boot' version '2.2.8.RELEASE' apply false
id 'org.springframework.boot' version '2.2.10.RELEASE' apply false
id 'com.gorylenko.gradle-git-properties' version '1.4.21'
id "info.solidsoft.pitest" version "1.4.6"
id 'pmd'
Expand Down Expand Up @@ -35,6 +35,7 @@ allprojects {
//TODO: Remove once spring boot have updated versions to match
ext['tomcat.version'] = '9.0.37'
ext['log4j2.version'] = '2.13.3'
ext['spring.boot.version'] = '2.2.10.RELEASE'

dependencyManagement {
imports {
Expand All @@ -59,6 +60,10 @@ allprojects {
analyzers {
// Disable scanning of .NET related binaries
assemblyEnabled = false
nodeEnabled = false
nodeAudit {
enabled = false
}
}
}

Expand All @@ -74,12 +79,12 @@ allprojects {
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-oauth2-client'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-oauth2-resource-server'
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-data-redis-reactive'
implementation group: 'org.springframework.session', name: 'spring-session-data-redis', version: '2.2.3.RELEASE'
implementation group: 'org.springframework.session', name: 'spring-session-data-redis', version: '2.2.4.RELEASE'

implementation group: 'io.github.openfeign', name: 'feign-jackson', version: '10.11'
implementation group: 'io.github.openfeign', name: 'feign-okhttp', version: '10.11'
implementation group: 'org.springframework.cloud', name: 'spring-cloud-starter-openfeign', version: '2.2.3.RELEASE'
implementation(group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-zuul', version: '2.2.3.RELEASE') {
implementation group: 'org.springframework.cloud', name: 'spring-cloud-starter-openfeign', version: '2.2.5.RELEASE'
implementation(group: 'org.springframework.cloud', name: 'spring-cloud-starter-netflix-zuul', version: '2.2.5.RELEASE') {
exclude(module: 'rxnetty-contexts')
exclude(module: 'rxnetty-servo')
exclude(module: 'rxnetty')
Expand Down
58 changes: 56 additions & 2 deletions dependency-check-suppressions.xml
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@
<cve>CVE-2014-0119</cve>
<cve>CVE-2016-5388</cve>
</suppress>

<!--
This vulnerability can only be exploited if polymorphic typing is enabled on the default
object mapper, hence not relevant to us.
Expand All @@ -214,7 +214,7 @@
ONLY UNTIL 2019-10-01. No invulnerable package currently
-->
<suppress>
<notes>
<notes>
https://www.cvedetails.com/cve/CVE-2019-12384/
FasterXML jackson-databind 2.x before 2.9.9.1 might allow attackers to have a variety of impacts by leveraging failure to block the logback-core class from polymorphic deserialization. Depending on the classpath content, remote code execution may be possible.
</notes>
Expand Down Expand Up @@ -280,6 +280,60 @@
<cve>CVE-2019-16370</cve>
</suppress>

<suppress>
<notes>
TODO: fix these: suppress some netflix CVEs to deploy a hotfix
</notes>
<gav regex="true">^com\.netflix\.servo:servo-core:0\.10\.1$</gav>
<cve>CVE-2014-0047</cve>
<cve>CVE-2014-0048</cve>
<cve>CVE-2014-5277</cve>
<cve>CVE-2014-5278</cve>
<cve>CVE-2014-5282</cve>
<cve>CVE-2014-6407</cve>
<cve>CVE-2014-8178</cve>
<cve>CVE-2014-8179</cve>
<cve>CVE-2014-9356</cve>
<cve>CVE-2014-9358</cve>
<cve>CVE-2015-3627</cve>
<cve>CVE-2015-3630</cve>
<cve>CVE-2015-3631</cve>
<cve>CVE-2016-3697</cve>
<cve>CVE-2017-14992</cve>
<cve>CVE-2019-13139</cve>
<cve>CVE-2019-13509</cve>
<cve>CVE-2019-15752</cve>
<cve>CVE-2019-16884</cve>
<cve>CVE-2019-5736</cve>
</suppress>

<suppress>
<notes>
TODO: fix these: suppress some netflix CVEs to deploy a hotfix
</notes>
<gav regex="true">^com\.netflix\.servo:servo-internal:0\.10\.1$</gav>
<cve>CVE-2014-0047</cve>
<cve>CVE-2014-0048</cve>
<cve>CVE-2014-5277</cve>
<cve>CVE-2014-5278</cve>
<cve>CVE-2014-5282</cve>
<cve>CVE-2014-6407</cve>
<cve>CVE-2014-8178</cve>
<cve>CVE-2014-8179</cve>
<cve>CVE-2014-9356</cve>
<cve>CVE-2014-9358</cve>
<cve>CVE-2015-3627</cve>
<cve>CVE-2015-3630</cve>
<cve>CVE-2015-3631</cve>
<cve>CVE-2016-3697</cve>
<cve>CVE-2017-14992</cve>
<cve>CVE-2019-13139</cve>
<cve>CVE-2019-13509</cve>
<cve>CVE-2019-15752</cve>
<cve>CVE-2019-16884</cve>
<cve>CVE-2019-5736</cve>
</suppress>

<!--
This dependency is a transitional dependency of spring-security-oauth2-client,
as such could only be exploited by developers.
Expand Down
53 changes: 31 additions & 22 deletions src/main/java/uk/gov/hmcts/reform/idam/web/AppController.java
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
import org.springframework.web.client.HttpClientErrorException;
import org.springframework.web.client.HttpServerErrorException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import org.springframework.web.servlet.view.RedirectView;
import uk.gov.hmcts.reform.idam.api.internal.model.ErrorResponse;
import uk.gov.hmcts.reform.idam.api.internal.model.Service;
Expand Down Expand Up @@ -74,6 +73,12 @@
@Controller
public class AppController {

private static final String REDIRECT_RESET_INACTIVE_USER = "redirect:/reset/inactive-user";
public static final String LOGIN_FAILURE_ERROR_CODE = "Login failure";
public static final String REDIRECT_PREFIX = "redirect:";
public static final String IDAM_AUTH_ID_COOKIE_PREFIX = "Idam.AuthId=";
public static final String ERROR_TITLE = "Error";

@Autowired
private SPIService spiService;

Expand Down Expand Up @@ -204,7 +209,7 @@ public ModelAndView upliftRegister(@ModelAttribute("registerUserCommand") @Valid
model.put("client_id", request.getClient_id());
model.put("redirect_uri", request.getRedirect_uri());
model.put("state", request.getState());
return new ModelAndView("redirect:/reset/inactive-user", model);
return new ModelAndView(REDIRECT_RESET_INACTIVE_USER, model);
}

msg = "PIN user not longer valid";
Expand Down Expand Up @@ -318,6 +323,8 @@ public String loginView(@ModelAttribute("authorizeCommand") AuthorizeRequest req

model.addAttribute(RESPONSE_TYPE, request.getResponse_type());
model.addAttribute(STATE, request.getState());
model.addAttribute(NONCE, request.getNonce());
model.addAttribute(PROMPT, request.getPrompt());
model.addAttribute(CLIENT_ID, request.getClient_id());
model.addAttribute(REDIRECT_URI, request.getRedirect_uri());
model.addAttribute(SCOPE, request.getScope());
Expand Down Expand Up @@ -387,7 +394,7 @@ public ModelAndView login(@ModelAttribute("authorizeCommand") @Validated Authori
if (cookies == null) {
log.info("/login: Authenticate returned no cookies for user - {}", obfuscateEmailAddress(request.getUsername()));
model.addAttribute(HAS_LOGIN_FAILED, true);
bindingResult.reject("Login failure");
bindingResult.reject(LOGIN_FAILURE_ERROR_CODE);
return new ModelAndView(LOGIN_VIEW, model.asMap());
}

Expand Down Expand Up @@ -416,11 +423,11 @@ public ModelAndView login(@ModelAttribute("authorizeCommand") @Validated Authori
log.info("/login: Successful login - {}", obfuscateEmailAddress(request.getUsername()));
List<String> secureCookies = authHelper.makeCookiesSecure(cookies);
secureCookies.forEach(cookie -> response.addHeader(HttpHeaders.SET_COOKIE, cookie));
return new ModelAndView("redirect:" + responseUrl);
return new ModelAndView(REDIRECT_PREFIX + responseUrl);
} else {
log.info("/login: There is a problem while logging in user - {}", obfuscateEmailAddress(request.getUsername()));
model.addAttribute(HAS_LOGIN_FAILED, true);
bindingResult.reject("Login failure");
bindingResult.reject(LOGIN_FAILURE_ERROR_CODE);
return new ModelAndView(LOGIN_VIEW, model.asMap());
}
}
Expand All @@ -430,9 +437,11 @@ public ModelAndView login(@ModelAttribute("authorizeCommand") @Validated Authori
case ACCOUNT_LOCKED:
model.addAttribute(IS_ACCOUNT_LOCKED, true);
bindingResult.reject("Account locked");
return new ModelAndView(LOGIN_VIEW, model.asMap());
case ACCOUNT_SUSPENDED:
model.addAttribute(IS_ACCOUNT_SUSPENDED, true);
bindingResult.reject("Account suspended");
return new ModelAndView(LOGIN_VIEW, model.asMap());
case POLICIES_FAIL:
log.info("/login: User failed policy checks - {}", obfuscateEmailAddress(request.getUsername()));
model.addAttribute(HAS_POLICY_CHECK_FAILED, true);
Expand All @@ -443,19 +452,19 @@ public ModelAndView login(@ModelAttribute("authorizeCommand") @Validated Authori
staleUserResetPasswordParams.remove(USERNAME);
staleUserResetPasswordParams.remove(PASSWORD);
staleUserResetPasswordParams.remove(SELF_REGISTRATION_ENABLED);
return new ModelAndView("redirect:/reset/inactive-user", staleUserResetPasswordParams);
return new ModelAndView(REDIRECT_RESET_INACTIVE_USER, staleUserResetPasswordParams);
default:
model.addAttribute(HAS_LOGIN_FAILED, true);
bindingResult.reject("Login failure");
bindingResult.reject(LOGIN_FAILURE_ERROR_CODE);
}
} else {
model.addAttribute(HAS_LOGIN_FAILED, true);
bindingResult.reject("Login failure");
bindingResult.reject(LOGIN_FAILURE_ERROR_CODE);
}
} catch (HttpClientErrorException | HttpServerErrorException | JsonProcessingException he) {
log.info("/login: Login failed for user - {}", obfuscateEmailAddress(request.getUsername()));
model.addAttribute(HAS_LOGIN_FAILED, true);
bindingResult.reject("Login failure");
bindingResult.reject(LOGIN_FAILURE_ERROR_CODE);
}
return new ModelAndView(LOGIN_VIEW, model.asMap());
}
Expand Down Expand Up @@ -555,10 +564,10 @@ public ModelAndView verification(@ModelAttribute("authorizeCommand") @Validated
try {
final String authId = StringUtils.substringAfter(
cookies.stream()
.filter(cookie -> cookie.startsWith("Idam.AuthId="))
.filter(cookie -> cookie.startsWith(IDAM_AUTH_ID_COOKIE_PREFIX))
.findFirst()
.orElseThrow(),
"Idam.AuthId=");
IDAM_AUTH_ID_COOKIE_PREFIX);
final List<String> responseCookies = spiService.submitOtpeAuthentication(authId, ipAddress, request.getCode());
log.info("/verification: Successful OTP submission request");

Expand All @@ -568,7 +577,7 @@ public ModelAndView verification(@ModelAttribute("authorizeCommand") @Validated
log.info("/verification: Successful login");
List<String> secureCookies = authHelper.makeCookiesSecure(responseCookies);
secureCookies.forEach(cookie -> response.addHeader(HttpHeaders.SET_COOKIE, cookie));
return new ModelAndView("redirect:" + responseUrl);
return new ModelAndView(REDIRECT_PREFIX + responseUrl);
} else {
log.info("/verification: There is a problem while logging in user");
return redirectToLoginOnFailedOtpVerification(request, bindingResult, model);
Expand All @@ -594,8 +603,8 @@ public ModelAndView verification(@ModelAttribute("authorizeCommand") @Validated
.get(HttpHeaders.SET_COOKIE))
.orElse(new ArrayList<>())
.stream()
.filter(cookie -> cookie.startsWith("Idam.AuthId="))
.map(cookie -> StringUtils.substringAfter(cookie, "Idam.AuthId="))
.filter(cookie -> cookie.startsWith(IDAM_AUTH_ID_COOKIE_PREFIX))
.map(cookie -> StringUtils.substringAfter(cookie, IDAM_AUTH_ID_COOKIE_PREFIX))
.findFirst()
.ifPresent(authId -> response.addCookie(new Cookie("Idam.AuthId", authId)));
return new ModelAndView(VERIFICATION_VIEW, model.asMap());
Expand All @@ -620,7 +629,7 @@ private ModelAndView redirectToLoginOnFailedOtpVerification(VerificationRequest
BindingResult bindingResult,
Model model) {
model.addAttribute("hasOtpCheckFailed", true);
bindingResult.reject("Login failure");
bindingResult.reject(LOGIN_FAILURE_ERROR_CODE);
model.addAttribute("authorizeCommand", request);
model.addAttribute(USERNAME, null);
return new ModelAndView("redirect:/" + LOGIN_VIEW, model.asMap());
Expand Down Expand Up @@ -651,7 +660,7 @@ public ModelAndView upliftLogin(@Validated UpliftRequest request, BindingResult
return new ModelAndView(UPLIFT_LOGIN_VIEW, modelMap);
}

String redirectUrl = "redirect:";
String redirectUrl = REDIRECT_PREFIX;
try {
final String jsonResponse = spiService.uplift(request.getUsername(), request.getPassword(), request.getJwt(),
request.getRedirect_uri(), request.getClient_id(), request.getState(), request.getScope());
Expand All @@ -666,7 +675,7 @@ public ModelAndView upliftLogin(@Validated UpliftRequest request, BindingResult
model.put("redirect_uri", request.getRedirect_uri());
model.put("state", request.getState());
model.put("scope", request.getScope());
return new ModelAndView("redirect:/reset/inactive-user", model);
return new ModelAndView(REDIRECT_RESET_INACTIVE_USER, model);
} else {
log.error("Uplift process exception: {}", ex.getMessage(), ex);

Expand Down Expand Up @@ -709,7 +718,7 @@ public String loginWithPin(@RequestParam(value = "pin", required = false) String

try {

return "redirect:" + spiService.loginWithPin(pin, redirectUri, state, clientId); //NOSONAR
return REDIRECT_PREFIX + spiService.loginWithPin(pin, redirectUri, state, clientId); //NOSONAR

} catch (HttpClientErrorException | BadCredentialsException e) {
log.error("Problem with pin: {}", e.getMessage());
Expand Down Expand Up @@ -797,14 +806,14 @@ public String resetPassword(final String action, final String password1, final S
} catch (HttpClientErrorException e) {
log.error("Error resetting password: {}", e.getResponseBodyAsString(), e);
if (e.getStatusCode() == HttpStatus.PRECONDITION_FAILED) {
ErrorHelper.showError("Error", "public.common.error.invalid.password", "public.common.error.invalid.password", "", model);
ErrorHelper.showError(ERROR_TITLE, "public.common.error.invalid.password", "public.common.error.invalid.password", "", model);
} else if (e.getStatusCode() == HttpStatus.BAD_REQUEST) {
if (validationService.isErrorInResponse(e.getResponseBodyAsString(), ErrorResponse.CodeEnum.PASSWORD_BLACKLISTED)) {
ErrorHelper.showError("Error", "public.common.error.blacklisted.password", "public.common.error.blacklisted.password", "public.common.error.enter.password", model);
ErrorHelper.showError(ERROR_TITLE, "public.common.error.blacklisted.password", "public.common.error.blacklisted.password", "public.common.error.enter.password", model);
} else if (validationService.isErrorInResponse(e.getResponseBodyAsString(), ErrorResponse.CodeEnum.PASSWORD_CONTAINS_PERSONAL_INFO)) {
ErrorHelper.showError("Error", "public.common.error.containspersonalinfo.password", "public.common.error.containspersonalinfo.password", "public.common.error.enter.password", model);
ErrorHelper.showError(ERROR_TITLE, "public.common.error.containspersonalinfo.password", "public.common.error.containspersonalinfo.password", "public.common.error.enter.password", model);
} else if (validationService.isErrorInResponse(e.getResponseBodyAsString(), ErrorResponse.CodeEnum.ACCOUNT_LOCKED)) {
ErrorHelper.showError("Error", "public.common.error.previously.used.password", "public.common.error.password.details", "public.common.error.enter.password", model);
ErrorHelper.showError(ERROR_TITLE, "public.common.error.previously.used.password", "public.common.error.password.details", "public.common.error.enter.password", model);
}
} else if (e.getStatusCode() == HttpStatus.NOT_FOUND) {
return "redirect:expiredtoken";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,4 @@ protected void configure(HttpSecurity http) throws Exception {
// @formatter:on
}

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -84,13 +84,13 @@ public Client client() {
Dispatcher dispatcher = new Dispatcher();
dispatcher.setMaxRequests(200);
dispatcher.setMaxRequestsPerHost(200);
OkHttpClient httpClient = new OkHttpClient.Builder()
OkHttpClient newHttpClient = new OkHttpClient.Builder()
.dispatcher(dispatcher)
.readTimeout(20000, TimeUnit.MILLISECONDS)
.followRedirects(false)
.followSslRedirects(false)
.build();
return new feign.okhttp.OkHttpClient(httpClient);
return new feign.okhttp.OkHttpClient(newHttpClient);
}

public Encoder feignFormEncoder() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.http.CacheControl;
import org.springframework.http.MediaType;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.LocaleResolver;
import org.springframework.web.servlet.config.annotation.ContentNegotiationConfigurer;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public CookieSerializer cookieSerializer() {
DefaultCookieSerializer serializer = new DefaultCookieSerializer();
serializer.setCookieName("Idam.SSOSession");
serializer.setCookiePath("/");
serializer.setDomainNamePattern("^.+?\\.(\\w+\\.[a-z]+)$");
// serializer.setDomainNamePattern("^.+?\\.(\\w+\\.[a-z]+)$");
serializer.setCookieMaxAge(FIVE_DAYS_IN_SECONDS);
serializer.setUseSecureCookie(useSecureCookie);
return serializer;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package uk.gov.hmcts.reform.idam.web.helper;

import lombok.experimental.UtilityClass;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.web.client.HttpClientErrorException;
Expand All @@ -11,6 +12,7 @@

import static java.nio.charset.StandardCharsets.UTF_8;

@UtilityClass
public class ErrorHelper {

private static final String ERROR = "error";
Expand Down
Loading

0 comments on commit 5b8bdd4

Please sign in to comment.