bigz / switch-user-stateless-bundle
用于在 Symfony API 上进行身份模拟的包
0.2.2
2020-07-23 21:36 UTC
Requires
- php: >=5.5
- symfony/config: ^2.3|^3.0|^4.0|^5.0
- symfony/dependency-injection: ^2.3|^3.0|^4.0|^5.0
- symfony/http-foundation: ^2.3|^3.0|^4.0|^5.0
- symfony/http-kernel: ^2.3|^3.0|^4.0|^5.0
- symfony/security-bundle: ^2.3|^3.0|^4.0|^5.0
- symfony/security-core: ^2.3|^3.0|^4.0|^5.0
- symfony/security-http: ^2.3|^3.0|^4.0|^5.0
Requires (Dev)
- behat/behat: ^3.0
- behat/symfony2-extension: ^2.0
- doctrine/doctrine-bundle: ^1.2
- doctrine/orm: ^2.2,>=2.2.3
- phpunit/phpunit: <5.0
- symfony/browser-kit: ^2.3|^3.0|^4.0|^5.0
- symfony/serializer: ^2.3|^3.0|^4.0|^5.0
Suggests
- psr/log: To log user requests
- symfony/event-dispatcher: To dispatch a switch user event
This package is not auto-updated.
Last update: 2024-09-14 19:53:25 UTC
README
此包提供了用于 API 的身份模拟功能(切换用户)。
安装
通过 Composer 安装此包
composer require lafourchette/switch-user-stateless-bundle
然后,更新您的应用程序内核
// app/AppKernel.php class AppKernel extends Kernel { public function registerBundles() { $bundles = [ // ... new LaFourchette\SwitchUserStatelessBundle\SwitchUserStatelessBundle(), ]; // ... } }
最后,按以下方式更新您的防火墙
# app/config/security.yml security: firewalls: main: # ... stateless: true switch_user_stateless: true
配置
您可以在 config.yml 中配置用于 HTTP 请求的参数以及切换用户的角色。以下示例是默认值。
# app/config/config.yml switch_user_stateless: parameter: 'X-Switch-User' role: 'ROLE_ALLOWED_TO_SWITCH'
用法
要使用此功能,您需要在发出的 HTTP 请求中添加一个 X-Switch-User
标头,其中包含您想要切换的用户名
X-Switch-User: johndoe
出于安全考虑,此功能仅对具有 ROLE_ALLOWED_TO_SWITCH
权限的用户可用。默认情况下,管理员用户具有此权限。