Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
flask-saml2 — Библиотека Flask для создания поставщиков услуг SAML и поставщиков удостоверений | Kitploit
Инструменты/GitHubGitHub/mx-moth/flask-saml2
Аутентификация и авторизацияИнструменты шифрования/дешифрованияВеб-безопасностьУтилиты и фреймворкиУправление идентификацией и доступом (IAM)Безопасность API
GitHubmx-moth/flask-saml2

flask-saml2

Библиотека Flask для создания поставщиков услуг SAML и поставщиков удостоверений

Репозиторий
70613 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

flask-saml2

.. note:: Ищем мейнтейнеров. Этот проект больше не поддерживается. Библиотека работает — вернее, работала, когда я пользовался ею в последний раз, — но я больше не работаю над проектом, для которого она была создана. Если вы заинтересованы в том, чтобы взять на себя руководство и сопровождение этого проекта, пожалуйста, свяжитесь со мной.

.. image:: https://travis-ci.com/timheap/flask-saml2.svg?branch=master :target: https://travis-ci.com/timheap/flask-saml2 .. image:: https://badge.fury.io/py/flask-saml2.svg :target: https://pypi.org/project/flask-saml2/ .. image:: https://readthedocs.org/projects/flask-saml2/badge/?version=latest :target: https://flask-saml2.readthedocs.io/en/latest/

Этот плагин Flask предоставляет функциональность для создания как поставщиков услуг (SAML Service Providers), так и поставщиков удостоверений (Identity Providers). Приложения могут реализовывать одного из этих поставщиков или обоих.

flask-saml2 работает с Flask 1.0+ и Python 3.6+.

Это сильно модифицированный форк NoodleMarkets/dj-saml-idp, который, в свою очередь, является форком deforestg/dj-saml-idp, который, в свою очередь, является форком novapost/django-saml2-idp_.

Терминология

За полным описанием того, как работает SAML, обратитесь к руководствам в интернете. Для краткого введения и обзора некоторой терминологии, используемой в этом пакете, читайте далее.

Протокол SAML — это диалог между двумя сторонами: поставщиками удостоверений (Identity Provider, IdP) и поставщиками услуг (Service Provider, SP). Когда неаутентифицированный клиент (обычно браузер) обращается к поставщику услуг, поставщик услуг формирует запрос аутентификации (AuthnRequest), подписывает его с помощью своего закрытого ключа и затем пересылает этот запрос через клиента поставщику удостоверений. После того как клиент входит в систему у центрального поставщика удостоверений, поставщик удостоверений формирует ответ, подписывает его и пересылает этот ответ через клиента запросившему поставщику услуг. Затем клиент аутентифицируется у поставщика услуг через центрального поставщика удостоверений, при этом поставщику услуг не нужно ничего знать о методе аутентификации или используемых паролях.

Примеры реализации

Минимальную, но функциональную примерную реализацию как поставщика услуг, так и поставщика удостоверений можно найти в каталоге examples/ этого репозитория. Чтобы запустить примеры, сначала склонируйте репозиторий и установите зависимости:

.. code-block:: console

root@kitploit:~
$ git clone https://github.com/timheap/flask-saml2
$ cd flask-saml2
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -e .
$ pip install -r tests/requirements.txt

Затем запустите IdP и SP в отдельных окнах терминала:

.. code-block:: console

root@kitploit:~
$ cd flask-saml2
$ source venv/bin/activate
$ ./examples/idp.py

.. code-block:: console

root@kitploit:~
$ cd flask-saml2
$ source venv/bin/activate
$ ./examples/sp.py

Наконец, перейдите по адресу http://localhost:9000/, чтобы открыть целевую страницу поставщика услуг.

Тестирование

В качестве средства запуска тестов используется pytest, а для запуска тестов на разных версиях Flask и Python мы используем tox. Тесты можно запускать локально, используя tox напрямую (желательно в виртуальном окружении)::

root@kitploit:~
$ pip install tox
$ tox

Лицензия

Распространяется под лицензией MIT License_.

.. _NoodleMarkets/dj-saml-idp: https://github.com/NoodleMarkets/dj-saml-idp .. _deforestg/dj-saml-idp: https://github.com/deforestg/dj-saml-idp .. _novapost/django-saml2-idp: https://github.com/novapost/django-saml2-idp .. _MIT License: https://github.com/mobify/dj-saml-idp/blob/master/LICENSE

Скачать инструмент