0

Windows 2008 サーバーで OTRS 3.2.11 を使用しています。Kernel/Output/HTML/NotificationUIDCheck.pm ファイルを修正して、「スーパーユーザー アカウントを使用しないでください...」という赤い警告メッセージを取り除きました。現在、メッセージは表示されなくなりましたが、ログ ファイルにはこのメッセージが継続的に表示されています。

[Sun May 18 07:59:54 2014][Error][Kernel::Output::HTML::Layout::NavigationBar][2932] Module Kernel/Output/HTML/NotificationUIDCheck.pm not found/could not be loaded!

実行中の NotificationUIDCheck.pm は次のとおりです。

package Kernel::Output::HTML::NotificationUIDCheck;

use strict;
use warnings;

sub new {
my ( $Type, %Param ) = @_;

# allocate new hash for object
my $Self = {};
bless( $Self, $Type );

# get needed objects
for (qw(ConfigObject LogObject DBObject LayoutObject UserID)) {
    $Self->{$_} = $Param{$_} || die "Got no $_!";
}
return $Self;
}

元のファイルは次のようなものでした:

package Kernel::Output::HTML::NotificationUIDCheck;

use strict;
use warnings;

sub new {
my ( $Type, %Param ) = @_;

# allocate new hash for object
my $Self = {};
bless( $Self, $Type );

# get needed objects
for (qw(ConfigObject LogObject DBObject LayoutObject UserID)) {
    $Self->{$_} = $Param{$_} || die "Got no $_!";
}
return $Self;
}

sub Run {
my ( $Self, %Param ) = @_;

# return if it's not root@localhost
return '' if $Self->{UserID} != 1;

# show error notfy, don't work with user id 1
return $Self->{LayoutObject}->Notify(
    Priority => 'Error',
    Link     => '$Env{"Baselink"}Action=AdminUser',
    Data =>
        '$Text{"Don\'t use the Superuser account to work with OTRS! Create new Agents  and work with these accounts instead."}',
);
}

1;

何かが足りないと思いますが、それを修正する方法を見つけるのを手伝ってくれませんか!!!

4

2 に答える 2

0

まず第一に、「スーパーユーザー アカウントを使用しないでください」という警告を、スーパーユーザー アカウントを使用しない以外の理由で修正する理由がわかりません!!

このアカウントを実際に使用したくないのには理由があります。これは、使用時に ACL が適用されないためです。また、SuperUser アカウントは、デフォルトで、電子メールおよび/または顧客によって作成されたすべてのチケットの所有者になります。ポータル。

その場合でも、エラー メッセージを表示したくない場合は、おそらくこれをKernel/Config.pmファイルに追加して、チェックを無効にする必要があります。

$Self->{'Frontend::NotifyModule'}->{'200-UID-Check'}

この方法では、コードの変更は必要ありません。

于 2014-05-22T18:58:19.310 に答える