#cordova #azure #azure-mobile-services #azure-active-directory
#кордова #azure #azure-mobile-services #azure-active-directory
Вопрос:
Интересно, как я могу вернуть утверждения при аутентификации пользователей в мобильных службах Azure с использованием Azure AD.
Я использую мобильные службы Azure для аутентификации пользователей в приложении phonegap. Процесс аутентификации работает нормально, ответ, который я получаю от службы, выглядит следующим образом
{
"userId": "Aad:o5ExTvSOMETHING_HEREpb0c",
"mobileServiceAuthenticationToken": "A_TOKEN"
}
Как я могу получить свойства профиля, такие как полное имя, имя для входа и т.д., Чтобы я мог хотя бы вывести что-то вроде «Привет, Ларс», «Lars» — возвращаемое утверждение.
После входа в систему я перенаправляю пользователя обратно на «домашний»:
LoginController.prototype.doLogin = function() {
var that = this;
client.login('Aad').done(function(response) {
that.ons.navigator.resetToPage("page1.html", { title: 'Home' });
}, function (error) {
console.log(error);
});
};
Когда после входа в систему запускается HomeController, client.CurrentUser представляет собой объект с описанной выше структурой:
HomeController = function($scope) {
$scope.controllerhello = "Welcome home!";
if(client.currentUser == null) {
$scope.ons.navigator.pushPage("login.html", { title: 'Sign in' });
}
};
Я надеялся на такой ответ:
{
"userId": "Aad:o5ExTvSOMETHING_HEREpb0c",
"mobileServiceAuthenticationToken": "A_TOKEN",
"claims": {
userName: "someusername@me.onmicrosoft.com",
fullName: "Lars"
}
}
Как, если, я могу получить эти утверждения. Связано ли это с манифестом приложения в разделе управление azure AD -> приложения -> управление манифестом?
Ответ №1:
Мобильные службы не отправляют утверждения AAD клиенту, но их довольно легко получить с сервера с помощью пользовательского API. Большую часть необходимых данных можно получить, выполнив вызов AAD Graph API. Здесь хранится вся информация о ваших пользователях.
В этом сообщении в блоге показаны шаги для доступа к графику и представления имени пользователя AAD на экране с помощью узла.Серверная часть JS. Это немного устарело с точки зрения пользовательского интерфейса, но концепции все еще должны применяться. Теперь вместо нажатия кнопки «Управление разрешениями» вы перейдете в раздел «разрешения для других приложений» и установите соответствующие разрешения для приложений в «Windows Azure Active Directory».