From 7a90b8b41e3e4f2557d44007b3baa77e67af182c Mon Sep 17 00:00:00 2001 From: Jason Han Date: Wed, 31 Aug 2022 15:15:55 -0700 Subject: [PATCH 1/4] Update fix permissions object action --- permissions/README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/permissions/README.rst b/permissions/README.rst index 99701c60b..932e0c3a6 100644 --- a/permissions/README.rst +++ b/permissions/README.rst @@ -52,7 +52,7 @@ Permissions acceptable values { "users / groups": { - "action": "ADD / REMOVE", + "action": "MODIFY / REPLACE / REMOVE", "permissions": [ { "name": "USERNAME", From 71a662bd1f796db32b3746ff7cedb77f93a299af Mon Sep 17 00:00:00 2001 From: Doris Lam Date: Tue, 13 Sep 2022 13:52:58 -0700 Subject: [PATCH 2/4] support multiple userDnPatterns, use ; as delimiter --- .../java/org/openmbee/mms/ldap/LdapSecurityConfig.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ldap/src/main/java/org/openmbee/mms/ldap/LdapSecurityConfig.java b/ldap/src/main/java/org/openmbee/mms/ldap/LdapSecurityConfig.java index 8f0adc6f4..2f798a260 100644 --- a/ldap/src/main/java/org/openmbee/mms/ldap/LdapSecurityConfig.java +++ b/ldap/src/main/java/org/openmbee/mms/ldap/LdapSecurityConfig.java @@ -48,8 +48,8 @@ public class LdapSecurityConfig { @Value("${ldap.provider.base:#{null}}") private String providerBase; - @Value("${ldap.user.dn.pattern:uid={0}}") - private String userDnPattern; + @Value("#{'${ldap.user.dn.pattern:uid={0}}'.split(';')}") + private List userDnPattern; @Value("${ldap.user.attributes.username:uid}") private String userAttributesUsername; @@ -99,7 +99,8 @@ public void configureLdapAuth(AuthenticationManagerBuilder auth, We redefine our own LdapAuthoritiesPopulator which need ContextSource(). We need to delegate the creation of the contextSource out of the builder-configuration. */ - auth.ldapAuthentication().userDnPatterns(userDnPattern).groupSearchBase(groupSearchBase) + String[] a = userDnPattern.toArray(new String[0]); + auth.ldapAuthentication().userDnPatterns(a).groupSearchBase(groupSearchBase) .groupRoleAttribute(groupRoleAttribute).groupSearchFilter(groupSearchFilter) .rolePrefix("") .ldapAuthoritiesPopulator(ldapAuthoritiesPopulator) From 691678cb7c0309ac247ac8c71095a5cf91653f5b Mon Sep 17 00:00:00 2001 From: Doris Lam Date: Wed, 14 Sep 2022 11:14:13 -0700 Subject: [PATCH 3/4] return element json if artifact mime type not found --- .../artifacts/service/DefaultArtifactService.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/artifacts/src/main/java/org/openmbee/mms/artifacts/service/DefaultArtifactService.java b/artifacts/src/main/java/org/openmbee/mms/artifacts/service/DefaultArtifactService.java index 3a1c0f094..5c4aae384 100644 --- a/artifacts/src/main/java/org/openmbee/mms/artifacts/service/DefaultArtifactService.java +++ b/artifacts/src/main/java/org/openmbee/mms/artifacts/service/DefaultArtifactService.java @@ -52,7 +52,7 @@ public ArtifactResponse get(String projectId, String refId, String id, Map artifacts = ArtifactJson.getArtifacts(elementJson); - ArtifactJson artifact = getExistingArtifact(artifacts, params); + ArtifactJson artifact = getExistingArtifact(artifacts, params, elementJson); artifacts.remove(artifact); ArtifactJson.setArtifacts(elementJson, artifacts); ElementsRequest elementsRequest = new ElementsRequest(); @@ -124,7 +124,7 @@ private ElementJson attachOrUpdateArtifact(ElementJson elementJson, String artif List artifacts = ArtifactJson.getArtifacts(elementJson); ArtifactJson artifact; try { - artifact = getExistingArtifact(artifacts, mimeType, null); + artifact = getExistingArtifact(artifacts, mimeType, null, elementJson); } catch(NotFoundException ex) { artifact = new ArtifactJson(); artifacts.add(artifact); @@ -140,11 +140,11 @@ private ElementJson attachOrUpdateArtifact(ElementJson elementJson, String artif return elementJson; } - private ArtifactJson getExistingArtifact(List artifacts, Map params) { - return getExistingArtifact(artifacts, params.get(ArtifactConstants.MIMETYPE_PARAM), params.get(ArtifactConstants.EXTENSION_PARAM)); + private ArtifactJson getExistingArtifact(List artifacts, Map params, ElementJson element) { + return getExistingArtifact(artifacts, params.get(ArtifactConstants.MIMETYPE_PARAM), params.get(ArtifactConstants.EXTENSION_PARAM), element); } - private ArtifactJson getExistingArtifact(List artifacts, String mimeType, String extension) { + private ArtifactJson getExistingArtifact(List artifacts, String mimeType, String extension, ElementJson element) { if(mimeType == null && extension == null) { throw new BadRequestException("Missing mimetype or extension"); } @@ -155,7 +155,7 @@ private ArtifactJson getExistingArtifact(List artifacts, String mi if(existing.isPresent()) { return existing.get(); } - throw new NotFoundException("Artifact not found"); + throw new NotFoundException(element); } private String getFileExtension(MultipartFile file) { From 66a7cf0d77923544d51d1a74ebdad15447f5afa4 Mon Sep 17 00:00:00 2001 From: Jason Han Date: Fri, 16 Sep 2022 09:50:15 -0700 Subject: [PATCH 4/4] Bump version for release --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 6c5dbbab5..2d386856d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ -version=4.0.9 +version=4.0.10 group=org.openmbee.mms springBootVersion=2.6.7