Подтвердить что ты не робот

Какова цель артефакта SAML?

Я видел кучу блок-схемы о том, как она передается между провайдером удостоверений (IdP), поставщиком услуг (SP) и браузером через перенаправления. Однако сейчас это кажется ненужным, поэтому я знаю, что я что-то пропустил.

Может ли кто-нибудь предоставить мне прецедент, когда требуется артефакт SAML (или очень полезный) по сравнению с тем, что он не используется?

Спасибо.

4b9b3361

Ответ 1

Как правило, целью привязки артефакта является уменьшение потока сообщений SAML через браузер. Это может быть связано с ограничениями браузера (браузерами с ограничениями на строку запроса/размером полезной нагрузки POST) или без поддержки JavaScript (для автоматически отправленных форм) или даже для улучшения модели безопасности того, как транспортируются сообщения SAML. Используя артефакты, конфиденциальные данные, передаваемые в заявлении SAML Assertion/Attribute, не передаются через браузер, поэтому они могут быть скрыты от конечного пользователя или злоумышленников между вашим сайтом и конечным пользователем. Эти конфиденциальные данные будут разрешаться непосредственно между сайтами через обратный поиск канала.

Раздел 3.6.2 Спецификации SAML 2.0 Bindings подводит итог:

Связывание HTTP Artifact предназначено для случаев, когда SAML реквестер и ответчик должны общаться с помощью пользовательского агента HTTP в качестве посредника, но промежуточные ограничения исключают или препятствовать передаче всего сообщения (или обмена сообщениями) через это. Это может быть по техническим причинам или из-за нежелание публиковать содержимое сообщения посреднику (и если использование шифрования нецелесообразно). Обратите внимание, что из-за необходимости для последующего разрешения артефакта с использованием другого синхронного как SOAP, прямой канал связи должен существовать между отправителя сообщения SAML и получателя в обратном направлении передача артефакта (приемник сообщения и артефакт должен быть в состоянии отправить запрос обратно к артефакту эмитент). Эмитент-артефакт должен также поддерживать состояние, пока артефакт находится на рассмотрении, что имеет последствия для балансировки нагрузки сред.

Ответ 2

Развернувшись на ответе Скотта Т, профиль SAML Artifact был разработан для повышения безопасности. Чтобы предотвратить изменение пользователем SAML среднего уровня трафика (например, изменение имени пользователя, ролей и т.д.), SAML 2.0 предполагает, что разработчики подписывают утверждения через XML-подписи. XML-подписи, однако, чрезвычайно уязвимы для атак с упаковкой XML из-за проблем на всех существующих XML-синтаксисах. Посетите https://www.usenix.org/conference/usenixsecurity12/breaking-saml-be-whoever-you-want-be, чтобы увидеть атаки обертки XML в действии против утверждений SAML.

Профиль SAML Artifact разрешает эту проблему, создавая одноразовый "артефакт", который передается пользователю поставщика услуг (через перенаправление или сообщение), а не в SAML Assertion. Когда поставщик услуг получает одноразовый артефакт, он отправляет запрос разрешения на изменение артефакта SAML (содержащий артефакт) в службу разрешения артефакта поставщика удостоверений (ARIS). Затем ARS откликается на ответ SAML Artifact Response (содержащий утверждение SAML пользователя), тем самым предотвращая изменение пользователем SAML-утверждения пользователем, поскольку оно напрямую принимается Поставщиком услуг по обратному каналу.

Ответ 3

Сообщение SAML передается от одного объекта к другому либо по значению, либо по ссылке. ссылка на сообщение SAML называется артефактом. Получатель артефакта разрешает ссылку, отправляя запрос непосредственно эмитенту артефакта, который затем отвечает фактическим сообщением, на которое ссылается артефакт.

Обратитесь SAML 2.0,

Без артефакта нет никакого способа добраться до фактического сообщения.

Обратите внимание, что это необходимо только при использовании HTTP Artifact Binding. (В отличие от более распространенного HTTP POST Binding, которое просто отправляет сообщение SAML).

Ответ 4

Еще одна причина использования привязки HTTP Artifact заключается в том, что вы можете использовать SSL для обеспечения целостности и конфиденциальности сообщений SAML. Заявителю и ответчику SAML не нужно подписывать, проверять, шифровать и расшифровывать сообщение SAML.

Ответ 5

он может считаться теперь неактуальным, но профиль артефактов также полезен, если у вас низкая пропускная способность между пользовательским агентом и серверами sp и idp и лучшая полоса пропускания между sp и idp. Утверждение (тяжелое) не распространяется от idp к ua и от ua к sp, и оно может демонстрировать лучшую производительность в определенных условиях.