Download the PHP package leaseweb/secure-controller-bundle without Composer
On this page you can find all versions of the php package leaseweb/secure-controller-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download leaseweb/secure-controller-bundle
More information about leaseweb/secure-controller-bundle
Files in leaseweb/secure-controller-bundle
Package secure-controller-bundle
Short Description Provide '@Secure' annotation to secure actions in controllers by specifying required roles
License MIT
Homepage http://www.leaseweblabs.com
Informations about the package secure-controller-bundle
LswSecureControllerBundle
Provide '@Secure' annotation to secure actions in controllers by specifying required roles.
NB: Instead of this bundle you may want to use the @Security annotation provided by the SensioFrameworkExtraBundle (Symfony 2.4+ feature)
NB: This bundle was created because the JMSSecurityExtraBundle is no longer provided in Symfony 2.3 (due to a license incompatibility) and this was the only feature we needed.
Requirements
- PHP 5.3
- Symfony 2.8
Installation
Installation is broken down in the following steps:
- Download LswSecureControllerBundle using composer
- Enable the Bundle
Step 1: Download LswSecureControllerBundle using composer
Add LswSecureControllerBundle in your composer.json:
Now tell composer to download the bundle by running the command:
Composer will install the bundle to your project's vendor/leaseweb
directory.
Step 2: Enable the bundle
Enable the bundle in the kernel:
Usage
As an example we show how to use the '@Secure' annotation in the AcmeDemoBundle to secure the "hello world" page requiring the role "ROLE_TEST" to execute.
In you should add the following line on top, but under the namespace definition:
To require the "ROLE_TEST" for "helloAction" in the "SecuredController" you should add the line to the DocBlock of the "helloAction" like this:
Or to the DocBlock of the controller like this:
If the user does not have the role the following error should appear when accessing the action:
If you put the "@Secure" annotation on an action that is not behind a firewall you get this error:
Note that you can configure the firewall in .
Credits
This would not have been possible without Matthias Noback his excellent posts:
- Symfony2 & Doctrine Common: creating powerful annotations
- Prevent Controller Execution with Annotations and Return a Custom Response
Contributors
License
This bundle is under the MIT license.
All versions of secure-controller-bundle with dependencies
symfony/framework-bundle Version >=2.8
doctrine/annotations Version @stable
symfony/security-bundle Version >=2.8
symfony/security-acl Version >=2.8