hermes-php / cerberus
此包已被弃用且不再维护。没有建议替代包。
受 Symfony 安全组件启发的完整的 PSR-7 身份验证系统
dev-master
2018-12-24 22:59 UTC
Requires
- php: >=7.2
- ext-sodium: *
- hansott/psr7-cookies: ^2.0
- php-http/message-factory: ^1.0
- psr/container: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.0
- psr/http-server-middleware: ^1.0
- tuupola/callable-handler: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.12
- phpunit/phpunit: ^7.3
- symfony/var-dumper: ^4.1
This package is not auto-updated.
Last update: 2019-08-18 18:27:20 UTC
README
一个受 Symfony 安全组件启发的完整的 PSR-7 身份验证系统。
此中间件的主要目的是使用灵活的、用户自定义的规则对请求进行身份验证,并生成一个 AuthenticationContext 对象以传递给中间件堆栈的其他部分。
防火墙:必须配置以下内容
- 模式
- CredentialManager(两种方法:提取和验证)
- AccountProvider
- AuthHandler(两种方法:处理成功,处理错误)
Firewall 本身就是一个中间件,因此我们有三层中间件
- 防火墙检测中间件:检查中间件是否匹配,并将其存储在请求属性中。
- 防火墙执行中间件:从请求中获取中间件并应用它。如果身份验证成功,则请求将有一个 AuthContext 对象。
实现
- LazyCredentialManager
- LazyAuthHandler
- LazyAccountProvider
- ChainAccountProvider
- LazyFirewall
- JwtCredentialManager
- FormLoginCredentialManager
- CookieCredentialManager
- ChainCredentialManager
- RedirectAuthHandler
- CookieRedirectAuthHandler
- JsonResponseAuthHandler
3步骤表单
- 提取凭证
- 提取用户
- 验证密码