helthe / security-api
Helthe API 安全组件
1.0.0
2014-02-21 05:29 UTC
Requires
- php: >=5.3.3
- symfony/security: ~2.3
This package is auto-updated.
Last update: 2024-08-29 03:11:58 UTC
README
Helthe API 安全是一个库,用于使用 Symfony 安全组件进行 API 密钥认证。
安装
使用 Composer
手动安装
在您的 composer.json 中添加以下内容
{
"require": {
// ...
"helthe/security-api": "~1.0"
}
}
使用命令行
$ composer require 'helthe/security-api=~1.0'
使用方法
认证提供者
提供了一个实现 AuthenticationProviderInterface 的 API 认证提供者,支持 PreAuthenticatedToken。一旦认证成功,用户将通过 ApiKeyAuthenticatedToken 进行认证,它是 PreAuthenticatedToken 的扩展,其中不会删除 API 密钥。
用户提供者
该库提供自己的 UserProviderInterface,必须由提供给 ApiKeyAuthenticationProvider 的用户提供者实现。
示例
use Helthe\Component\Security\Api\Authentication\Provider\ApiKeyAuthenticationProvider; use Symfony\Component\Security\Core\User\UserChecker; // Helthe\Component\Security\Api\User\UserProviderInterface $userProvider = new InMemoryUserProvider( array( 'admin' => array( 'api_key' => 'foo', ), ) ); // for some extra checks: is account enabled, locked, expired, etc.? $userChecker = new UserChecker(); $provider = new ApiKeyAuthenticationProvider( $userProvider, $userChecker, 'your_api', ); $provider->authenticate($unauthenticatedToken);
防火墙
提供了两个扩展自 AbstractPreAuthenticatedListener 的防火墙监听器。 HttpHeaderListener 检查 Request 头部中的 API 密钥,而 QueryStringListener 检查 Request 查询字符串。
错误
对于错误或功能请求,请 创建一个问题。