Пример аутентификации Flash Actionscript NTLM? - PullRequest
1 голос
/ 10 июля 2009

У кого-нибудь есть пример вызова веб-службы из actionscript 3.0 с установленной аутентификацией NTLM. Adobe Liveocs перечисляет проверку подлинности NTLM как поддерживаемую, но я не могу понять, куда передавать учетные данные пользователя.

Спасибо, Питер

Ответы [ 2 ]

1 голос
/ 13 июля 2009

Я уверен, что это невозможно напрямую, за исключением случаев, когда используется Adobe AIR. Информация аутентификации в LiveDocs применима только к AIR (маленький символ рядом с именем метода означает это).

Из небольшого прочтения о NTLM через HTTP похоже, что вам потребуется выполнить несколько запросов на основе кодов состояния HTTP, которые вы получаете с сервера. Само по себе это может быть проблематично, поскольку Flash в лучшем случае ненадежно предоставляет эти коды.

Кроме того, NTLM является схемой, основанной на соединении, и требует, чтобы вы поддерживали соединение между вторым и третьим запросами. Flash не может отправить заголовок keep-alive и не может создавать постоянные соединения. Я склонен думать, что это исключает возможность встроенной аутентификации NTLM с AS3.

Однако я НЕ эксперт по NTLM, и приведенный мной документ не является официальной версией спецификации NTLM over HTTP. Я не пойду настолько далеко, что сказать, что аутентификация NTLM с помощью Flash невозможна - это просто выглядит независимо от того, что это будет очень, очень сложно.

0 голосов
/ 15 октября 2012

Это возможно в ActionScript. Каждый ваш запрос будет оспариваться сервером, запрашивая в браузере учетные данные NTLM. Затем Internet Explorer добавляет соответствующий заголовок авторизации. Затем сервер проверит учетные данные и либо предоставит контент, либо запретит доступ.

Поскольку все это делается без ведома песочницы Flash Player, это то, что мы (будучи разработчиками в песочнице) не контролируем. Таким образом, мы не можем использовать ActionScript для предварительного добавления заголовка авторизации NTLM перед выполнением начального запроса, что обойдёт этап «вызова». То же самое относится и к Silverlight.

...