В настоящее время я работаю над проектом с использованием платформы OKTA и API, но у меня есть несколько запросов.
Делая вызов GET для Список приложений, назначенных пользователю или же Список
Приложения, назначенные пользователю, Я получаю ответ на все добавленные приложения
к экземпляру ОКТА, а не к актуальным
сеанс пользователей. Есть флаг, который я пропускаю?
При получении результирующего массива для списка приложений он возвращает
все вспомогательные приложения Office 365 (почта, календарь и т. д.) в качестве дочерних массивов
в родительское приложение. Тем не менее, эти суб-приложения у ребенка
массивы не возвращаются со ссылками на изображения, которые другой стандарт
приложения делают. Теперь, когда я мог бы жестко код для них, это не
идеально. Любой совет по этому поводу?
Спасибо!
Есть два способа, которыми вы можете использовать список приложений, назначенных пользователю. Во-первых, это вызов на стороне сервера, который потребует токен API с правильными привилегиями. Во-вторых, это вызов браузера, когда у пользователя активная сессия с Okta. Вам понадобится имя пользователя, чтобы сделать второй звонок.
GET /api/v1/apps?filter=user.id+eq+"{{userId}}"
-> Со стороны сервера
GET /api/v1/users/{{username}}/appLinks
-> Из браузера / JavaScript
Чтобы проверить второй вызов, вставьте URL-адрес в браузер во время сеанса входа в систему, чтобы убедиться, что вы получите желаемый результат. Вам нужно будет отправить withCredentials: true
в xhrFields
если делать вызов AJAX. Например:
$.ajax({
type: "GET",
url: "https://example.okta.com/api/v1/users/{{username}}/appLink",
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
xhrFields: {
withCredentials: true
},
cache: false,
success: function(data, status)
{
},
error: function(data, status)
{
}
});
Оба вызова вернут приложения, назначенные пользователю.
Других решений пока нет …