Использование скриптов для авторизации пользователей в службах Mobile Services
Тема практической работы — использование серверных скриптов для авторизации прошедших проверку подлинности пользователей и предоставления им доступа к данным в службах Microsoft Azure Mobile Services из приложения Android. Учимся регистрировать скрипты в службах Mobile Services для фильтрации запросов на основе значения userId в идентификаторе пользователя, прошедшего проверку подлинности, и гарантируем, что каждый пользователь будет видеть только собственные данные. Практическая работа построена на основе проекта быстрого запуска Mobile Services и предыдущей работы Как проверить подлинность. Предварительно необходимо выполнить практическую работу Как проверить подлинность. Регистрация скриптовТак как приложение быстрого запуска осуществляет чтение и вставку данных, необходимо зарегистрировать скрипты этих операций для беспрепятственной работы с таблицей TodoItem. 1. Войдите на портал управления Microsoft Azure, нажмите Mobile Services и выберите свое приложение. 2. Нажмите вкладку Data (Данные) и выберите таблицу TodoItem. 3. Нажмите вкладку Script (Скрипт) и выберите операцию Insert (Вставить). 4. Замените существующий скрипт следующей функцией и нажмите Save (Сохранить). Этот скрипт добавляет значение userId в идентификатор пользователя, прошедшего проверку подлинности, до его вставки в таблицу TodoItem. ПримечаниеПри первом выполнении этого скрипта вставки необходимо включить динамическую схему. Включенная динамическая схема позволяет службам Mobile Services автоматически добавлять столбец userId в таблицу TodoItem при первом выполнении сценария. Динамическая схема включена по умолчанию для каждой новой мобильной службы. Перед публикацией приложения в Магазине Windows ее необходимо отключить. 8. Повторите шаги 3 и 4, чтобы заменить существующую операцию Read следующей функцией: Этот скрипт фильтрует возвращенные объекты TodoItem таким образом, чтобы каждый пользователь получал только те элементы, которые вставлял сам. Проверка приложения1. Откройте в Eclipse проект, который вы изменили, в ходе выполнения практической работы Как проверить подлинность. 2. В меню Run (Выполнение) нажмите Run (Выполните), чтобы запустить приложение и выполнить вход с использованием выбранного вами поставщика удостоверений. Обратите внимание, что на этот раз никакие элементы не возвращаются, хотя в таблице TodoItem и присутствуют элементы, созданные в ходе выполнения предыдущих практических работ. Это происходит потому, что созданные ранее элементы вставлялись без столбца userId и теперь имеют нулевые значения. 3. В приложении введите текст в поле Insert a TodoItem (Вставить в таблицу) и нажмите кнопку Save (Сохранить). В таблицу TodoItem мобильной службы будут вставлены текст и значение userID. Так как новому элементу присвоено правильное значение userId, он возвращается мобильной службой и отображается во втором столбце. 4. Вернитесь в таблицу todoitem в портале управления, нажмите Browse (Просмотреть) и убедитесь, что у всех вновь добавленных элементов есть сопоставимые значения userId. 5. (Не обязательно) Если у вас есть другие учетные записи, выполните приложение еще раз с ними и убедитесь в том, что пользователи видят только свои данные. При появлении диалогового окна входа в систему введите другие учетные данные и убедитесь в том, что элементы, введенные во время сеанса с предыдущей учетной записью, не отображаются. |