diff options
Diffstat (limited to 'core/Command/Security')
-rw-r--r-- | core/Command/Security/BruteforceAttempts.php | 4 | ||||
-rw-r--r-- | core/Command/Security/ExportCertificates.php | 35 |
2 files changed, 37 insertions, 2 deletions
diff --git a/core/Command/Security/BruteforceAttempts.php b/core/Command/Security/BruteforceAttempts.php index f688a96e18b..d5fa0a284fd 100644 --- a/core/Command/Security/BruteforceAttempts.php +++ b/core/Command/Security/BruteforceAttempts.php @@ -50,11 +50,11 @@ class BruteforceAttempts extends Base { 'bypass-listed' => $this->throttler->isBypassListed($ip), 'attempts' => $this->throttler->getAttempts( $ip, - (string) $input->getArgument('action'), + (string)$input->getArgument('action'), ), 'delay' => $this->throttler->getDelay( $ip, - (string) $input->getArgument('action'), + (string)$input->getArgument('action'), ), ]; diff --git a/core/Command/Security/ExportCertificates.php b/core/Command/Security/ExportCertificates.php new file mode 100644 index 00000000000..dcf34d4bce4 --- /dev/null +++ b/core/Command/Security/ExportCertificates.php @@ -0,0 +1,35 @@ +<?php + +/** + * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-only + */ +declare(strict_types=1); + +namespace OC\Core\Command\Security; + +use OC\Core\Command\Base; +use OCP\ICertificateManager; +use Symfony\Component\Console\Input\InputInterface; +use Symfony\Component\Console\Output\OutputInterface; + +class ExportCertificates extends Base { + public function __construct( + protected ICertificateManager $certificateManager, + ) { + parent::__construct(); + } + + protected function configure(): void { + $this + ->setName('security:certificates:export') + ->setDescription('export the certificate bundle'); + } + + protected function execute(InputInterface $input, OutputInterface $output): int { + $bundlePath = $this->certificateManager->getAbsoluteBundlePath(); + $bundle = file_get_contents($bundlePath); + $output->writeln($bundle); + return 0; + } +} |