Аутентификация без пароля с Auth0 на платформе Symfony и HWIOAuthBundle

Я пытаюсь реализовать аутентификацию без пароля в одном из моих приложений Symfony с использованием Auth0 и этого HWIOAuthBundle, но я не могу найти способ сделать это с помощью документации...

Я нашел старый учебник, но он тоже не работает...

Кто-нибудь может мне помочь в этом? Я использую Symfony 3.4 на данный момент.

При следующей настройке я получаю электронное письмо, но когда я нажимаю на него, я перенаправляюсь на http://my_domain.dev/app_dev.php/login/ с сообщением An authentication exception occurred.

Мой config.yml

hwi_oauth:
    firewall_names: [secured_area]
    resource_owners:
        auth0:
            type:           auth0
            client_id:      my_client_id
            client_secret:  my_client_secret
            base_url:       https://my_domain.eu.auth0.com
            scope:          'openid, email'

Мой security.yml

security:
    providers:
         hwi:
             id: hwi_oauth.user.provider

    firewalls:
        secured_area:
            anonymous: ~
            oauth:
                resource_owners:
                    auth0: "/login/auth0"
                login_path:        /login
                use_forward:       false
                failure_path:      /login
                oauth_user_provider:
                    service: hwi_oauth.user.provider

    access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }

Мой routing.yml

hwi_oauth_redirect:
    resource: "@HWIOAuthBundle/Resources/config/routing/redirect.xml"
    prefix:   /connect

hwi_oauth_connect:
    resource: "@HWIOAuthBundle/Resources/config/routing/connect.xml"
    prefix:   /connect

hwi_oauth_login:
    resource: "@HWIOAuthBundle/Resources/config/routing/login.xml"
    prefix:   /login

auth0_login:
    path: /login/auth0

app:
    resource: '@AppBundle/Controller/'
    type: annotation

И, наконец, мой index.html.twig (запускается по умолчанию indexAction в проекте SF 3.4)

{% block body %}
    <script src="https://cdn.auth0.com/js/lock/11.6.1/lock.min.js"></script>
    <script>
        function login() {
            var lock = new Auth0LockPasswordless('my_client_id', 'my_domain.eu.auth0.com', {
                passwordlessMethod: "link",
                auth: {
                    redirectUrl: 'http://my_domain.dev/app_dev.php/login/auth0',
                    responseType: 'code'
                }
            });

            lock.show();
        }
    </script>

    <button onclick="login()">Login</button>
{% endblock %}

0 ответов

Другие вопросы по тегам