aboutsummaryrefslogtreecommitdiffstats
path: root/apps/settings/lib
diff options
context:
space:
mode:
authorCarl Schwan <carl@carlschwan.eu>2022-05-30 09:59:52 +0200
committerCôme Chilliet <come.chilliet@nextcloud.com>2023-10-19 11:43:58 +0200
commitc71e47f5c311836973c7ae22b174dfbbf8117304 (patch)
tree17ffa6b2cea8b0da7b791bc34daed4ecb5284465 /apps/settings/lib
parenteb1d612d961b562e744b8c6d8d361075b6daad55 (diff)
downloadnextcloud-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.php2
-rw-r--r--apps/settings/lib/Controller/CheckSetupController.php7
-rw-r--r--apps/settings/lib/SetupChecks/LdapInvalidUuids.php69
-rw-r--r--apps/settings/lib/SetupChecks/LegacySSEKeyFormat.php32
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'));
}
}