No description
Find a file
github-actions[bot] 1382bee32f
Merge pull request #947 from nextcloud/dependabot/npm_and_yarn/nextcloud/dialogs-7.2.0
chore(deps): Bump @nextcloud/dialogs from 7.1.0 to 7.2.0
2025-12-20 03:22:24 +00:00
.github ci: update all workflow templates from organization template repository 2025-11-15 10:00:34 +00:00
.tx [tx-robot] Update transifex configuration 2022-10-01 03:04:56 +00:00
appinfo feat(deps): Add Nextcloud 33 support 2025-09-04 13:02:39 +02:00
cypress ci(cypress): Ignore some errors in cypress like other apps do 2025-12-01 12:25:29 +01:00
docs docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
l10n fix(l10n): Update translations from Transifex 2025-12-09 01:50:37 +00:00
lib fix(backend): Migrate to app config and dispatcher events 2025-09-01 10:42:04 +02:00
LICENSES ci(reuse): Add reuse check 2024-10-02 20:10:39 +02:00
src refactor: migrate to @nextcloud/vue 9 compatible API 2025-11-20 00:44:46 +01:00
templates/settings fix: Use compact license and constructor 2024-07-30 11:31:59 +02:00
tests fix: Update psalm level 2025-10-13 08:39:46 +02:00
vendor-bin chore(deps-dev): Bump vimeo/psalm in /vendor-bin/psalm 2025-12-13 02:16:51 +00:00
.eslintrc.js docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
.gitattributes docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
.gitignore ci: Update PHPUnit to 10 2025-06-05 12:11:34 +02:00
.l10nignore docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
.php-cs-fixer.dist.php ci: Introduce composer bin for better PHP 8.4 dependency handling 2025-01-15 17:00:34 +01:00
AUTHORS.md fix: avoid disabling user again when re-enabled... 2025-06-05 10:57:22 +02:00
babel.config.js docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
CHANGELOG.md chore(release): Release v1.15.0 2025-09-01 14:44:26 +02:00
composer.json ci: Update psalm to 6.12 2025-06-05 12:11:35 +02:00
composer.lock chore(dev-deps): Bump nextcloud/ocp package 2025-12-07 02:48:39 +00:00
cypress.config.js docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
Makefile build: Adjust exclude list 2025-01-16 10:43:22 +01:00
package-lock.json chore(deps): Bump @nextcloud/dialogs from 7.1.0 to 7.2.0 2025-12-20 02:03:26 +00:00
package.json chore(deps): Bump @nextcloud/dialogs from 7.1.0 to 7.2.0 2025-12-20 02:03:26 +00:00
psalm.xml fix: Update psalm level 2025-10-13 08:39:46 +02:00
README.md fixup: add types to docs 2025-10-29 10:29:37 +01:00
REUSE.toml ci: Introduce composer bin for better PHP 8.4 dependency handling 2025-01-15 17:00:34 +01:00
stylelint.config.js docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00
webpack.js docs(spdx): Add SPDX header 2024-10-02 20:09:57 +02:00

👤🗑 Account retention (formerly User retention)

REUSE status

Accounts are disabled or deleted when they did not log in within the given number of days. In case of deletion, this will also delete all files and other data associated with the account.

  • 🛂 Different retention possible for normal accounts and accounts of the guests app
  • Exclude accounts based on group memberships (default: admin group)
  • 🔑 Exclude accounts that never logged in (default: enabled)

As an administrator, click on your user icon, then navigate to Administration Settings -> Basic settings -> Account retention.

Screenshot of the admin settings

Configuration options

There are a few configuration options to be aware of, which can be set and retrieved via the occ command.

For example, to disable users after 10 days of inactivity:

occ config:app:set user_retention user_days_disable --type=integer --value=10
Configuration key Type Default value Description
user_days_disable integer 0 If greater than 0, disables users who have been inactive for the specified number of days.
user_days integer 0 If greater than 0, deletes users who have been inactive for the specified number of days.
guest_days_disable integer 0 If greater than 0, disables guest users who have been inactive for the specified number of days.
guest_days integer 0 If greater than 0, deletes guest users who have been inactive for the specified number of days.
reminder_days string '' (empty value) Comma-separated list of days before which reminder emails are sent about upcoming deactivation or deletion.
keep_users_without_login boolean yes When set to yes, preserves users who have never logged in.
excluded_groups array ["admin"] List of groups whose members are excluded from deactivation and deletion policies.

Further examples

🔐 Accounts that never logged in

By default, accounts that have never logged in at all, will be spared from removal.

In this case the number of days will start counting from the day on which the account has been seen for the first time by the app (first run of the background job after the account was created).

Example

Retention set to 30 days:

Account created Account logged in keep_users_without_login Cleaned up after
7th June 14th June yes/default 14th July
7th June 14th June no 14th July
7th June - yes/default -
7th June - no 7th July

📬 Sending reminders

It is also possible to send an email reminder to accounts (when an email is configured). To send a reminder 14 days after the last activity:

occ config:app:set user_retention reminder_days --value='14'

You can also provide multiple reminder days as a comma separated list:

occ config:app:set user_retention reminder_days --value='14,21,28'

Note: There is no validation of the reminder days against the retention days.