From 6fde7892ca7ddc194883dcafdc7a5029397a639e Mon Sep 17 00:00:00 2001 From: jekuaitk Date: Thu, 21 Nov 2024 13:24:07 +0100 Subject: [PATCH 1/5] Prepared audit logging v1 --- composer.lock | 46 +++++++++++-------- config/sync/core.extension.yml | 3 +- .../src/Commands/LookupCommands.php | 4 +- .../src/Plugin/Block/UserMenuBlock.php | 8 ++-- 4 files changed, 34 insertions(+), 27 deletions(-) diff --git a/composer.lock b/composer.lock index fb3d38ed..cea238e0 100644 --- a/composer.lock +++ b/composer.lock @@ -9252,16 +9252,16 @@ }, { "name": "os2forms/os2forms", - "version": "3.16.2", + "version": "3.17.0", "source": { "type": "git", "url": "https://github.com/OS2Forms/os2forms.git", - "reference": "21604bda95cf2c9403ec64b3aa38369de90576c2" + "reference": "a79a9b91e981de87114caa292a654f9cc1331a71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/OS2Forms/os2forms/zipball/21604bda95cf2c9403ec64b3aa38369de90576c2", - "reference": "21604bda95cf2c9403ec64b3aa38369de90576c2", + "url": "https://api.github.com/repos/OS2Forms/os2forms/zipball/a79a9b91e981de87114caa292a654f9cc1331a71", + "reference": "a79a9b91e981de87114caa292a654f9cc1331a71", "shasum": "" }, "require": { @@ -9317,8 +9317,8 @@ "itk-dev/beskedfordeler-drupal": "^1.0", "itk-dev/serviceplatformen": "^1.5", "mglaman/composer-drupal-lenient": "^1.0", - "os2web/os2web_audit": "^0.1", - "os2web/os2web_datalookup": "^1.5", + "os2web/os2web_audit": "^0.1.1", + "os2web/os2web_datalookup": "^2.0", "os2web/os2web_nemlogin": "^1.0", "php": "^8.1", "php-http/guzzle7-adapter": "^1.0", @@ -9377,9 +9377,9 @@ "description": "Drupal 8 OS2Form module provides advanced webform functionality for Danish Municipalities", "support": { "issues": "https://github.com/OS2Forms/os2forms/issues", - "source": "https://github.com/OS2Forms/os2forms/tree/3.16.2" + "source": "https://github.com/OS2Forms/os2forms/tree/3.17.0" }, - "time": "2024-10-31T11:39:03+00:00" + "time": "2024-11-21T10:25:47+00:00" }, { "name": "os2forms/os2forms_fasit", @@ -9741,16 +9741,16 @@ }, { "name": "os2web/os2web_audit", - "version": "0.1.0", + "version": "0.1.1", "source": { "type": "git", "url": "https://github.com/OS2web/os2web_audit.git", - "reference": "fc4081a2d70c717eb178e7f99a1aebe933a8d8a0" + "reference": "8b58dc01f44c239e36bc253094df55a8a4a5b32f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/OS2web/os2web_audit/zipball/fc4081a2d70c717eb178e7f99a1aebe933a8d8a0", - "reference": "fc4081a2d70c717eb178e7f99a1aebe933a8d8a0", + "url": "https://api.github.com/repos/OS2web/os2web_audit/zipball/8b58dc01f44c239e36bc253094df55a8a4a5b32f", + "reference": "8b58dc01f44c239e36bc253094df55a8a4a5b32f", "shasum": "" }, "require": { @@ -9778,27 +9778,33 @@ ], "description": "Drupal OS2 module that provides audit logging for Danish Municipalities", "support": { - "source": "https://github.com/OS2web/os2web_audit/tree/0.1.0" + "source": "https://github.com/OS2web/os2web_audit/tree/0.1.1" }, - "time": "2024-10-21T10:24:46+00:00" + "time": "2024-11-19T13:55:07+00:00" }, { "name": "os2web/os2web_datalookup", - "version": "1.11.5", + "version": "2.0.0", "source": { "type": "git", "url": "https://github.com/OS2web/os2web_datalookup.git", - "reference": "17f86a6e9e3a98ce3949576b5b894b851f0bbbc9" + "reference": "9126c9817c1b3179b8ef9950e722829433e1d745" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/OS2web/os2web_datalookup/zipball/17f86a6e9e3a98ce3949576b5b894b851f0bbbc9", - "reference": "17f86a6e9e3a98ce3949576b5b894b851f0bbbc9", + "url": "https://api.github.com/repos/OS2web/os2web_datalookup/zipball/9126c9817c1b3179b8ef9950e722829433e1d745", + "reference": "9126c9817c1b3179b8ef9950e722829433e1d745", "shasum": "" }, "require": { "ext-soap": "*" }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^1.0", + "drupal/coder": "^8.3", + "os2web/os2web_audit": "^0.1", + "phpunit/phpunit": "^9.5" + }, "type": "drupal-module", "notification-url": "https://packagist.org/downloads/", "license": [ @@ -9807,9 +9813,9 @@ "description": "Provides integration with Danish data lookup services such as Service platformen or Datafordeler.", "support": { "issues": "https://github.com/OS2web/os2web_datalookup/issues", - "source": "https://github.com/OS2web/os2web_datalookup/tree/1.11.5" + "source": "https://github.com/OS2web/os2web_datalookup/tree/2.0.0" }, - "time": "2024-08-02T07:28:39+00:00" + "time": "2024-11-21T09:04:27+00:00" }, { "name": "os2web/os2web_nemlogin", diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 571a8f3e..7e3c740e 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -102,6 +102,7 @@ module: os2forms_webform_list: 0 os2forms_webform_maps: 0 os2forms_webform_submission_log: 0 + os2web_audit: 0 os2web_datalookup: 0 os2web_nemlogin: 0 os2web_simplesaml: 0 @@ -159,9 +160,9 @@ module: content_translation: 10 externalauth: 10 views: 10 + minimal: 1000 eu_cookie_compliance: 1001 os2forms_encrypt: 9999 - minimal: 1000 theme: claro: 0 gin: 0 diff --git a/web/modules/custom/os2forms_selvbetjening/src/Commands/LookupCommands.php b/web/modules/custom/os2forms_selvbetjening/src/Commands/LookupCommands.php index e1c5bc6a..ddd645f0 100644 --- a/web/modules/custom/os2forms_selvbetjening/src/Commands/LookupCommands.php +++ b/web/modules/custom/os2forms_selvbetjening/src/Commands/LookupCommands.php @@ -3,7 +3,7 @@ namespace Drupal\os2forms_selvbetjening\Commands; use Drupal\os2web_datalookup\Plugin\DataLookupManager; -use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DataLookupInterfaceCpr; +use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DataLookupCprInterface; use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DatafordelerCVR; use Drush\Commands\DrushCommands; use Symfony\Component\Yaml\Yaml; @@ -40,7 +40,7 @@ public function lookUpCpr( ) { try { $instance = $this->dataLookupManager->createDefaultInstanceByGroup('cpr_lookup'); - assert($instance instanceof DataLookupInterfaceCpr); + assert($instance instanceof DataLookupCprInterface); if ($options['dump-configuration']) { $this->output()->writeln([ diff --git a/web/modules/custom/os2forms_user_menu/src/Plugin/Block/UserMenuBlock.php b/web/modules/custom/os2forms_user_menu/src/Plugin/Block/UserMenuBlock.php index c83dc588..7ce3566f 100644 --- a/web/modules/custom/os2forms_user_menu/src/Plugin/Block/UserMenuBlock.php +++ b/web/modules/custom/os2forms_user_menu/src/Plugin/Block/UserMenuBlock.php @@ -12,8 +12,8 @@ use Drupal\os2web_datalookup\LookupResult\CompanyLookupResult; use Drupal\os2web_datalookup\LookupResult\CprLookupResult; use Drupal\os2web_datalookup\Plugin\DataLookupManager; -use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DataLookupInterfaceCompany; -use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DataLookupInterfaceCpr; +use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DataLookupCompanyInterface; +use Drupal\os2web_datalookup\Plugin\os2web\DataLookup\DataLookupCprInterface; use Drupal\os2web_nemlogin\Service\AuthProviderService; use Symfony\Component\DependencyInjection\ContainerInterface; @@ -247,7 +247,7 @@ private function getPageEntity() { */ public function lookupCpr(string $cpr): CprLookupResult { $instance = $this->dataLookupManager->createDefaultInstanceByGroup('cpr_lookup'); - if (!($instance instanceof DataLookupInterfaceCpr)) { + if (!($instance instanceof DataLookupCprInterface)) { throw new RuntimeException('Cannot get CPR data lookup instance'); } $lookupResult = $instance->lookup($cpr); @@ -263,7 +263,7 @@ public function lookupCpr(string $cpr): CprLookupResult { */ public function lookupCvr(string $cvr): CompanyLookupResult { $instance = $this->dataLookupManager->createDefaultInstanceByGroup('cvr_lookup'); - if (!($instance instanceof DataLookupInterfaceCompany)) { + if (!($instance instanceof DataLookupCompanyInterface)) { throw new RuntimeException('Cannot get CVR data lookup instance'); } $lookupResult = $instance->lookup($cvr); From db13b085af7f45738290bf981d08f7c937e92448 Mon Sep 17 00:00:00 2001 From: jekuaitk Date: Thu, 21 Nov 2024 13:28:00 +0100 Subject: [PATCH 2/5] Updated CHANGELOG --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 27b18982..6d251242 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,9 @@ Nedenfor ses dato for release og beskrivelse af opgaver som er implementeret. ## [Under udvikling] +* Opdaterede til OS2Forms 3.17.0 + * Audit logging af CPR og CVR opslag + ## [3.0.1] 2024-11-18 * Håndterede ingen vedhæftede filer i forbindelse med From 829af8ea4bf154ae04d61110be555f33d1f58cae Mon Sep 17 00:00:00 2001 From: jekuaitk Date: Thu, 21 Nov 2024 13:51:21 +0100 Subject: [PATCH 3/5] Config ignored audit settings --- config/sync/config_ignore.settings.yml | 42 ++++++++++++++------------ 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/config/sync/config_ignore.settings.yml b/config/sync/config_ignore.settings.yml index f470bb32..3a11c466 100644 --- a/config/sync/config_ignore.settings.yml +++ b/config/sync/config_ignore.settings.yml @@ -1,31 +1,33 @@ _core: default_config_hash: UVH1aJ4b44UM-VdPVN7hNNuuVqfReJxwfVeDQH1Hvsk langcode: da +mode: simple ignored_config_entities: - - 'maestro.maestro_template.*' - - system.site - - 'webform.webform.*' - - 'webform.webform_options.*' - - os2web_nemlogin.settings + - '# Ignore encryption key and os2forms_encrypt settings' - '# Ignore global header, colophon and footer settings' - - 'webform.settings:third_party_settings.webform_entity_print.template' - - 'os2forms_attachment.os2forms_attachment_component.*' + - '# Ignore leaflet layers' - '# Ignore most settings on /admin/config/system/os2web-datalookup/datafordeler-cvr' - - 'os2web_datalookup.datafordeler_cvr:cert_path_live' - - 'os2web_datalookup.datafordeler_cvr:cert_passphrase_live' - '# Ignore most settings on /admin/config/system/os2web-datalookup/serviceplatformen-cpr-extended' + - key.key.webform + - 'leaflet_layers.map_bundle.*' + - 'leaflet_layers.map_layer.*' + - 'maestro.maestro_template.*' + - 'os2forms_attachment.os2forms_attachment_component.*' + - os2forms_encrypt.settings + - os2forms_forloeb.settings + - 'os2web_audit.*' + - 'os2web_datalookup.datafordeler_cvr:cert_passphrase_live' + - 'os2web_datalookup.datafordeler_cvr:cert_path_live' + - 'os2web_datalookup.serviceplatformen_cpr_extended:certfile' + - 'os2web_datalookup.serviceplatformen_cpr_extended:certfile_passphrase' + - 'os2web_datalookup.serviceplatformen_cpr_extended:certfile_test' - 'os2web_datalookup.serviceplatformen_cpr_extended:mode_selector' - 'os2web_datalookup.serviceplatformen_cpr_extended:serviceagreementuuid' - - 'os2web_datalookup.serviceplatformen_cpr_extended:wsdl' - 'os2web_datalookup.serviceplatformen_cpr_extended:usersystemuuid' - 'os2web_datalookup.serviceplatformen_cpr_extended:useruuid' - - 'os2web_datalookup.serviceplatformen_cpr_extended:certfile_passphrase' - - 'os2web_datalookup.serviceplatformen_cpr_extended:certfile' - - 'os2web_datalookup.serviceplatformen_cpr_extended:certfile_test' - - '# Ignore leaflet layers' - - 'leaflet_layers.map_bundle.*' - - 'leaflet_layers.map_layer.*' - - os2forms_forloeb.settings - - '# Ignore encryption key and os2forms_encrypt settings' - - key.key.webform - - os2forms_encrypt.settings + - 'os2web_datalookup.serviceplatformen_cpr_extended:wsdl' + - os2web_nemlogin.settings + - system.site + - 'webform.settings:third_party_settings.webform_entity_print.template' + - 'webform.webform.*' + - 'webform.webform_options.*' From 2480973e069c9680e8ddaeb4777a6670233a1b15 Mon Sep 17 00:00:00 2001 From: jekuaitk Date: Thu, 21 Nov 2024 14:32:17 +0100 Subject: [PATCH 4/5] Enabled os2web_audit_user module --- config/sync/core.extension.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml index 7e3c740e..2eff0c11 100644 --- a/config/sync/core.extension.yml +++ b/config/sync/core.extension.yml @@ -103,6 +103,7 @@ module: os2forms_webform_maps: 0 os2forms_webform_submission_log: 0 os2web_audit: 0 + os2web_audit_user: 0 os2web_datalookup: 0 os2web_nemlogin: 0 os2web_simplesaml: 0 From 0b8bb93f827032b9d0afb995870a01b6d7e9b69e Mon Sep 17 00:00:00 2001 From: jekuaitk Date: Fri, 22 Nov 2024 10:08:22 +0100 Subject: [PATCH 5/5] Update to latest os2web_datalookup --- CHANGELOG.md | 1 + composer.lock | 12 ++++++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6d251242..18dbb871 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ Nedenfor ses dato for release og beskrivelse af opgaver som er implementeret. * Opdaterede til OS2Forms 3.17.0 * Audit logging af CPR og CVR opslag + * Audit logging af login ## [3.0.1] 2024-11-18 diff --git a/composer.lock b/composer.lock index cea238e0..eb0f14ca 100644 --- a/composer.lock +++ b/composer.lock @@ -9784,16 +9784,16 @@ }, { "name": "os2web/os2web_datalookup", - "version": "2.0.0", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/OS2web/os2web_datalookup.git", - "reference": "9126c9817c1b3179b8ef9950e722829433e1d745" + "reference": "d7937762e129234e810caf3db2e8a7992cd45367" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/OS2web/os2web_datalookup/zipball/9126c9817c1b3179b8ef9950e722829433e1d745", - "reference": "9126c9817c1b3179b8ef9950e722829433e1d745", + "url": "https://api.github.com/repos/OS2web/os2web_datalookup/zipball/d7937762e129234e810caf3db2e8a7992cd45367", + "reference": "d7937762e129234e810caf3db2e8a7992cd45367", "shasum": "" }, "require": { @@ -9813,9 +9813,9 @@ "description": "Provides integration with Danish data lookup services such as Service platformen or Datafordeler.", "support": { "issues": "https://github.com/OS2web/os2web_datalookup/issues", - "source": "https://github.com/OS2web/os2web_datalookup/tree/2.0.0" + "source": "https://github.com/OS2web/os2web_datalookup/tree/2.0.1" }, - "time": "2024-11-21T09:04:27+00:00" + "time": "2024-11-22T09:04:54+00:00" }, { "name": "os2web/os2web_nemlogin",