PRODENG-276: Resolved PMD issues.

This commit is contained in:
Jamal Kaabi-Mofrad
2024-05-30 17:06:24 +01:00
parent e59bb3261c
commit a9a911e77f
5 changed files with 33 additions and 33 deletions

View File

@@ -81,25 +81,24 @@ public interface PermissionService
/**
* The dynamic authority for the Admin service account.
*/
String ADMIN_SERVICE_ACCOUNT_AUTHORITY = "ROLE_ADMIN_SERVICE_ACCOUNT";
String ADMIN_SVC_AUTHORITY = "ROLE_ADMIN_SERVICE_ACCOUNT";
/**
* The dynamic authority for the Collaborator service account.
*/
String COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY = "ROLE_COLLABORATOR_SERVICE_ACCOUNT";
String COLLABORATOR_SVC_AUTHORITY = "ROLE_COLLABORATOR_SERVICE_ACCOUNT";
/**
* The dynamic authority for the Editor service account.
*/
String EDITOR_SERVICE_ACCOUNT_AUTHORITY = "ROLE_EDITOR_SERVICE_ACCOUNT";
String EDITOR_SVC_AUTHORITY = "ROLE_EDITOR_SERVICE_ACCOUNT";
/**
* A convenient set of service account authorities to simplify checks
* for whether a given authority is a service account authority or not.
*/
Set<String> SERVICE_ACCOUNT_AUTHORITIES_SET = Set.of(ADMIN_SERVICE_ACCOUNT_AUTHORITY,
COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY,
EDITOR_SERVICE_ACCOUNT_AUTHORITY);
Set<String> SVC_AUTHORITIES_SET = Set.of(ADMIN_SVC_AUTHORITY, COLLABORATOR_SVC_AUTHORITY,
EDITOR_SVC_AUTHORITY);
/**
* The permission for all - not defined in the model. Repsected in the code.

View File

@@ -25,6 +25,7 @@
*/
package org.alfresco.repo.sa;
import java.util.Locale;
import java.util.Optional;
import java.util.Properties;
import java.util.Set;
@@ -114,9 +115,9 @@ public class ServiceAccountRegistryImpl implements ServiceAccountRegistry, Initi
return;
}
// Ensure the role is in uppercase and has the prefix
role = role.toUpperCase();
role = role.toUpperCase(Locale.ENGLISH);
role = getRoleWithPrefix(role);
if (!PermissionService.SERVICE_ACCOUNT_AUTHORITIES_SET.contains(role))
if (!PermissionService.SVC_AUTHORITIES_SET.contains(role))
{
LOGGER.warn("Invalid service account role '{}'. The role is not recognized.", role);
return;

View File

@@ -156,15 +156,15 @@
</bean>
<bean id="adminServiceAccountAuthority" class="org.alfresco.repo.security.permissions.dynamic.ServiceAccountAuthority"
parent="baseServiceAccountAuthority">
<property name="authority" value="#{T(org.alfresco.service.cmr.security.PermissionService).ADMIN_SERVICE_ACCOUNT_AUTHORITY}"/>
<property name="authority" value="#{T(org.alfresco.service.cmr.security.PermissionService).ADMIN_SVC_AUTHORITY}"/>
</bean>
<bean id="collaboratorServiceAccountAuthority" class="org.alfresco.repo.security.permissions.dynamic.ServiceAccountAuthority"
parent="baseServiceAccountAuthority">
<property name="authority" value="#{T(org.alfresco.service.cmr.security.PermissionService).COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY}"/>
<property name="authority" value="#{T(org.alfresco.service.cmr.security.PermissionService).COLLABORATOR_SVC_AUTHORITY}"/>
</bean>
<bean id="editorServiceAccountAuthority" class="org.alfresco.repo.security.permissions.dynamic.ServiceAccountAuthority"
parent="baseServiceAccountAuthority">
<property name="authority" value="#{T(org.alfresco.service.cmr.security.PermissionService).EDITOR_SERVICE_ACCOUNT_AUTHORITY}"/>
<property name="authority" value="#{T(org.alfresco.service.cmr.security.PermissionService).EDITOR_SVC_AUTHORITY}"/>
</bean>
<!-- =========================== -->

View File

@@ -25,9 +25,9 @@
*/
package org.alfresco.repo.sa;
import static org.alfresco.service.cmr.security.PermissionService.ADMIN_SERVICE_ACCOUNT_AUTHORITY;
import static org.alfresco.service.cmr.security.PermissionService.COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY;
import static org.alfresco.service.cmr.security.PermissionService.EDITOR_SERVICE_ACCOUNT_AUTHORITY;
import static org.alfresco.service.cmr.security.PermissionService.ADMIN_SVC_AUTHORITY;
import static org.alfresco.service.cmr.security.PermissionService.COLLABORATOR_SVC_AUTHORITY;
import static org.alfresco.service.cmr.security.PermissionService.EDITOR_SVC_AUTHORITY;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -71,7 +71,7 @@ public class ServiceAccountRegistryImplTest
@Test
public void testInvalidServiceAccountName()
{
globalProperties.put("serviceaccount.role. ", ADMIN_SERVICE_ACCOUNT_AUTHORITY);
globalProperties.put("serviceaccount.role. ", ADMIN_SVC_AUTHORITY);
assertTrue("Invalid service account name.", serviceAccountService.getServiceAccountNames().isEmpty());
}
@@ -100,43 +100,43 @@ public class ServiceAccountRegistryImplTest
@Test
public void testValidServiceAccount() throws Exception
{
globalProperties.put("serviceaccount.role.testServiceAccount", ADMIN_SERVICE_ACCOUNT_AUTHORITY);
globalProperties.put("serviceaccount.role.testServiceAccount", ADMIN_SVC_AUTHORITY);
serviceAccountService.afterPropertiesSet();
Optional<String> testServiceAccount = serviceAccountService.getServiceAccountRole("testServiceAccount");
assertFalse("The service account role is not empty.", testServiceAccount.isEmpty());
assertEquals(ADMIN_SERVICE_ACCOUNT_AUTHORITY, testServiceAccount.get());
assertEquals(ADMIN_SVC_AUTHORITY, testServiceAccount.get());
assertEquals(1, serviceAccountService.getServiceAccountNames().size());
}
@Test
public void testManyServiceAccounts() throws Exception
{
globalProperties.put("serviceaccount.role.testEditorSA", EDITOR_SERVICE_ACCOUNT_AUTHORITY);
globalProperties.put("serviceaccount.role.testCollaboratorSA", COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY);
globalProperties.put("serviceaccount.role.testAdminSA", ADMIN_SERVICE_ACCOUNT_AUTHORITY);
globalProperties.put("serviceaccount.role.testEditorSA", EDITOR_SVC_AUTHORITY);
globalProperties.put("serviceaccount.role.testCollaboratorSA", COLLABORATOR_SVC_AUTHORITY);
globalProperties.put("serviceaccount.role.testAdminSA", ADMIN_SVC_AUTHORITY);
serviceAccountService.afterPropertiesSet();
assertEquals(3, serviceAccountService.getServiceAccountNames().size());
Optional<String> editorSA = serviceAccountService.getServiceAccountRole("testEditorSA");
assertFalse("The service account role is not empty.", editorSA.isEmpty());
assertEquals(EDITOR_SERVICE_ACCOUNT_AUTHORITY, editorSA.get());
assertEquals(EDITOR_SVC_AUTHORITY, editorSA.get());
Optional<String> collaboratorSA = serviceAccountService.getServiceAccountRole("testCollaboratorSA");
assertFalse("The service account role is not empty.", collaboratorSA.isEmpty());
assertEquals(COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY, collaboratorSA.get());
assertEquals(COLLABORATOR_SVC_AUTHORITY, collaboratorSA.get());
Optional<String> adminSA = serviceAccountService.getServiceAccountRole("testAdminSA");
assertFalse("The service account role is not empty.", adminSA.isEmpty());
assertEquals(ADMIN_SERVICE_ACCOUNT_AUTHORITY, adminSA.get());
assertEquals(ADMIN_SVC_AUTHORITY, adminSA.get());
}
@Test
public void testValidServiceAccountRoleValues() throws Exception
{
globalProperties.put("serviceaccount.role.testEditorSA", "EDITOR_SERVICE_ACCOUNT");
globalProperties.put("serviceaccount.role.testCollaboratorSA", COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY);
globalProperties.put("serviceaccount.role.testCollaboratorSA", COLLABORATOR_SVC_AUTHORITY);
globalProperties.put("serviceaccount.role.testAdminSA", "ADMIN_SERVICE_ACCOUNT");
serviceAccountService.afterPropertiesSet();
@@ -144,14 +144,14 @@ public class ServiceAccountRegistryImplTest
Optional<String> editorSA = serviceAccountService.getServiceAccountRole("testEditorSA");
assertFalse("The service account role is not empty.", editorSA.isEmpty());
assertEquals(EDITOR_SERVICE_ACCOUNT_AUTHORITY, editorSA.get());
assertEquals(EDITOR_SVC_AUTHORITY, editorSA.get());
Optional<String> collaboratorSA = serviceAccountService.getServiceAccountRole("testCollaboratorSA");
assertFalse("The service account role is not empty.", collaboratorSA.isEmpty());
assertEquals(COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY, collaboratorSA.get());
assertEquals(COLLABORATOR_SVC_AUTHORITY, collaboratorSA.get());
Optional<String> adminSA = serviceAccountService.getServiceAccountRole("testAdminSA");
assertFalse("The service account role is not empty.", adminSA.isEmpty());
assertEquals(ADMIN_SERVICE_ACCOUNT_AUTHORITY, adminSA.get());
assertEquals(ADMIN_SVC_AUTHORITY, adminSA.get());
}
}

