diff options
author | Carl Schwan <carl@carlschwan.eu> | 2022-05-30 09:59:52 +0200 |
---|---|---|
committer | Côme Chilliet <come.chilliet@nextcloud.com> | 2023-10-19 11:43:58 +0200 |
commit | c71e47f5c311836973c7ae22b174dfbbf8117304 (patch) | |
tree | 17ffa6b2cea8b0da7b791bc34daed4ecb5284465 /apps/settings/lib | |
parent | eb1d612d961b562e744b8c6d8d361075b6daad55 (diff) | |
download | nextcloud-server-c71e47f5c311836973c7ae22b174dfbbf8117304.tar.gz nextcloud-server-c71e47f5c311836973c7ae22b174dfbbf8117304.zip |
Progress
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
Diffstat (limited to 'apps/settings/lib')
-rw-r--r-- | apps/settings/lib/AppInfo/Application.php | 2 | ||||
-rw-r--r-- | apps/settings/lib/Controller/CheckSetupController.php | 7 | ||||
-rw-r--r-- | apps/settings/lib/SetupChecks/LdapInvalidUuids.php | 69 | ||||
-rw-r--r-- | apps/settings/lib/SetupChecks/LegacySSEKeyFormat.php | 32 |
4 files changed, 17 insertions, 93 deletions
diff --git a/apps/settings/lib/AppInfo/Application.php b/apps/settings/lib/AppInfo/Application.php index 22993a79485..c3ed7b31e79 100644 --- a/apps/settings/lib/AppInfo/Application.php +++ b/apps/settings/lib/AppInfo/Application.php @@ -49,6 +49,7 @@ use OCA\Settings\Search\AppSearch; use OCA\Settings\Search\SectionSearch; use OCA\Settings\Search\UserSearch; use OCA\Settings\SetupChecks\CheckUserCertificates; +use OCA\Settings\SetupChecks\LegacySSEKeyFormat; use OCA\Settings\UserMigration\AccountMigrator; use OCA\Settings\WellKnown\ChangePasswordHandler; use OCA\Settings\WellKnown\SecurityTxtHandler; @@ -139,6 +140,7 @@ class Application extends App implements IBootstrap { ); }); $context->registerSetupCheck(CheckUserCertificates::class); + $context->registerSetupCheck(LegacySSEKeyFormat::class); $context->registerUserMigrator(AccountMigrator::class); } diff --git a/apps/settings/lib/Controller/CheckSetupController.php b/apps/settings/lib/Controller/CheckSetupController.php index bcfd2360300..829873f0069 100644 --- a/apps/settings/lib/Controller/CheckSetupController.php +++ b/apps/settings/lib/Controller/CheckSetupController.php @@ -64,7 +64,6 @@ use OC\Lock\DBLockingProvider; use OC\MemoryInfo; use OCA\Settings\SetupChecks\CheckUserCertificates; use OCA\Settings\SetupChecks\NeedsSystemAddressBookSync; -use OCA\Settings\SetupChecks\LdapInvalidUuids; use OCA\Settings\SetupChecks\LegacySSEKeyFormat; use OCA\Settings\SetupChecks\PhpDefaultCharset; use OCA\Settings\SetupChecks\PhpOutputBuffering; @@ -920,10 +919,7 @@ Raw output public function check() { $phpDefaultCharset = new PhpDefaultCharset(); $phpOutputBuffering = new PhpOutputBuffering(); - $legacySSEKeyFormat = new LegacySSEKeyFormat($this->l10n, $this->config, $this->urlGenerator); - //$checkUserCertificates = new CheckUserCertificates($this->l10n, $this->config, $this->urlGenerator); $supportedDatabases = new SupportedDatabase($this->l10n, $this->connection); - $ldapInvalidUuids = new LdapInvalidUuids($this->appManager, $this->l10n, $this->serverContainer); $needsSystemAddressBookSync = new NeedsSystemAddressBookSync($this->config, $this->l10n); return new DataResponse( @@ -974,12 +970,9 @@ Raw output 'imageMagickLacksSVGSupport' => $this->imageMagickLacksSVGSupport(), PhpDefaultCharset::class => ['pass' => $phpDefaultCharset->run(), 'description' => $phpDefaultCharset->description(), 'severity' => $phpDefaultCharset->severity()], PhpOutputBuffering::class => ['pass' => $phpOutputBuffering->run(), 'description' => $phpOutputBuffering->description(), 'severity' => $phpOutputBuffering->severity()], - LegacySSEKeyFormat::class => ['pass' => $legacySSEKeyFormat->run(), 'description' => $legacySSEKeyFormat->description(), 'severity' => $legacySSEKeyFormat->severity(), 'linkToDocumentation' => $legacySSEKeyFormat->linkToDocumentation()], - //CheckUserCertificates::class => ['pass' => $checkUserCertificates->run(), 'description' => $checkUserCertificates->description(), 'severity' => $checkUserCertificates->severity(), 'elements' => $checkUserCertificates->elements()], 'isDefaultPhoneRegionSet' => $this->config->getSystemValueString('default_phone_region', '') !== '', SupportedDatabase::class => ['pass' => $supportedDatabases->run(), 'description' => $supportedDatabases->description(), 'severity' => $supportedDatabases->severity()], 'temporaryDirectoryWritable' => $this->isTemporaryDirectoryWritable(), - LdapInvalidUuids::class => ['pass' => $ldapInvalidUuids->run(), 'description' => $ldapInvalidUuids->description(), 'severity' => $ldapInvalidUuids->severity()], NeedsSystemAddressBookSync::class => ['pass' => $needsSystemAddressBookSync->run(), 'description' => $needsSystemAddressBookSync->description(), 'severity' => $needsSystemAddressBookSync->severity()], ] ); diff --git a/apps/settings/lib/SetupChecks/LdapInvalidUuids.php b/apps/settings/lib/SetupChecks/LdapInvalidUuids.php deleted file mode 100644 index 11b0105cada..00000000000 --- a/apps/settings/lib/SetupChecks/LdapInvalidUuids.php +++ /dev/null @@ -1,69 +0,0 @@ -<?php - -declare(strict_types=1); - -/** - * @copyright Copyright (c) 2022 Arthur Schiwon <blizzz@arthur-schiwon.de> - * - * @author Arthur Schiwon <blizzz@arthur-schiwon.de> - * - * @license GNU AGPL version 3 or any later version - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see <https://www.gnu.org/licenses/>. - * - */ - -namespace OCA\Settings\SetupChecks; - -use OCA\User_LDAP\Mapping\GroupMapping; -use OCA\User_LDAP\Mapping\UserMapping; -use OCP\App\IAppManager; -use OCP\IL10N; -use OCP\IServerContainer; - -class LdapInvalidUuids { - - /** @var IAppManager */ - private $appManager; - /** @var IL10N */ - private $l10n; - /** @var IServerContainer */ - private $server; - - public function __construct(IAppManager $appManager, IL10N $l10n, IServerContainer $server) { - $this->appManager = $appManager; - $this->l10n = $l10n; - $this->server = $server; - } - - public function description(): string { - return $this->l10n->t('Invalid UUIDs of LDAP users or groups have been found. Please review your "Override UUID detection" settings in the Expert part of the LDAP configuration and use "occ ldap:update-uuid" to update them.'); - } - - public function severity(): string { - return 'warning'; - } - - public function run(): bool { - if (!$this->appManager->isEnabledForUser('user_ldap')) { - return true; - } - /** @var UserMapping $userMapping */ - $userMapping = $this->server->get(UserMapping::class); - /** @var GroupMapping $groupMapping */ - $groupMapping = $this->server->get(GroupMapping::class); - return count($userMapping->getList(0, 1, true)) === 0 - && count($groupMapping->getList(0, 1, true)) === 0; - } -} diff --git a/apps/settings/lib/SetupChecks/LegacySSEKeyFormat.php b/apps/settings/lib/SetupChecks/LegacySSEKeyFormat.php index 4814d3fba7c..44560590f74 100644 --- a/apps/settings/lib/SetupChecks/LegacySSEKeyFormat.php +++ b/apps/settings/lib/SetupChecks/LegacySSEKeyFormat.php @@ -28,14 +28,13 @@ namespace OCA\Settings\SetupChecks; use OCP\IConfig; use OCP\IL10N; use OCP\IURLGenerator; +use OCP\SetupCheck\ISetupCheck; +use OCP\SetupCheck\SetupResult; -class LegacySSEKeyFormat { - /** @var IL10N */ - private $l10n; - /** @var IConfig */ - private $config; - /** @var IURLGenerator */ - private $urlGenerator; +class LegacySSEKeyFormat implements ISetupCheck { + private IL10N $l10n; + private IConfig $config; + private IURLGenerator $urlGenerator; public function __construct(IL10N $l10n, IConfig $config, IURLGenerator $urlGenerator) { $this->l10n = $l10n; @@ -43,19 +42,18 @@ class LegacySSEKeyFormat { $this->urlGenerator = $urlGenerator; } - public function description(): string { - return $this->l10n->t('The old server-side-encryption format is enabled. We recommend disabling this.'); + public function getCategory(): string { + return 'security'; } - public function severity(): string { - return 'warning'; + public function getName(): string { + return $this->l10n->t('Checking for old server-side-encryption being disabled'); } - public function run(): bool { - return $this->config->getSystemValueBool('encryption.legacy_format_support', false) === false; - } - - public function linkToDocumentation(): string { - return $this->urlGenerator->linkToDocs('admin-sse-legacy-format'); + public function run(): SetupResult { + if ($this->config->getSystemValueBool('encryption.legacy_format_support', false) === false) { + return new SetupResult(SetupResult::SUCCESS); + } + return new SetupResult(SetupResult::WARNING, $this->l10n->t('The old server-side-encryption format is enabled. We recommend disabling this.'), $this->urlGenerator->linkToDocs('admin-sse-legacy-format')); } } |