Я пытаюсь создать расширение браузера, которое проверяет подлинность пользователей через Shibboleth - и мне интересно, как получить сеанс Shibboleth в моем расширении, чтобы он работал во всех вкладках/окнах. Я ничего не видел о Shib онлайн, поэтому оцените любые рекомендации. Мой вопрос похож на this, но аутентификация может произойти на отдельной вкладке (или она должна появиться в окне расширения?).Аутентификация пользователя в расширении браузера (через Shibboleth)
Эти two SO questions указывают на некоторые полезные рекомендации по расширениям в целом, а также некоторые советы для обработки безопасности/логин (для Firefox и для Chrome). Тем не менее, они оба ссылаются на встроенную библиотеку (например, OAuth или Firefox Login Manager), где пользователь прямо указывает имя пользователя/пароль на расширение. Поскольку я использую Shibboleth, мой вариант использования кажется другим, и я не уверен, как обрабатывать этот процесс. Мои первоначальные мысли:
- Пользователь нажимает кнопку «Войти» в расширение.
- Пользователь перенаправляется на страницу входа в систему-в полном окне, а не в расширении (например, расширений браузера eBay или Diigo)
- входа пользователя в систему с учетными данными Шибболет.
- Приложение Django на стороне сервера делает вещи ... устанавливает cookie сеанса - но доступно ли это для расширения? В моем тестировании это, похоже, не работает (т. Е. Мое приложение все еще не аутентифицировано на сервере, даже если я аутентифицирован на той же вкладке)
- Расширение ищет файл cookie сеанса, и если он его находит, он обрабатывает пользователя как аутентифицированный. ??
- Расширение должно быть как инструмент букмарклета (например, Diigo) - может ли «безопасный сеанс» распространяться на любые вкладки/окна, которые открывается пользователем? Мое понимание - нет (because it is domain specific), но как же расширения (например, eBay или Diigo) работают на сайтах?
Более широкий способ задать вопрос: как расширения, такие как eBay или Diigo, обрабатывают сеанс пользователя? Оба направляют вас на страницу входа в «полное окно» для входа в систему вместо использования библиотек расширения, специфичных для браузера, но расширения работают во всех вкладках ...
Кроме того, будет ли этот процесс легко переноситься через Safari/Firefox/Chrome?
Спасибо!
Спасибо, Андрей, за ваш ответ. Спустя много часов я узнал, что моя проблема несколько отличается, но ваш ответ правильный для вопроса, который я задал. Моя проблема заключалась в том, что я не знал, что вам нужно «мусор», а затем повторно установить расширения Chrome, когда манифест изменится (т. Е. Когда я изменил хосты в разрешениях). Поэтому я должен был включить хост, который настраивал мой файл cookie Shibboleth, уничтожить расширение и переустановить его ... – user
Вы можете использовать распакованное расширение, это значительно упрощает такие тесты изменений, вам просто нужно перезагрузить расширение. – Andrey
По какой-то причине это не сработало ... Я всегда использовал распакованное расширение, но иногда мне просто нужно его мусор и повторно загружать распакованное расширение, чтобы изменения вступили в силу (может быть, моя настройка). – user