From bb96aaac1e8ddb4d437151c82f6394c22ecb237c Mon Sep 17 00:00:00 2001 From: Christoph Reiter <reiter.christoph@gmail.com> Date: Wed, 16 Mar 2022 13:53:53 +0100 Subject: [PATCH] Remove CustomUserRoles This depends on tugraz specific things, so move it there. --- src/Resources/config/services.yaml | 3 --- src/Service/CustomUserRoles.php | 36 ------------------------------ src/Service/LDAPApi.php | 18 --------------- 3 files changed, 57 deletions(-) delete mode 100644 src/Service/CustomUserRoles.php diff --git a/src/Resources/config/services.yaml b/src/Resources/config/services.yaml index e574c64..c5bd7a0 100644 --- a/src/Resources/config/services.yaml +++ b/src/Resources/config/services.yaml @@ -6,6 +6,3 @@ services: Dbp\Relay\BasePersonBundle\API\PersonProviderInterface: '@Dbp\Relay\BasePersonConnectorLdapBundle\Service\LDAPPersonProvider' - - Dbp\Relay\AuthBundle\API\UserRolesInterface: - '@Dbp\Relay\BasePersonConnectorLdapBundle\Service\CustomUserRoles' diff --git a/src/Service/CustomUserRoles.php b/src/Service/CustomUserRoles.php deleted file mode 100644 index 2c1634c..0000000 --- a/src/Service/CustomUserRoles.php +++ /dev/null @@ -1,36 +0,0 @@ -<?php - -declare(strict_types=1); - -namespace Dbp\Relay\BasePersonConnectorLdapBundle\Service; - -use Dbp\Relay\AuthBundle\API\UserRolesInterface; - -class CustomUserRoles implements UserRolesInterface -{ - private $ldap; - - public function __construct(LDAPApi $ldap) - { - $this->ldap = $ldap; - } - - public function getRoles(?string $userIdentifier, array $scopes): array - { - // Convert all scopes to roles, like the default - $roles = []; - foreach ($scopes as $scope) { - $roles[] = 'ROLE_SCOPE_'.mb_strtoupper($scope); - } - - // In case we have a real user also merge in roles from LDAP - if ($userIdentifier !== null) { - $personRoles = $this->ldap->getRolesForCurrentPerson(); - $roles = array_merge($roles, $personRoles); - $roles = array_unique($roles); - sort($roles, SORT_STRING); - } - - return $roles; - } -} diff --git a/src/Service/LDAPApi.php b/src/Service/LDAPApi.php index ecc106e..dd8a44c 100644 --- a/src/Service/LDAPApi.php +++ b/src/Service/LDAPApi.php @@ -266,24 +266,6 @@ class LDAPApi implements LoggerAwareInterface, ServiceSubscriberInterface return $postEvent->getPerson(); } - public function getRolesForCurrentPerson(): array - { - $person = $this->getCurrentPerson(); - if ($person !== null) { - $roles = $person->getExtraData('ldap-roles'); - - if ($roles === null) { - return []; - } - - assert(is_array($roles)); - - return $roles; - } - - return []; - } - public function getPerson(string $id): Person { $id = str_replace('/people/', '', $id); -- GitLab