镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

[Bug]: Deleted ldap account is not listed in disabled users with markRemnantsAsDisabled = 1 #50165

Open

Description

@kesselb

Bug description

Deleted ldap account is not listed in disabled users with markRemnantsAsDisabled = 1

Steps to reproduce

  1. Have an LDAP confguration
  2. Modify the config per cli: occ ldap:set-config s01 markRemnantsAsDisabled 1
  3. Delete a users on LDAP
  4. Ensure the user is known as deleted: occ ldap:check-user $USERID
  5. Open the user management and select "disabled users"

Expected behavior

The user should appear there ;)

Nextcloud Server version

28

Additional info

  1. Weird implementation of the markRemnantsAsDisabled flag

if ((int)$this->getAccess(array_key_first($this->backends) ?? '')->connection->markRemnantsAsDisabled !== 1) {
return [];
}

It's possible to have more than one ldap backend. The above code seems to check if the first ldap connection have the flag set. It should take all backends into account.

Likely resolved by #46992.

  1. Wrong enable state for ldap remnants

stable28:

$data['enabled'] = $this->config->getUserValue($targetUserObject->getUID(), 'core', 'enabled', 'true') === 'true';

master:

$data['enabled'] = $this->config->getUserValue($targetUserObject->getUID(), 'core', 'enabled', 'true') === 'true';

The controller reads the disable state from the oc_preferences table. That does not take the disabled state for ldap remnants into account.

Apparently the users are returned by the endpoint, but filtered out by the frontend because they have enabled = true. Using $data['enabled'] = $targetUserObject->isEnabled(); makes it work. However there are some menu options, like enable user, that needs to be hidden for ldap remnants.

Activity

  1. joshtrichards commented on Jan 13, 2025

    @joshtrichards
    Member

    Related to #46992?

  2. kesselb commented on Jan 13, 2025

    @kesselb
    ContributorAuthor

    Related to #46992?

    Yep, thank you 👍

  3. added theissue type on Aug 26, 2025
  4. moved this from Backlog to Triaged in 🧑‍🤝‍🧑 Community triageon Aug 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions