Php Silverstripe 4-找不到身份验证程序类

Php Silverstripe 4-找不到身份验证程序类,php,silverstripe,silverstripe-4,Php,Silverstripe,Silverstripe 4,我将允许预生成的用户使用默认的from从SilverStripe 4网站前端页面注销。注销,因为登录有效 问题是,如果登录的普通用户试图通过单击像Security/logout(以及Security/logout?BackURL=home/)这样的链接注销,则会将其重定向到空白页面(只是页眉/页脚可见,因为实现了默认的page.ss)。显然,控制器不工作或类似,因为URL只将我指向Security/logout,而没有以下重定向 所以,我尝试实现一个自定义验证器,就像我在SS3中通常做的那样,但

我将允许预生成的用户使用默认的from从SilverStripe 4网站前端页面注销。注销,因为登录有效

问题是,如果登录的普通用户试图通过单击像
Security/logout
(以及
Security/logout?BackURL=home/
)这样的链接注销,则会将其重定向到空白页面(只是页眉/页脚可见,因为实现了默认的
page.ss
)。显然,控制器不工作或类似,因为URL只将我指向
Security/logout
,而没有以下重定向

所以,我尝试实现一个自定义验证器,就像我在SS3中通常做的那样,但是我注意到了一些小的差异。然后,我跟着和一起去寻求帮助

情况就是这样:

MemberAuthenticator自定义类 (在MySite/code中)

通过此实现,系统会向我抛出以下异常:

PHP致命错误:在第10行的/Applications/MAMP/htdocs/corporate/ss_corporate/corporate/code/uteAuthenticator.PHP中找不到类“SilverStripe\Security\MemberAuthenticator\Authenticator”

有人能给我建议正确的方法吗

提前感谢大家。

您可能需要使用

use SilverStripe\Security\MemberAuthenticator\CMSMemberAuthenticator
查看文档:

谢谢@gavin,我更改了依赖项并更正了扩展语句。现在这个异常被解决了,但我仍然停留在空白页的问题上。我提出了一个新问题。可以在这里找到:
<?php
// Definizione Namespace
use SilverStripe\Security\MemberAuthenticator\LoginHandler;
use SilverStripe\Control\Session;

/**
 * Clesse Login Utente
 */
class UtenteLoginHandler extends LoginHandler
{
    /**
     * Metodo gestione Login Utente
     * Setter
     * @param array $dati Dati form login
     * @param object $form Form login
     * @return void
     */
    public function doLogin($dati, $form)
    {
        $utente = $this->checkLogin($dati);

        // Controllo Utente
        if ($utente) {
            $cliente = Session::set('UtenteLoginHandler.MemberID', $utente->ID);
            $datiCliente = Session::set('UtenteLoginHandler.Data', $dati);

            $this->performLogin($cliente, $datiCliente);

            return $this->redirectAfterSuccessfulLogin();
        } else {
            // Se utente invalido torna al form
            return $this->redirectBack();
        }
    }
}
SilverStripe\Core\Injector\Injector:
  SilverStripe\Security\Security:
    properties:
      Authenticators:
        UtenteAuthenticator: %$Greylab\Corporate\Authenticator\UtenteAuthenticator
use SilverStripe\Security\MemberAuthenticator\CMSMemberAuthenticator