Поиск на сайте: Расширенный поиск


Новые программы oszone.net Читать ленту новостей RSS
CheckBootSpeed - это диагностический пакет на основе скриптов PowerShell, создающий отчет о скорости загрузки Windows 7 ...
Вы когда-нибудь хотели создать установочный диск Windows, который бы автоматически установил систему, не задавая вопросо...
Если после установки Windows XP у вас перестала загружаться Windows Vista или Windows 7, вам необходимо восстановить заг...
Программа подготовки документов и ведения учетных и отчетных данных по командировкам. Используются формы, утвержденные п...
Red Button – это мощная утилита для оптимизации и очистки всех актуальных клиентских версий операционной системы Windows...
OSzone.net Microsoft Разработка приложений Облако/Azure Windows Azure Mobile Services – краткое руководство по использованию. Часть 3. RSS

Windows Azure Mobile Services – краткое руководство по использованию. Часть 3.

Текущий рейтинг: 0 (проголосовало 0)
 Посетителей: 346 | Просмотров: 405 (сегодня 0)  Шрифт: - +

В этой части рассмотрены вопросы аутентификации в мобильном сервисе из вашего приложения.

Регистрация приложения для аутентификации и настройка мобильного сервиса

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

Войдите на портале управления, перейдите на MobileServices и выберите ваш мобильный сервис (рисунок 1).

*
Увеличить

Рис. 1. Портал управления Windows Azure

Перейдите на вкладку Dashboard и запишите значение SiteURL (рисунок 2).

*
Увеличить

Рис. 2. Портал управления Windows Azure

Настроим аутентификацию через Facebook. Для этого понадобится аккаунт Facebook.

Перейдите на страницу Facebook Developers и войдите в систему.

Нажмите Apps, затем Create New App (рисунок 3).

*
Увеличить

Рис. 3. Портал Facebook

Выберите уникальное имя для приложения и нажмите OK (рисунок 4), что зарегистрирует приложение на Facebook.

*
Увеличить

Рис. 4. Портал Facebook

В Select how your app integrates with Facebook разверните Website with Facebook Login,введите URL мобильного сервиса в поле Site URL и нажмите Save Changes (рисунок 5).

*
Увеличить

Рис. 5. Портал Facebook

Запишите значения App ID и App Secret (рисунок 6).

*
Увеличить

Рис. 6. Портал Facebook

Аутентификация на портале настроена.

Перейдите на портал управления Windows Azure и во вкладке Identity введите записанные значения App ID и App Secret, после чего нажмите Save (рисунок 7).

*
Увеличить

Рис. 7. Портал управления Windows Azure

Ограничения прав аутентифицировавшихся пользователей

На портале управления во вкладке Data выберите таблицу TodoItem (рисунок 8).

*
Увеличить

Рис. 8. Портал управления Windows Azure

На вкладке Permissions определите все права в Only authenticated users и нажмите Save (рисунок 9).

*
Увеличить

Рис. 9. Портал управления Windows Azure

Откройте проект из предыдущей части и запустите его. Убедитесь, что при запуске приложения выдается ошибка 401 (Unauthorized). Это происходит из-за того, что теперь таблица TodoItem доступна только аутентифицировавшимся пользователям.

Добавьте в файл mainpage.xaml.cs:

private MobileServiceUser user;

private async System.Threading.Tasks.Task Authenticate()

{

    while (user == null)

    {

        string message;

        try

        {

            user = await App.MobileService

                .LoginAsync(MobileServiceAuthenticationProvider.Facebook);

            message =

                string.Format("You are now logged in - {0}", user.UserId);

        }

        catch (InvalidOperationException)

        {

            message = "You must log in. Login Required";

        }





    var dialog = new MessageDialog(message);

    dialog.Commands.Add(new UICommand("OK"));

    await dialog.ShowAsync();

}





}

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

Замените содержимое метода OnNavigatedTo:

protected override async void OnNavigatedTo(NavigationEventArgs e)

{

    await Authenticate();

    RefreshTodoItems();

}

Запустите приложение и аутентифицируйтесь в выбранном провайдере идентификации.

Существует возможность использовать серверные скрипты для авторизации аутентифицировавшихся пользователей и выдачи им прав на доступ к данным в Windows Azure Mobile Services.

Регистрация скриптов

Перейдите на портал управления Windows Azure и на вкладке MobileServices выберите ваше приложение (рисунок 10) .

*
Увеличить

Рис. 10. Портал управления Windows Azure

На вкладке Data выберите таблицу TodoItem (рисунок 11).

*
Увеличить

Рис. 11. Портал управления Windows Azure

Нажмите Script и выберите Insert (рисунок 12).

*
Увеличить

Рис. 12. Портал управления Windows Azure

Замените код и нажмите Save.

function insert(item, user, request) {

  item.userId = user.userId;

  request.execute();

}

Скрипт добавляет в сущность значение userId, которая является идентификатором аутентифицировшегося пользователя, перед тем, как она вставляется в таблицу.

Замените код операции Read:

function read(query, user, request) {

   query.where({ userId: user.userId });

   request.execute();

}

Запуск приложения

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

Иcточник: MSDN  •  Опубликована: 02.07.2013
Нашли ошибку в тексте? Сообщите о ней автору: выделите мышкой и нажмите CTRL + ENTER
Теги:  


Оценить статью:
Вверх
Комментарии посетителей
Комментарии отключены. С вопросами по статьям обращайтесь в форум.