Я использую старую версию Symfony (2.3.37) с библиотекой PDias / Saml (версия от октября 2014 г.) и Simplesamlphp (1.14).
Мне нужно показать 2 входа: Saml login(по умолчанию, путь "/") и форма входа в систему (ссылка на / login_2019_nrwd).
Оба метода входа в систему должны регистрировать пользователя в одной области (на всем сайте). Если я пытаюсь войти через форму с правильными данными, я перенаправляюсь на страницу входа в Saml.
Я пытался использовать тот же контекст для совместного использования логина, но он не работает. Где я не прав? Вот мой security.xml:
security:
encoders:
Curci\UserBundle\Entity\OperatingUser: bcrypt
Curci\UserBundle\Entity\LdapUser: plaintext
PDias\SamlBundle\Security\User\SamlUser: plaintext
role_hierarchy:
ROLE_STUDENT: ROLE_USER
ROLE_PROFESSOR: ROLE_USER
ROLE_PROJECT_MANAGER: ROLE_USER
ROLE_ADMIN: ROLE_USER
providers:
operating_user:
entity: { class: CurciUserBundle:OperatingUser, property: username }
ldap_user:
id: curci_user.security.ldap_user_provider
curci_user_provider:
chain:
providers: [ operating_user, ldap_user ]
samlservice:
id: saml.service.user.provider
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
login:
pattern: ^/login_2019_nrwd$
security: false
secured_area:
pattern: ^/login_2019_nrwd
form_login:
provider: curci_user_provider
login_path: curci_user_security_login
check_path: curci_user_security_login_check
csrf_provider: form.csrf_provider
logout: true
anonymous: true
context: saml_context
stateless: false
saml_secured:
pattern: ^/
context: saml_context
stateless: false
provider: samlservice
saml:
logout:
path: /logout
target: /
access_control:
- { path: ^/mobile/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/, roles: ROLE_USER }