Разработка облачных бизнес-приложений с использованием Visual Studio LightSwitch 2011

Настройка безопасности для приложения LightSwitch

Разбить на страницы
Показывать лекцию целиком

Для настройки безопасности в ходе разработки приложения необходимо создать Разрешения, затем на развёрнутом приложении выполняется настройка пользователей и ролей.

Для создания разрешения необходимо в окне свойств проекта перейти на вкладку Управление доступом. Установите переключатель Использовать проверку подлинности с помощью форм.

(рис 19.1)

Создайте разрешение, которое позволит выполнять операции редактирования для всех таблиц, в частности с использованием экранов начинающихся с префикса Редактор. Дайте название разрешению РедактированиеОсновныхТаблиц и установите флажок Предоставлено для отладки.

(рис 19.2)

Созданное разрешение можно использовать в коде для проверки доступности определенных операций. Если пользователь имеет данное разрешение. То у него будет доступ к экранам редактирования.

Откройте в конструкторе экран РедакторГрупп. Выберите команду Запись кода и метод РедакторГрупп_CanRun.

(рис 19.3)

Запишите там следующий код:

partial void РедакторГрупп_CanRun(ref bool result)
  {
    // Присвоение результату значения нужного поля
    result = User.HasPermission(Permissions.РедактированиеОсновныхТаблиц);
  }

Аналогичный код необходимо добавить для всех экранов, которые будет запрещено использовать, если у пользователя нет разрешения РедактированиеОсновныхТаблиц.

Так как при создании разрешения был установлен флажок Предоставлено для отладки, то Тестовый пользователь будет иметь указанное разрешение и доступ к экранам будет включен.

(рис 19.4)

Если флажок Предоставлено для отладки снять, то доступ к экранам будет запрещен и они будут не доступны на панели навигатора. Также исчезнет и группа их содержавшая.

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

(рис 19.5)

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

(рис 19.6)

Затем создаются пользователи приложения и устанавливается к какой роли они относятся. Одновременно один пользователь может относиться к нескольким ролям.

(рис 19.7)

Таким образом, в LightSwitch можно настроить и использовать различные схема обеспечения безопасности.

Самостоятельная работа

  • Создайте разрешение РедактированиеСведенийОПреподаавателях и установите, чтобы пользователь без этого разрешения не имел доступа к экранам, где представлена и изменяется информация о преподавателях.
  • Создайте разрешение РедактированиеСведенийОПредметах и установите, чтобы пользователь без этого разрешения не имел доступа к экранам, где представлена и изменяется информация о предметах.
  • Создайте разрешение РедактированиеОценок и установите, чтобы редактирование оценок мог выполнять пользователь с данным разрешением.
  • Добавьте в приложение роли с указанными выше разрешениями, а также создайте пользователей, относящихся к этим ролям.
  • Страницы:

    Для настройки безопасности в ходе разработки приложения необходимо создать Разрешения, затем на развёрнутом приложении выполняется настройка пользователей и ролей.

    Для создания разрешения необходимо в окне свойств проекта перейти на вкладку Управление доступом. Установите переключатель Использовать проверку подлинности с помощью форм.

    (рис 19.1)

    Создайте разрешение, которое позволит выполнять операции редактирования для всех таблиц, в частности с использованием экранов начинающихся с префикса Редактор. Дайте название разрешению РедактированиеОсновныхТаблиц и установите флажок Предоставлено для отладки.

    (рис 19.2)

    Созданное разрешение можно использовать в коде для проверки доступности определенных операций. Если пользователь имеет данное разрешение. То у него будет доступ к экранам редактирования.

    Откройте в конструкторе экран РедакторГрупп. Выберите команду Запись кода и метод РедакторГрупп_CanRun.

    (рис 19.3)

    Запишите там следующий код:

    partial void РедакторГрупп_CanRun(ref bool result)
      {
        // Присвоение результату значения нужного поля
        result = User.HasPermission(Permissions.РедактированиеОсновныхТаблиц);
      }
    

    Аналогичный код необходимо добавить для всех экранов, которые будет запрещено использовать, если у пользователя нет разрешения РедактированиеОсновныхТаблиц.

    Так как при создании разрешения был установлен флажок Предоставлено для отладки, то Тестовый пользователь будет иметь указанное разрешение и доступ к экранам будет включен.

    (рис 19.4)

    Если флажок Предоставлено для отладки снять, то доступ к экранам будет запрещен и они будут не доступны на панели навигатора. Также исчезнет и группа их содержавшая.

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

    (рис 19.5)

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

    (рис 19.6)

    Затем создаются пользователи приложения и устанавливается к какой роли они относятся. Одновременно один пользователь может относиться к нескольким ролям.

    (рис 19.7)

    Таким образом, в LightSwitch можно настроить и использовать различные схема обеспечения безопасности.

    Самостоятельная работа

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