Создание страницы с доступом только для авторизованных пользователей

Последнее обновление 25 апр. 2024 г.
Примечание

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

О защищенных страницах

Ваше веб-приложение может содержать защищенную страницу, доступ к которой имеют только авторизованные пользователи.

Например, если пользователь попытается обойти страницу входа, введя URL защищенной страницы в браузере, он будет перенаправлен на другую страницу. Аналогично, если вы установите уровень авторизации для страницы «Только администраторы», просматривать страницу смогут только пользователи с правами доступа администратора. Если авторизованный пользователь попытается получить доступ к защищенной странице без соответствующих прав доступа, он будет перенаправлен на другую страницу.

Вы также можете использовать уровни авторизации для проверки новых зарегистрированных пользователей перед предоставлением им полного доступа к сайту. Например, вы можете захотеть получить оплату прежде чем разрешить пользователю доступ к страницам участников сайта. Для этого вы можете защитить страницы участников уровнем авторизации «Подписчик» и предоставить новым зарегистрированным пользователям только права гостя. После получения оплаты от пользователя вы можете повысить права доступа пользователя до «Подписчик» (в таблице базы данных зарегистрированных пользователей).

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

Если вы планируете использовать уровни авторизации, вы можете защитить любую страницу на вашем сайте с помощью следующих строительных блоков:

  • Серверное поведение «Ограничить доступ к странице» для перенаправления неавторизованных пользователей на другую страницу

  • Дополнительный столбец в таблице базы данных пользователей для хранения прав доступа каждого пользователя

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

Перенаправление неавторизованных пользователей

Чтобы запретить неавторизованным пользователям доступ к странице, добавьте к ней серверное поведение «Ограничить доступ к странице». Серверное поведение перенаправляет пользователя на другую страницу, если пользователь попытается обойти страницу входа, введя URL защищенной страницы в браузере, или если пользователь вошел в систему, но попытается получить доступ к защищенной странице без соответствующих прав доступа.

Примечание

Серверное поведение «Ограничить доступ к странице» может защищать только HTML-страницы. Оно не защищает другие ресурсы сайта, такие как файлы изображений и аудиофайлы.

Если вы хотите предоставить многим страницам на вашем сайте одинаковые права доступа, вы можете скопировать и вставить права доступа с одной страницы на другую.

Перенаправить неавторизованных пользователей на другую страницу

Откройте страницу, которую требуется защитить.
В панели «Серверные поведения» (Окно > Серверные поведения) нажмите кнопку «Плюс» (+) и выберите «Аутентификация пользователя» > «Ограничить доступ к странице» из всплывающего меню.
Выберите для страницы уровень доступа. Чтобы разрешить просмотр страницы только пользователям с определенными правами доступа, выберите параметр «Имя пользователя, пароль и уровень доступа» и укажите уровни авторизации для страницы.

Например, вы можете указать, что только пользователи с правами администратора могут просматривать страницу, выбрав «Администратор» в списке уровней авторизации.

Для добавления к списку уровней авторизации нажмите кнопку «Определить». В появившемся списке «Определить уровни доступа» введите новый уровень авторизации и нажмите кнопку «Плюс» (+). Новый уровень авторизации сохраняется для использования с другими страницами.

Убедитесь, что строка для уровня авторизации точно соответствует строке, хранящейся в базе данных пользователей. Например, если столбец авторизации в вашей базе данных содержит значение «Administrator», введите Administrator, а не Admin, в поле «Имя».

Чтобы задать несколько уровней авторизации для страницы, щелкните с нажатой клавишей CTRL (Windows) или COMMAND (Macintosh) по уровням в списке.

Например, можно указать, что любой пользователь с привилегиями «Гость», «Подписчик» или «Администратор» может просматривать страницу.

Укажите страницу, которая откроется, если неавторизованный пользователь попытается открыть защищенную страницу.

Убедитесь, что выбранная страница не защищена.

Нажмите кнопку «ОК».

Копирование и вставка прав доступа страницы на другие страницы сайта

Откройте защищенную страницу и выберите поведение сервера «Ограничить доступ к странице», указанное на панели «Поведение сервера» (не то, которое находится во всплывающем меню «Плюс» (+)).
Нажмите кнопку со стрелкой в правом верхнем углу панели и выберите «Копировать» во всплывающем меню.

Поведение сервера «Ограничить доступ к странице» копируется в буфер обмена системы.

Откройте страницу, которую требуется защитить.
На панели «Поведение сервера» («Окно» > «Поведение сервера») нажмите кнопку со стрелкой в правом верхнем углу и выберите «Вставить» во всплывающем меню.
Повторите шаги 3 и 4 для всех страниц, которые требуется защитить.

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

Этот строительный блок требуется только в том случае, если вы хотите предоставить определенным вошедшим в систему пользователям различные привилегии доступа. Если вы просто требуете от пользователей входа в систему, сохранять привилегии доступа не обязательно.

Чтобы предоставить определенным вошедшим в систему пользователям различные привилегии доступа, убедитесь, что таблица пользователей в базе данных содержит столбец, указывающий привилегии доступа каждого пользователя («Гость», «Пользователь», «Администратор» и так далее). Привилегии доступа каждого пользователя должны вводиться в базу данных администратором сайта.

В большинстве приложений баз данных можно задать для столбца значение по умолчанию при создании каждой новой записи. Задайте значением по умолчанию наиболее распространенную привилегию доступа на вашем сайте (например, «Гость»); затем вручную измените исключения (например, измените «Гость» на «Администратор»). Теперь пользователь имеет доступ ко всем страницам администратора.

Убедитесь, что каждый пользователь в базе данных имеет одну привилегию доступа, такую как «Гость» или «Администратор», а не несколько привилегий, таких как «Пользователь», «Администратор». Чтобы задать несколько привилегий доступа для ваших страниц (например, все гости и администраторы могут видеть эту страницу), задайте эти привилегии на уровне страницы, а не на уровне базы данных.

Выход пользователей из системы

Когда пользователь успешно входит в систему, создается переменная сеанса, которая состоит из имени пользователя. Когда пользователь покидает ваш сайт, можно использовать поведение сервера «Выход пользователя из системы», чтобы очистить переменную сеанса и перенаправить пользователя на другую страницу (обычно страницу прощания или благодарности).

Поведение сервера «Выход пользователя из системы» можно вызвать, когда пользователь нажимает ссылку или когда загружается определенная страница.

Выберите текст или изображение на странице, которые будут служить ссылкой.
На панели «Поведение сервера» («Окно» > «Поведение») нажмите кнопку «Плюс» (+) и выберите «Аутентификация пользователя» > «Выход пользователя из системы».
Укажите страницу для открытия, когда пользователь нажимает ссылку, и нажмите «ОК».

Как правило, открывается страница «прощания» или «благодарности».

Осуществляйте выход пользователей при загрузке определенной страницы

Откройте страницу, которая будет загружаться в Dreamweaver.

Как правило, открывается страница «прощания» или «благодарности».

На панели «Поведения сервера» нажмите кнопку «Плюс» (+) и выберите «Аутентификация пользователей» > «Выход пользователя».
Выберите параметр «Выход при загрузке страницы» и нажмите «ОК».