# -- # 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;