Commit graph

3193 commits

Author SHA1 Message Date
Côme Chilliet
4a4f250a2b
Merge pull request #31696 from nextcloud/fix/user_ldap-fix-migration-lengthcheck-oracle
Use getLengthExpression to measure field length instead of like
2022-03-29 09:38:21 +02:00
Nextcloud bot
c407bb9786
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-03-25 02:44:41 +00:00
Côme Chilliet
efebbacca4 Add octetLength and charLength to function builder, and tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 20:35:02 +00:00
Côme Chilliet
7dc3eb1e9e Use getLengthExpression to measure field length instead of like
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-24 20:35:02 +00:00
Arthur Schiwon
4656753df0
do not forget DB table prefix with truncate query
- as used in LDAP's AbstractMapping::clear() method
- and in Comment's ManagerTest::setUp()
- fixes a DB Exception with Oracle

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-03-18 16:59:46 +01:00
Côme Chilliet
475a859aae
Merge pull request #31421 from nextcloud/fix/user_ldap-fix-ldap-connection-resets
user_ldap fix ldap connection resets
2022-03-17 09:13:44 +01:00
Carl Schwan
371fa1c49a
Merge pull request #31542 from nextcloud/psalm-userCounts
Fix psalm issue about userCounts
2022-03-14 11:27:43 +01:00
Carl Schwan
1bf5ab35a8 Use "use" to import namespaces
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-03-14 09:35:01 +01:00
Carl Schwan
8d7380a15d Fix psalm issue about userCounts
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-03-11 14:17:29 +01:00
Côme Chilliet
ccab35f23f
Fix similar potential problems with fetchOne loops
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-08 12:10:52 +01:00
Côme Chilliet
65a866556b
Fix duplicated UUID detection when there are empty uuids
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-08 11:57:33 +01:00
Côme Chilliet
df29acb343
Set $limit as int as well in Access::count private method
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-08 10:21:54 +01:00
Arthur Schiwon
16b6504cc6
code style
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-03-03 21:32:54 +01:00
Arthur Schiwon
f3668f2748
be conservative when reading from fresh created column
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-03-03 21:26:18 +01:00
Côme Chilliet
dab5ea958a
Fix unit tests
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-03 16:35:06 +01:00
Côme Chilliet
0c5bd588ed
Fix types in OCA\User_LDAP\Configuration
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-03 11:53:50 +01:00
Côme Chilliet
e80eb79a1e
Remove redundant is_array check
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-03 11:41:59 +01:00
Côme Chilliet
fb63484ced
Improve typing in user_ldap to detect problems early
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-03 11:12:09 +01:00
Côme Chilliet
8349530fb4
Fix executeRead when connection is reset because of a timeout
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-03-03 10:24:07 +01:00
Nextcloud bot
2f4a675caf
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-02-25 02:27:19 +00:00
Nextcloud bot
6da8a6d62a
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-02-24 02:26:36 +00:00
Nextcloud bot
67f192e906
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-02-22 02:29:25 +00:00
Côme Chilliet
44680b5c3b
Make it explicit that a DN can be used for ldap:check-user
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-17 10:00:25 +01:00
Côme Chilliet
a6ad06f940
Improve typing in apps/user_ldap/lib/Command/CheckUser.php
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-17 09:58:51 +01:00
Côme Chilliet
a4f96c18e9
Remove parenthesis around return in apps/user_ldap/lib/Command/CheckUser.php
Co-authored-by: Carl Schwan <carl@carlschwan.eu>

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-17 09:58:51 +01:00
Côme Chilliet
75ce9a4832
Fix ldap:check-user method for newly created LDAP users
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-17 09:58:28 +01:00
Louis Chemineau
95478ad9e2 Fix script loading in ldap's settings
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-02-14 16:56:55 +01:00
Nextcloud bot
a615d15046
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-02-13 02:26:57 +00:00
Vincent Petry
cd1bf94181
Merge pull request #31073 from nextcloud/fix/user_ldap-fix-access-typing
Improve typing in OCA\User_LDAP\Access and reduce psalm errors
2022-02-10 17:53:58 +01:00
Côme Chilliet
bcfe99cc62
Fix psalm errors in apps/user_ldap/lib/Jobs/CleanUp.php
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-10 10:15:00 +01:00
Côme Chilliet
9f2db6e65d
Fix ldap:update-uuid
Generators cannot be iterated with while or returned by an other
 generator, using foreach instead.
And a few other problems.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-10 10:15:00 +01:00
Arthur Schiwon
45d4c0bf66
add occ command to update UUIDs (incomplete)
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-02-10 10:14:59 +01:00
Arthur Schiwon
601ce05dab
allow to re-run migration step when backup DB is already created
- to heal incomplete states from broken upgrades

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-02-10 10:14:59 +01:00
Arthur Schiwon
71fb44953e
invalidated duplicated UUIDs prior to migration change
- in a proper setup there are no duplicated UUIDs
- not all setups are proper
- log warning to admin

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-02-10 10:14:58 +01:00
Côme Chilliet
77add404b1
Remove mixed type not available in PHP 7.4
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-08 14:32:23 +01:00
Côme Chilliet
5f65d5a58d
Add a comment explaining how Helper::loginName2UserName can work
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-08 14:25:09 +01:00
Côme Chilliet
2a0b2250d2
Improve typing in OCA\User_LDAP\Access and reduce psalm errors
This should avoid some PHP warning using PHP 8.1
 and help detecting type trouble early in the future.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-02-08 14:21:16 +01:00
