https://bugs.openldap.org/show_bug.cgi?id=9805
Issue ID: 9805
Summary: member attributes managed by autogroup are lost when
user attributes are adjusted
Product: OpenLDAP
Version: 2.4.59
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: contrib
Assignee: bugs(a)openldap.org
Reporter: michael.bobzin(a)baloise.ch
Target Milestone: ---
Hello OpenLDAP Team,
we use nested groups in our OpenLDAP directory.
User X is a member of group A.
Group A is a member of group B.
User X is therefore also a member of group B.
To be able to find out all groups of user X with only one LDAP query
we use the dynlist overlay together with the autogroup overlay.
Group B is a dynamic group whose member attributes are set with autogroup,
to allow a search for members.
ldapsearch .. -s sub -b "ou=groups,dc=basler,dc=ch"
"(member=cn=userx,ou=users,dc=basler,dc=ch)" dn
Result:
cn=groupA,ou=groups,dc=basler,dc=ch
cn=groupB,ou=groups,dc=basler,dc=ch
----- Gruppe A ----------------------------------------------------------
dn: cn=groupA,ou=groups,dc=basler,dc=ch
cn: groupA
objectClass: top
objectClass: groupOfNames
member:cn=userX,ou=users,dc=basler,dc=ch
----- Gruppe B ----------------------------------------------------------
dn: cn=groupB,ou=groups,dc=basler,dc=ch
cn: groupB
objectClass: top
objectClass: groupOfURLs
memberURL: ldap:///ou=groups,dc=basler,dc=ch?member?one?(cn=groupA)
# managed by autogroup
member:cn=userX,ou=users,dc=basler,dc=ch
-----------------------------------------------------------------------
This works until any attribute in the userX object is changed.
The member attribute for userX created dynamically by autogroup is then deleted
from groupB although userX is still a member of groupA and is therefore matched
with the search in the memberURL attribute of groupB matched.
The expected behaviour would be that the member attribute in groupB remains
unchanged.
----------- configuration --------------------------
OpenLDAP 2.4.59 from https://www.ltb-project.org/download.html
--------------- slapd.conf -------------------------
...
moduleload dynlist
moduleload autogroup.so
...
include /usr/local/openldap/etc/openldap/local-schema/dyngroup.schema
...
overlay dynlist
dynlist-attrset groupOfURLs memberURL
overlay autogroup
autogroup-attrset groupOfURLs memberURL member
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=5840
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |VERIFIED
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=5840
Howard Chu <hyc(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |DUPLICATE
--- Comment #12 from Howard Chu <hyc(a)openldap.org> ---
(In reply to OndÅ™ej KuznÃk from comment #11)
> Is this resolved with ITS#8958?
Yes
*** This issue has been marked as a duplicate of issue 8958 ***
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=8958
Howard Chu <hyc(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ralf(a)openldap.org
--- Comment #42 from Howard Chu <hyc(a)openldap.org> ---
*** Issue 5840 has been marked as a duplicate of this issue. ***
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=5840
--- Comment #11 from OndÅ™ej KuznÃk <ondra(a)mistotebe.net> ---
Is this resolved with ITS#8958?
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=9798
Issue ID: 9798
Summary: Clearing pending ops on Bind
Product: OpenLDAP
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: slapd
Assignee: bugs(a)openldap.org
Reporter: ondra(a)mistotebe.net
Target Milestone: ---
Some context first.
The only universal way of reset an arbitrary (SASL) bind in progress, at least
in my reading of RFC4511 is to send an anonymous bind op, so that's what the
load balancer does when needed (the client goes away, etc.).
Incidentally, this is also what the balancer chooses to do when the pending
bind needs to be "abandoned" when the backend doesn't respond within a
configured timeout. That's skating the edge of what RFC4511 allows, probably
just past it.
The issue:
When slapd receives a bind and another operation X (lloadd sends the above
mentioned "reset" bind) before that first bind starts processing, X gets added
into conn->c_ops_pending and does c_n_pending_ops++. Bind then eventually
invokes connection_abandon which forgets to zero out c_n_pending_ops and the
connection remains unusable forever. On the surface that's trivial to fix and a
fix is coming.
On the other hand, operation X in the pending list is actually discarded too,
so that kind of defeats the idea of trying to "abandon" the original bind and
completely reset the connection state. Question is, do we want to retain the
last bind in the pending list or does the balancer have to destroy the
connection unconditionally when a bind times out?
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=8524
--- Comment #3 from OndÅ™ej KuznÃk <ondra(a)mistotebe.net> ---
Just like with attribute and objectclass definitions, these are stored under
cn=schema,cn=config as the file that defined them or directly in cn=config if
defined in slapd.conf directly (as you're doing here). Maybe keep them in a
file that you also include.
Don't know if we should document this behaviour or change it in some way.
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=7441
--- Comment #2 from OndÅ™ej KuznÃk <ondra(a)mistotebe.net> ---
The inconsistency part comes from bconfig not implementing be_compare. Instead,
it relies on the frontend implementation, so while search goes through
test_filter->...->ordered_value_match and other backends use slap_compare_entry
which triggers the same, frontend's compare gets the actual values through
backend_attribute and then calls value_find_ex, which doesn't care about
SLAP_AT_ORDERED.
Afterwards, allowing attr={index} assertions to match attr={index}value and
attr={index}value to match itself only should be possible by adapting
ordered_value_match (and value_find_ex or whatever we end up calling from the
frontend).
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=9800
Issue ID: 9800
Summary: ACL with set.expand in <who> clause does not work with
deref control
Product: OpenLDAP
Version: 2.6.1
Hardware: All
OS: All
Status: UNCONFIRMED
Keywords: needs_review
Severity: normal
Priority: ---
Component: slapd
Assignee: bugs(a)openldap.org
Reporter: michael(a)stroeder.com
Target Milestone: ---
This ACL returns correct values with a normal search requesting the attribute
sudoUser:
access to
dn.subtree="ou=ae-dir"
attrs=sudoUser
val.regex="^%(.+)$"
by set.expand="(user/-1 | user/aeSrvGroup)/aeLoginGroups &
[ldap:///ou=ae-dir?entryDN?sub?(&(objectClass=aeGroup)(aeStatus=0)(cn=${v1}))]/entryDN"
read
by * none
But it does not work with a search like this using deref control:
ldapsearch -Q -E deref=aeVisibleSudoers:cn,sudoUser '(objectClass=aeSrvGroup)'
For completeness see docs and schema for aeSrvGroup:
https://www.ae-dir.com/docs.html#schema-oc-aeSrvGrouphttps://code.stroeder.com/AE-DIR/ansible-ae-dir-server/src/branch/master/fi…
--
You are receiving this mail because:
You are on the CC list for the issue.
https://bugs.openldap.org/show_bug.cgi?id=7335
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|2.6.2 |2.7.0
Assignee|hyc(a)openldap.org |bugs(a)openldap.org
--
You are receiving this mail because:
You are on the CC list for the issue.