Есть ли библиотека javascript для получения токена аутентификации с помощью Windows Azure Active Directory?

У меня есть ряд веб-сервисов, созданных с использованием Microsoft MVC4 Web Api и защищенных с помощью WIF и Windows Azure Active Directory (WAAD) с помощью WS-Fed.

У меня также есть чистый клиент одностраничного приложения HTML5/Javascript (SPA), которому необходимо получить доступ к этим веб-API.

Существуют ли какие-либо известные примеры/библиотеки в Javascript для обработки взаимодействий с WAAD для

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

Если нет, есть ли рекомендуемые ссылки на документацию, необходимую для реализации чего-то подобного.


comment
Существует библиотека javascript для аутентификации с использованием OAuth 2.0, ничего о ACS, о котором я знаю.   -  person letsc    schedule 13.05.2013


Ответы (1)


Страница (SPA) поступает с того же сервера, на котором размещены API? (тот же домен?) Если это так, то все должно "просто работать".

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

Если API находятся на другом сайте, но в том же домене высокого уровня (app.yoursite.com и api.yoursite.com), вы все равно можете установить файлы cookie и использовать WIF внизу. Убедитесь, что вы установили один и тот же ключ компьютера на обоих сайтах.

Если API находятся в совершенно другом домене, вам придется использовать другой подход. В этом случае я обычно рекомендую использовать Json Web Tokens (JWT) и CORS.

Я думаю, что WAAD может предоставить вам JWT, если вы настроите пространство имен ACS в своем экземпляре WAAD. Взгляните на этот документ, в котором описан процесс защиты WebAPI с помощью JWT (он не относится к WAAD, но механика была бы та же).

person Eugenio Pace    schedule 26.04.2013
comment
Можно ли использовать подход JWT и CORS только с Javascript? - person BMH; 16.01.2014
comment
Да, это возможно. Этот пост может помочь: blog.auth0. com/2014/01/07/ - person Eugenio Pace; 16.01.2014
comment
Изменилось ли что-нибудь в этом пространстве с момента сборки 2014? можно ли авторизоваться, используя чистый javascript - person Madu Alikor; 07.05.2014