Arthur Schiwon
2bf57cbab8
fix overwriting of SUCCESS and INVALID consts
- already defined in Symfony\Component\Console\Command\Command

Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2022-02-03 23:12:51 +01:00
Nextcloud bot
e32090f44f
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-02-02 02:27:10 +00:00
Nextcloud bot
9f489422b4
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-01-22 02:26:35 +00:00
Côme Chilliet
843b20c4e8
Remove useless indexes with duplicated names on backup table
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-01-13 17:21:26 +01:00
Joas Schilling
61c261b1e7
Update autoloader
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-01-13 14:22:30 +01:00
Côme Chilliet
7e4e919408
Fix user_ldap migration for long DNs support
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-01-13 14:06:59 +01:00
Côme Chilliet
23845755f2
Move duplicated code to a base class for group_mapping migrations
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Co-authored-by: Joas Schilling <213943+nickvergessen@users.noreply.github.com>
2022-01-13 14:06:59 +01:00
Côme Chilliet
d4cabf8a84
Split dropTable and createTable in two migrations
It is not possible to drop and create the same table in one migration

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-01-13 14:06:58 +01:00
Côme Chilliet
e64e08ecac
Fix primary key change in user_ldap migration
Use a backup table to copy the data, drop table and recreate it with
 correct primary key, then copy the data back and drop the backup table.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-01-13 14:06:58 +01:00
Carl Schwan
89d109a4d9
Merge pull request #30508 from nextcloud/fix/psaml-bin
Fix psalm not running
2022-01-13 09:51:04 +01:00
Nextcloud bot
094fbb9c0d
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-01-13 02:26:35 +00:00
Carl Schwan
aeecb72e96
Fix a few psalm issues and moved back to psalm/phar 4.18
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-01-12 20:03:06 +01:00
Louis
2e1491771e
Merge pull request #30572 from nextcloud/fix/lint_warnings
Fix lint warnings
2022-01-12 15:48:36 +01:00
Louis Chemineau
14e57bf70a Replace license information to SPDX expression
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-01-11 17:26:40 +01:00
Louis Chemineau
9fc6cc9634 Add generic type and description when its missing
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-01-11 17:13:04 +01:00
Louis Chemineau
d92cbf5149 Typing corrections
Signed-off-by: Louis Chemineau <louis@chmn.me>
2022-01-11 17:12:55 +01:00
rakekniven
2f6c7b68ab Removed obselete language files - Pt. II
For these files there are no associated languages setup at Transifex.

Fix for #30501

Related to nextcloud/docker-ci#341

Signed-off-by: rakekniven <2069590+rakekniven@users.noreply.github.com>
2022-01-10 14:07:14 +01:00
rakekniven
a47d23c1e4 Removed obselete language files
Those files are remnants of old languages after renaming, mapping or deleting.

Fix for #30501

Related to https://github.com/nextcloud/docker-ci/issues/341
2022-01-09 22:01:52 +01:00
Nextcloud bot
a781133437
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-01-07 02:28:02 +00:00
Côme Chilliet
59862f7175
Improve ldap:test-config occ command
Test a search on the base, as the settings wizard is doing.
This is to avoid the wizard saying the base is wrong and the command
 saying everything is fine.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2022-01-04 12:17:58 +01:00
