mach/silex-x509

Silex 的 X.509 认证提供者

2.0.1 2015-08-22 00:48 UTC

This package is not auto-updated.

Last update: 2024-09-14 13:38:45 UTC


README

Build Status

X509AuthenticationProvider 提供了一个 X.509 认证监听器,并启动它,以便您可以在 Silex 应用程序中轻松实现 X.509 证书认证。

参数

  • silex.x509.client_key: (可选) 用于客户端 ID 的头键(默认:SSL_CLIENT_S_DN)
  • silex.x509.credentials_key: (可选) 用于凭据的头键(默认:SSL_CLIENT_S_DN_Email)

注册

use Silex\Application;
use Silex\Provider\SecurityServiceProvider;
use Mach\Silex\X509\Provider\X509AuthenticationProvider;

$app = new Application();

$app->register(new SecurityServiceProvider(), [...]);

$app->register(new X509AuthenticationProvider());

示例防火墙配置

$app->register(new SecurityServiceProvider(), array(
    'security.firewalls' => array(
        'x509_cert' => array(
            'pattern' => '^.*$',
            'x509' => true,
            'users' => array(
                'dennis@example.com' => array('ROLE_USER', null),
                'admin@example.com'  => array('ROLE_ADMIN', null),
            ),
        ),
    ),
    'security.access_rules' => array(
        array('^/admin', 'ROLE_ADMIN'),
    ),
    'security.role_hierarchy' => array(
        'ROLE_ADMIN' => array('ROLE_USER'),
    ),
));