linkorb/flex-auth-provider

Silex 服务提供程序,用于包含 FlexAuth 库。

安装次数: 1,022

依赖者: 1

建议者: 0

安全: 0

星星: 0

关注者: 4

分支: 2

开放问题: 0

类型:silex-provider

v1.3.2 2023-02-07 10:57 UTC

This package is auto-updated.

Last update: 2024-09-07 14:07:42 UTC


README

FlexAuth: Silex 提供程序

FlexAuthProvider 提供程序集成 FlexAuth 库到 Silex 框架。

使用

use Silex\Application;

$app = new Application();

//....

$app->register(new \Silex\Provider\SessionServiceProvider());
$app->register(new \FlexAuthProvider\FlexAuthProvider());

// define login page for redirect if jwt authentication is failed via browser 
$app['flex_auth.jwt.redirect_login_page'] = "/login";

$app['security.user_provider.main'] = function ($app) {
    return $app['flex_auth.security.user_provider'];
};

$app->register(new Silex\Provider\SecurityServiceProvider(), [
    'security.firewalls' => [
        'main' => [
            # https://silex.symfony.com/doc/2.0/cookbook/guard_authentication.html
            'guard' => [
                'authenticators' => [
                    'flex_auth.type.jwt.security.authenticator'
                ],
            ],
            'form' => [
                'login_path' => '/login',
                'default_target_path' => '/',
                'check_path' => '/login_check'
            ],
            'logout' => [
                'logout_path' => '/logout',
                'target_url' => 'homepage',
                'invalidate_session' => true
            ],
            'anonymous' => true,
        ],
    ],
]);
$app['security.default_encoder'] = function ($app) {
    return $pimple['flex_auth.security.password_encoder'];
    // return new \Symfony\Component\Security\Core\Encoder\PlaintextPasswordEncoder();
};

链接

Silex 示例

安全组件(Symfony 文档)