Nextcloud bot
8057615ce7
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-01-03 02:27:36 +00:00
Nextcloud bot
e027d2bec6
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-12-27 02:27:18 +00:00
John Molakvoæ
c0cfd237ab
Merge pull request #30299 from nextcloud/fix/log_files 2021-12-20 17:27:05 +01:00
Carl Schwan
52760a95d9
Check if directoy is writable instead of possibly missing file
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-12-20 15:36:52 +01:00
John Molakvoæ
b5ae67ac2a
Merge pull request #29329 from nextcloud/fix/noid/groups-unwarranted-members 2021-12-20 10:07:55 +01:00
Côme Chilliet
743267eba4
Fix LDAP related docblocks types
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-12-16 09:43:31 +01:00
Côme Chilliet
f3dcbfe146
Fix PHP 8.1 support for user_ldap application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-12-16 09:43:30 +01:00
Nextcloud bot
f567f6afae
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-12-16 02:27:47 +00:00
Côme Chilliet
78a59c12fc
Bump user_ldap version to make sure the migration runs
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-12-09 17:42:44 +01:00
Côme Chilliet
57fda4414f
Add missing copyright headers in migration steps
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-12-09 17:42:17 +01:00
John Molakvoæ
2e869fd215
Merge pull request #29523 from nextcloud/fix/support-ldap-long-dns 2021-12-09 17:18:43 +01:00
Nextcloud bot
0e665e0646
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-12-08 02:28:44 +00:00
Joas Schilling
168c673755
Allow to log DB, redis and LDAP requests into files
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-12-01 22:33:41 +01:00
blizzz
84e47fb484
Merge pull request #29470 from nextcloud/fix/translit-php8
Avoid use of iconv to get rid of unicode
2021-11-29 11:37:19 +01:00
Nextcloud bot
c9f96253d6
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-27 02:25:46 +00:00
Julius Härtl
388fa06695
Merge pull request #29837 from nextcloud/fix/user_ldap-check-cache 2021-11-25 16:33:52 +01:00
Nextcloud bot
9d6496a999
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-24 02:25:52 +00:00
Côme Chilliet
20dd46fcae
Merge pull request #29610 from nextcloud/fix/user_ldap-logger
Get rid of user_ldap LogWrapper and use LoggerInterface
2021-11-23 15:26:25 +01:00
Côme Chilliet
7ac895e766
Move back logger to protected in OCA\User_LDAP\User\User
It was changed to private because of a bad copy/paste.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 11:06:14 +01:00
Côme Chilliet
f932766acf
Check LDAP upon user deletion instead of refusing based on cached information
This should avoid having to wait for background job to run after
 deleting a user in LDAP before being able to delete it in Nextcloud.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 10:59:13 +01:00
Côme Chilliet
a35904749f
Use clearer names for variables
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:31 +01:00
Côme Chilliet
514324916b
Add an index for directory_uuid as well
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:30 +01:00
Côme Chilliet
df25a6de31
Make sure that hash function returns a string
The documentation says it can return false, and even if that is highly
 unlikely for sha256, better safe than sorry.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:30 +01:00
Côme Chilliet
14f00208e2
Add the columns and alter the index in Version1010Date20200630192842
This is to ensure new installations do not need to go through migration
 history.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:30 +01:00
Côme Chilliet
c4d8bd9c05
Fixes in migration step
We cannot set ldap_dn_hash column as notnull because it is empty for
 existing users before postSchemaChange is called

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:29 +01:00
Côme Chilliet
d4c49a3a60
Put back length check to have a clear error
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:29 +01:00
Côme Chilliet
ce5192a461
Fixed migration step for user_ldap
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:20:29 +01:00
Joas Schilling
9a1df9ddca
Fix variable names
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-23 09:19:50 +01:00
Côme Chilliet
31a503b387
Change column names to ldap_dn and ldap_dn_hash and add migration
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:19:50 +01:00
Côme Chilliet
662e3240b0
Support LDAP dns longer than 255 characters
Adds an ldap_full_dn column to store the dn, and only store a sha256
 hash in the ldap_dn which is shorter and can be indexed without
 trouble.
Migration still needs to be implemented.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:19:49 +01:00
Côme Chilliet
480056de88
Fix sanitizing regex and add a test case for uppercase in username
I did not find any test data that would fail with the previous regex,
 but still added data with uppercase to at least test that.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-23 09:10:38 +01:00
Côme Chilliet
3446d9c0b2
Ignore cache in occ ldap:check-ldap command
This avoids having to wait or reset the cache after deleting a user in
 the LDAP.
This also fixes a PHP error when running ldap:check-ldap --update on a
 deleted but cached user.

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-22 16:44:27 +01:00
Côme Chilliet
26330cb774
Test cache invalidation for AbstractMapping in test suite
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-22 14:57:08 +01:00
Côme Chilliet
51ea7dc020
Make sure mapping cache is cleared when deleting a user
This avoids phantom remnants staying after user deletion

Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-22 14:49:34 +01:00
Arthur Schiwon
8266f88755
fix potential unwarranted memberships in nested groups from LDAP
- the issue was present only when using PHP based resolving of nested
  group members. Normally nested members are common in AD (and Samba4) and
  are resolved per LDAP_MATCHING_RULE_IN_CHAIN by default
- resolving nested members is recursive
- when the cache entry was created it happend for intermediate groups, too,
  containing members from the parent group
- the check was added to only cache the root group with its members
- a runtime cache stores intermediate ldap read results


Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-11-19 13:07:19 +01:00
Nextcloud bot
c35ad0c20d
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-19 02:38:13 +00:00
Nextcloud bot
72787cdcfd
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-14 02:25:33 +00:00
Nextcloud bot
7071d056a2
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-13 02:25:42 +00:00
Nextcloud bot
eb7109b3f4
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2021-11-12 02:22:55 +00:00
Joas Schilling
8e12ac290f
Master is now 24
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-11-11 10:11:09 +01:00
Côme Chilliet
651147874f
Update autoloader accordingly
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-09 15:14:58 +01:00
Côme Chilliet
6b960de47c
Get rid of LogWrapper calling deprecated logger and use LoggerInterface from PSR instead
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
2021-11-09 15:11:15 +01:00
Carl Schwan
dacf2e47a3
Update to composer 2.1.11
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2021-11-04 12:30:11 +01:00