outposts/ldap: add groupofuniquenames

Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org>
This commit is contained in:
Jens Langhammer 2021-09-26 14:49:11 +02:00
parent 0285b84133
commit 3c256fecc6
1 changed files with 4 additions and 2 deletions

View File

@ -116,6 +116,8 @@ func (pi *ProviderInstance) Search(req SearchRequest) (ldap.ServerSearchResult,
"client": utils.GetIP(req.conn.RemoteAddr()), "client": utils.GetIP(req.conn.RemoteAddr()),
}).Inc() }).Inc()
return ldap.ServerSearchResult{ResultCode: ldap.LDAPResultOperationsError}, fmt.Errorf("Search Error: unhandled filter type: %s [%s]", filterEntity, req.Filter) return ldap.ServerSearchResult{ResultCode: ldap.LDAPResultOperationsError}, fmt.Errorf("Search Error: unhandled filter type: %s [%s]", filterEntity, req.Filter)
case "groupofuniquenames":
fallthrough
case "goauthentik.io/ldap/group": case "goauthentik.io/ldap/group":
fallthrough fallthrough
case "goauthentik.io/ldap/virtual-group": case "goauthentik.io/ldap/virtual-group":
@ -224,9 +226,9 @@ func (pi *ProviderInstance) UserEntry(u api.User) *ldap.Entry {
func (pi *ProviderInstance) GroupEntry(g LDAPGroup) *ldap.Entry { func (pi *ProviderInstance) GroupEntry(g LDAPGroup) *ldap.Entry {
attrs := AKAttrsToLDAP(g.akAttributes) attrs := AKAttrsToLDAP(g.akAttributes)
objectClass := []string{GroupObjectClass, "goauthentik.io/ldap/group"} objectClass := []string{GroupObjectClass, "groupofuniquenames", "goauthentik.io/ldap/group"}
if g.isVirtualGroup { if g.isVirtualGroup {
objectClass = []string{GroupObjectClass, "goauthentik.io/ldap/group", "goauthentik.io/ldap/virtual-group"} objectClass = append(objectClass, "goauthentik.io/ldap/virtual-group")
} }
attrs = pi.ensureAttributes(attrs, map[string][]string{ attrs = pi.ensureAttributes(attrs, map[string][]string{