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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Symfony 2.8 -> 3.4 升級 IsGranted

Symfony 2.8 -> 3.4 升級 IsGranted

PHP
ibeautiful 2021-07-16 16:55:25
我正在將 Symfony 從 2.8 升級到 3.4,并且我有一個身份驗證偵聽器。監(jiān)聽器的構造器  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;    }在偵聽器中調用的請求函數(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();            }        }    }服務.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 列表條目 - security.php  'access_control' => array(       array('path' => '^/api/(.*?)/login', 'role'=>'IS_AUTHENTICATED_ANONYMOUSLY'),    )
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻2021條經(jīng)驗 獲得超8個贊

bin/console debug:event-dispatcher kernel.request

幫助解決了這個問題。我正在使用


tags:

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

在 Services.yml 中,它與


getSubscribedEvents()

因此我刪除了標簽,只保留了


public static function getSubscribedEvents()

    {

        return array(

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

        );

    }

然后我通過給予其他兩個監(jiān)聽器高優(yōu)先級來將身份驗證監(jiān)聽器移到下方,就像在 symfony 2.8 中一樣


查看完整回答
反對 回復 2021-07-16
?
慕尼黑8549860

TA貢獻1818條經(jīng)驗 獲得超11個贊

將AuthorizationChecker注入您的班級


protected $authChecker;


public function __construct(AuthorizationChecker $authChecker)

    {

        $this->authChecker = $authChecker;

    }

通過將其注入您的service.yml


XXXXXXXXX:

    class: App\XXX\XXXX\XXXXX

    arguments: [ "@security.authorization_checker" ]

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


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


}


查看完整回答
反對 回復 2021-07-16
  • 3 回答
  • 0 關注
  • 204 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號