第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Symfony 2.8 -> 3.4 升級(jí) IsGranted

Symfony 2.8 -> 3.4 升級(jí) IsGranted

PHP
ibeautiful 2021-07-16 16:55:25
我正在將 Symfony 從 2.8 升級(jí)到 3.4,并且我有一個(gè)身份驗(yàn)證偵聽(tīng)器。監(jiān)聽(tīng)器的構(gòu)造器  public function __construct(EntityManager $entityManager, SessionInterface $session, Security $security, LoggerInterface $logger, Redis $redis, $secret)    {        $this->entityManager    = $entityManager;        $this->session          = $session;        $this->security         = $security;        $this->logger           = $logger;        $this->redis            = $redis;        $this->secret           = $secret;    }在偵聽(tīng)器中調(diào)用的請(qǐng)求函數(shù)       public function onRequest(GetResponseEvent $event)        {        //Validate token        //Get Authorization Header        $headers = $event->getRequest()->headers;        $authHeader = $headers->get('Authorization');        //Check if Header value starts with 'Bearer'        if($this->startsWith($authHeader, self::$BEARER_HEADER)) {                // Allow request to be processed by controllers               //token handler        } else {            $securityContext = $this->security;            if ($securityContext->isGranted('IS_AUTHENTICATED_ANONYMOUSLY')) {                return;            } else {                throw new SessionTimeoutException();            }        }    }服務(wù).ymlapp.token_listener:    class: Insead\MIMBundle\Listener\AuthTokenListener    arguments: ["@doctrine.orm.entity_manager", "@session", "@security.helper", "@logger", "@redis.authtoken", "%secret%"]    tags:        - { name: kernel.event_listener, event: kernel.request, method: onRequest, priority: 0 }ACL 列表?xiàng)l目 - security.php  'access_control' => array(       array('path' => '^/api/(.*?)/login', 'role'=>'IS_AUTHENTICATED_ANONYMOUSLY'),    )
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊

bin/console debug:event-dispatcher kernel.request

幫助解決了這個(gè)問(wèn)題。我正在使用


tags:

        - { name: kernel.event_listener, event: kernel.response, method: onKernelResponse, priority: 10 }

在 Services.yml 中,它與


getSubscribedEvents()

因此我刪除了標(biāo)簽,只保留了


public static function getSubscribedEvents()

    {

        return array(

            KernelEvents::REQUEST  => array('onKernelRequest', 10),

        );

    }

然后我通過(guò)給予其他兩個(gè)監(jiān)聽(tīng)器高優(yōu)先級(jí)來(lái)將身份驗(yàn)證監(jiān)聽(tīng)器移到下方,就像在 symfony 2.8 中一樣


查看完整回答
反對(duì) 回復(fù) 2021-07-16
?
慕尼黑8549860

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊

將AuthorizationChecker注入您的班級(jí)


protected $authChecker;


public function __construct(AuthorizationChecker $authChecker)

    {

        $this->authChecker = $authChecker;

    }

通過(guò)將其注入您的service.yml


XXXXXXXXX:

    class: App\XXX\XXXX\XXXXX

    arguments: [ "@security.authorization_checker" ]

然后使用它使用isGranted檢查角色


if ($this->authChecker->isGranted('IS_AUTHENTICATED_ANONYMOUSLY')) {


}


查看完整回答
反對(duì) 回復(fù) 2021-07-16
  • 3 回答
  • 0 關(guān)注
  • 213 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)