Нужен пример конфигурации брандмауэра Symfony2 http_digest
Я хочу изменить http_basic на http_digest для брандмауэра, но на самом деле не задокументировано, как настроить http_digest.
Там ссылка кажется неполной или не актуальной:
http://symfony.com/doc/2.0/reference/configuration/security.html
http_basic:
provider: name
http_digest:
provider: name
Однако в примере в книге используется область, а не поставщик.
http://symfony.com/doc/current/book/security.html
http_basic:
realm: "Secured Demo Area"
По крайней мере, этот пример работает, но когда я изменяю http_basic на http_digest, ключ (не задокументированный) отсутствует.
ErrorException: Примечание: неопределенный индекс: введите строку..\vendor\symfony\src\Symfony\Bundle\SecurityBundle\DependencyInjection\Security\Factory\HttpDigestFactory.php 80
http_digest:
realm: "Secured Demo Area"
key: "whatever"
Добавление ключа, похоже, работает, но после входа в систему возникает другая ошибка:
Неустранимая ошибка: вызов неопределенного метода Symfony\Component\Security\Http\EntryPoint\DigestAuthenticationEntryPoint::getKey() в..\vendor\symfony\src\Symfony\Component\Security\Http\Firewall\DigestAuthenticationListener.php в строке 79
В этот момент я понятия не имею, чего не хватает в моей конфигурации. Мне просто нужен рабочий пример для http_digest с Symfony 2.
1 ответ
Это, кажется, решено в текущей версии Symfony2 (2.0.10) .
secured_area:
pattern: ^/admin
http_digest:
realm: "Admin"
key: "thisismykey"
У меня работает нормально.