Files
scripts/Perl OTRS/Kernel/System/SupportDataCollector/Plugin/OTRS/DefaultUser.pm
2024-10-14 00:08:40 +02:00

80 lines
1.9 KiB
Perl

# --
# Copyright (C) 2001-2019 OTRS AG, https://otrs.com/
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (GPL). If you
# did not receive this file, see https://www.gnu.org/licenses/gpl-3.0.txt.
# --
package Kernel::System::SupportDataCollector::Plugin::OTRS::DefaultUser;
use strict;
use warnings;
use parent qw(Kernel::System::SupportDataCollector::PluginBase);
use Kernel::Language qw(Translatable);
our @ObjectDependencies = (
'Kernel::System::Auth',
'Kernel::System::Group',
'Kernel::System::User',
);
sub GetDisplayPath {
return Translatable('OTRS');
}
sub Run {
my $Self = shift;
# get needed objects
my $UserObject = $Kernel::OM->Get('Kernel::System::User');
my $GroupObject = $Kernel::OM->Get('Kernel::System::Group');
my %UserList = $UserObject->UserList(
Type => 'Short',
Valid => '1',
);
my $DefaultPassword;
my $SuperUserID;
USER:
for my $UserID ( sort keys %UserList ) {
if ( $UserList{$UserID} eq 'root@localhost' ) {
$SuperUserID = 1;
last USER;
}
}
if ($SuperUserID) {
$DefaultPassword = $Kernel::OM->Get('Kernel::System::Auth')->Auth(
User => 'root@localhost',
Pw => 'root',
);
}
if ($DefaultPassword) {
$Self->AddResultProblem(
Label => Translatable('Default Admin Password'),
Value => '',
Message =>
Translatable(
'Security risk: the agent account root@localhost still has the default password. Please change it or invalidate the account.'
),
);
}
else {
$Self->AddResultOk(
Label => Translatable('Default Admin Password'),
Value => '',
);
}
return $Self->GetResults();
}
1;