사용자 관리를 위해 FOSUserbundle을 사용하고 OAuth 인증을 위해 HWIOAuthBundle을 사용하는 응용 프로그램이 있습니다. 현재는 Facebook 만 있습니다.security.yml은 이미 제공받은 check_path를 요청합니다.
FOSUserBundle 템플릿에서 제공하는 로그인 양식을 통해 로그인 할 때이 오류가 계속 발생합니다.
보안 방화벽 구성에서 form_login을 사용하여 방화벽이 처리 할 검사 경로를 구성해야합니다.
페이스 북 버튼을 사용하여 로그인하면 로그인 할 수 없습니다.
다음은
security:
encoders:
FOS\UserBundle\Model\UserInterface: bcrypt
# Roles being defined
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: ROLE_ADMIN
# http://symfony.com/doc/current/book/security.html#where-do-users-come-from-user-providers
providers:
in_memory:
memory: ~
fos_userbundle:
id: fos_user.user_provider.username
firewalls:
# disables authentication for assets and the profiler, adapt it according to your needs
secured_area:
anonymous: ~
logout: ~
oauth:
resource_owners:
facebook: "/login/check-facebook"
login_path: /login
use_forward: false
failure_path: /login
oauth_user_provider:
service: my.custom.user_provider
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
main:
pattern: .*
provider: fos_userbundle
form_login:
login_path: fos_user_security_login
check_path: fos_user_security_check
use_forward: false
failure_path: null
logout:
path: fos_user_security_logout
target:/
anonymous: true
http_basic:
realm: "Reviews"
# main:
# activate different ways to authenticate
# http_basic: ~
# http://symfony.com/doc/current/book/security.html#a-configuring-how-your-users-will-authenticate
# form_login: ~
# http://symfony.com/doc/current/cookbook/security/form_login_setup.html
# Access controls
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/view, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin/, role: ROLE_ADMIN }
- { path: ^/create, role: ROLE_USER}
- { path: ^/edit, role: ROLE_USER}
- { path: ^/delete, role: ROLE_USER}
좋은 한 사람, 나는 주 방화벽으로 oauth를 이동하고 secured_area 매개 변수를 제거했습니다. – Tunds