РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
568 of 1361 menu

Метод getUser класса Security

Метод getUser класса Security возвращает объект текущего пользователя, прошедшего аутентификацию. Если пользователь не аутентифицирован, метод возвращает null. Класс Security доступен через сервис-контейнер или может быть внедрён в метод контроллера через аргументы.

Синтаксис

public function getUser(): ?UserInterface

Пример

Давайте получим текущего пользователя в контроллере:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; use Symfony\Bundle\SecurityBundle\Security; class UserController extends AbstractController { #[Route('/user', name: 'user_index')] public function index(Security $security): Response { $user = $security->getUser(); if ($user === null) { return new Response('User not authenticated'); } return new Response($user->getUserIdentifier()); } } ?>

Результат выполнения кода для аутентифицированного пользователя:

"abcde"

Пример

Давайте получим роли текущего пользователя:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; use Symfony\Bundle\SecurityBundle\Security; class UserController extends AbstractController { #[Route('/roles', name: 'user_roles')] public function roles(Security $security): Response { $user = $security->getUser(); if ($user === null) { return new Response('User not authenticated'); } return new Response(implode(', ', $user->getRoles())); } } ?>

Результат выполнения кода:

"ROLE_USER, ROLE_ADMIN"

Смотрите также

  • класс Security,
    который предоставляет доступ к системе безопасности
  • метод isGranted,
    который проверяет права доступа пользователя
  • интерфейс UserInterface,
    который реализует объект пользователя
  • метод getUserIdentifier,
    который возвращает идентификатор пользователя
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить