[MGNLLDAP-87] Add possibility to retrieve all users having assigned a certain group or role Created: 05/Dec/14  Updated: 30/Jan/17  Resolved: 16/Jan/17

Status: Closed
Project: LDAP Connector
Component/s: None
Affects Version/s: 1.6.3
Fix Version/s: 1.8

Type: Improvement Priority: Neutral
Reporter: Daniel Lipp Assignee: Milan Divilek
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
dependency
depends upon MAGNOLIA-6010 Add possibility to retrieve all users... Closed
relation
is related to MAGNOLIA-6906 Avoid calling #getAllUser several tim... Closed
is related to MGNLLDAP-98 Add basic cache for LDAP/ADUserManager Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Release notes required:
Yes
Documentation update required:
Yes
Date of First Response:
Sprint: Kromeriz 79
Story Points: 13

 Description   

With MAGNOLIA-6010 we added those possibilities to the jcr implementation of UserManager in order to speed up those operations where till now we had to retrieve all users first and only then filter for those having a certain group or role assigned. In order to be backwards compatible ExtendedUserManager implements the new methods as well by delegating to getAllUsers() and doing the filtering himself now. For the case of LDAP we could speed up those operations a lot by providing dedicated implementations for #getUsersWithGroup() and #getUsersWithRole()



 Comments   
Comment by Milan Divilek [ 19/Jan/17 ]

List of API changes:

[ERROR] 7004: info.magnolia.jaas.sp.ldap.LDAPUserManager: In method 'protected void populateUsersList(javax.naming.NamingEnumeration, java.util.Collection, java.util.Properties)' the number of arguments has changed
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.ADGroupResolver: Method 'public void extractGroupNames()' has been removed
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.ADGroupResolver: Method 'public java.util.Set getNames()' has been removed
[ERROR] 7005: info.magnolia.jaas.sp.ldap.resolver.ADGroupResolver: Parameter 2 of 'public void init(javax.naming.directory.DirContext, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has changed its type to java.util.Properties
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.ADGroupResolver: Method 'public void init(javax.naming.directory.DirContext, java.util.Properties, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has been removed
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.ADGroupResolver: Method 'protected void parseGroupString(java.lang.String)' has been removed
[ERROR] 6001: info.magnolia.jaas.sp.ldap.resolver.AbstractMagnoliaResolver: Removed field groupNames
[ERROR] 6001: info.magnolia.jaas.sp.ldap.resolver.AbstractMagnoliaResolver: Removed field userId
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.AbstractMagnoliaResolver: Method 'public java.util.Set getNames()' has been removed
[ERROR] 7005: info.magnolia.jaas.sp.ldap.resolver.AbstractMagnoliaResolver: Parameter 2 of 'public void init(javax.naming.directory.DirContext, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has changed its type to java.util.Properties
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.AbstractMagnoliaResolver: Method 'public void init(javax.naming.directory.DirContext, java.util.Properties, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has been removed
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.MagnoliaGroupResolver: Method 'public java.util.Set getNames()' has been removed
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.MagnoliaRoleResolver: Method 'public java.util.Set getNames()' has been removed
[ERROR] 7012: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Method 'public java.util.Collection getGroups(java.lang.String)' has been added to an interface
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Method 'public java.util.Set getNames()' has been removed
[ERROR] 7012: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Method 'public java.util.Collection getRoles(java.lang.String)' has been added to an interface
[ERROR] 7012: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Method 'public java.util.Collection getUsersWithGroup(java.lang.String)' has been added to an interface
[ERROR] 7012: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Method 'public java.util.Collection getUsersWithRole(java.lang.String)' has been added to an interface
[ERROR] 7005: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Parameter 2 of 'public void init(javax.naming.directory.DirContext, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has changed its type to java.util.Properties
[ERROR] 7004: info.magnolia.jaas.sp.ldap.resolver.NameResolver: In method 'public void init(javax.naming.directory.DirContext, java.util.Properties, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' the number of arguments has changed
[ERROR] 7012: info.magnolia.jaas.sp.ldap.resolver.NameResolver: Method 'public void init(javax.naming.directory.DirContext, java.util.Properties)' has been added to an interface
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.OpenLDAPGroupResolver: Method 'protected java.util.Set extractNames()' has been removed
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.OpenLDAPGroupResolver: Method 'public java.util.Set getNames()' has been removed
[ERROR] 7005: info.magnolia.jaas.sp.ldap.resolver.OpenLDAPGroupResolver: Parameter 2 of 'public void init(javax.naming.directory.DirContext, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has changed its type to java.util.Properties
[ERROR] 7002: info.magnolia.jaas.sp.ldap.resolver.OpenLDAPGroupResolver: Method 'public void init(javax.naming.directory.DirContext, java.util.Properties, java.lang.String, info.magnolia.jaas.sp.ldap.AttributeMap)' has been removed
Generated at Mon Feb 12 02:21:26 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.