Авторизация на сайте

Можно задать настройки так, чтобы содержимое или страницы были видны только тем пользователям сайта, которые авторизовались в системе.

Пользователи сайта

Концепция TYPO3 внутреннего (backend) и внешнего (frontend) интерфейсов объясняется в учебном пособии "Начало работы".

Можно использовать концепцию фронтенд-пользователей (посетителей сайта) для создания содержимого, предназначенного только для авторизованных пользователей, и ограничить доступ к страницам и элементам содержимого, требуя входа в систему.

Пользователи сайта всегда входят в группы внешних пользователей сайта. Доступ предоставляется группам, а не непосредственно пользователям. Пользователи и группы определяются, как и любые другие записи, и хранятся на соответствующей странице во внутреннем интерфейсе.

Создание группы пользователей и пользователя

  1. Создайте в дереве страниц новую папку и назовите ее "Frontend users" (внешние пользователи).

    Creating a folder for storing the users and groups
  2. Перейдите в модуль Веб > Список / Web > List и выберите новую папку.

  3. Щелкните на значке + Создать новую запись / Create new record в левой верхней части окна. На экране появится мастер "Новая запись" / "New record".

    Select "Usergroup" with the new record wizard
  4. Нажмите кнопку Группа пользователей сайта / Website Usergroup для создания новой группы посетителей сайта.

  5. Назовите её "Private Area" (Личный кабинет).

    Creating a new frontend group
  6. Сохраните и закройте запись.

  7. Снова воспользуйтесь мастером "Новая запись" / "New record", но на этот раз создайте Пользователя сайта / Website User.

  8. Введите имя пользователя, пароль и щелкните на группе "Private Area" (Личный кабинет), чтобы добавить к ней пользователя.

    Creating a new frontend user

    При необходимости можно добавить дополнительную информацию на вкладке Персональные данные / Personal Data.

  9. Сохраните и закройте запись.

Назначение прав доступа

Теперь, когда имеется хотя бы одна группа и пользователь, назначенный в эту группу, можно назначить разграничение доступа. Это делается на вкладке Доступ / Access свойств страницы или свойств элемента содержимого.

Usergroup access rights

Note

В списке групп по умолчанию появляются две группы. Они всегда доступны, их нельзя редактировать или удалять.

  • Группа "Скрывать при входе" / "Hide at login" означает, что элемент будет виден только тогда, когда пользователь не прошел аутентификацию.

  • Группа "Показывать при любом входе" / "Show at any login" используется для элементов, для доступа к которым требуется аутентификация, но которые могут видеть все группы авторизованных пользователей сайта.

  1. Перейдите в модуль Веб > Страница / Web > Page и создайте новую страницу под названием "Members only" / "Только для пользователей".

  2. Добавьте на страницу "Members only" / "Только для пользователей" элемент текстового содержимого, вроде "Для доступа в личный кабинет необходимо пройти аутентификацию".

  3. На вкладке Доступ / Access выберите для него группу "Скрывать при входе" / "Hide at login".

  4. Сохраните и закройте запись.

  5. Добавьте на страницу еще один элемент-текст, содержащий что-то вроде "Добро пожаловать в приватную область".

  6. На вкладке Доступ / Access выберите для него группу "Private Area" (Личный кабинет).

  7. Сохраните и закройте запись.

Должно получиться что-то вроде этого:

Placing access restriction on individual content elements

Попробуйте установить для всей страницы доступ "Private Area" (Личный кабинет). При сохранении страницы обратите внимание на то, как изменился значок в дереве страницы. Это визуальное напоминание о том, что страница не является общедоступной. Если попытаться получить доступ к странице с ограниченным доступом на сайте, то появится сообщение об ошибке TYPO3 "Страница не найдена".

Добавление формы авторизации

Следующим шагом будет размещение на сайте блока авторизации, чтобы посетители могли войти в систему для просмотра приватного содержимого.

  1. На странице "Members only" / "Только для пользователей" нажмите кнопку + Содержимое / + Content между двумя существующими элементами содержимого.

  2. В мастере создания нового элемента содержимого, перейдите на вкладку Элементы форм / Form elements и выберете "Форма авторизации" / "Login Form".

  3. Задайте ей название (например, Войти).

  4. Перейдите на вкладку Дополнения / Plugin. Для формы входа в систему существует несколько вариантов, но абсолютно необходимым является только один - "Страница хранения данных пользователя" / "User Storage Page".

  5. С помощью пиктограммы Выбор записей / Browse for records просмотрите дерево страниц и выберите папку "Web site users" (пользователи сайта).

    Defining a new login form
  6. Сохраните и закройте запись.

  7. Просмотрите страницу. Должно получиться что-то вроде этого:

    The page with the login box
  8. Введите имя пользователя и пароль, заданные ранее для пользователя внешнего интерфейса (сайта), и появится следующее окно:

    Страница с авторизованным пользователем

Это лишь краткий обзор формы входа в систему, предоставляемой TYPO3 CMS. Она обладает богатым набором возможностей, которые описаны в руководстве Frontend Login.