View File

@@ -66,9 +66,9 @@ import org.springframework.context.ApplicationContext;
* </pre>
* The service account roles that currently supported are:
* <ul>
* <li>{@link PermissionService#EDITOR_SERVICE_ACCOUNT_AUTHORITY}</li>
* <li>{@link PermissionService#COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY}</li>
* <li>{@link PermissionService#ADMIN_SERVICE_ACCOUNT_AUTHORITY}</li>
* <li>{@link PermissionService#EDITOR_SVC_AUTHORITY}</li>
* <li>{@link PermissionService#COLLABORATOR_SVC_AUTHORITY}</li>
* <li>{@link PermissionService#ADMIN_SVC_AUTHORITY}</li>
* </ul>
* The test class relies on the following service accounts defined in the <i>alfresco-global.properties</i> file:
* <ul>
@@ -173,9 +173,9 @@ public class ServiceAccountRoleTest
private static void serviceAccountsShouldExistInGlobalProperties()
{
assertServiceAccountIsDefined(PermissionService.EDITOR_SERVICE_ACCOUNT_AUTHORITY, EDITOR_SA.getUsername());
assertServiceAccountIsDefined(PermissionService.COLLABORATOR_SERVICE_ACCOUNT_AUTHORITY, COLLABORATOR_SA.getUsername());
assertServiceAccountIsDefined(PermissionService.ADMIN_SERVICE_ACCOUNT_AUTHORITY, ADMIN_SA.getUsername());
assertServiceAccountIsDefined(PermissionService.EDITOR_SVC_AUTHORITY, EDITOR_SA.getUsername());
assertServiceAccountIsDefined(PermissionService.COLLABORATOR_SVC_AUTHORITY, COLLABORATOR_SA.getUsername());
assertServiceAccountIsDefined(PermissionService.ADMIN_SVC_AUTHORITY, ADMIN_SA.getUsername());
}
private static void assertServiceAccountIsDefined(String expectedRole, String username)