Commit Graph

391 Commits

Author SHA1 Message Date
Vladimir Reznichenko
81f81812a5 [2.3] Static Code Analysis for Components 2016-01-12 12:31:34 +01:00
Hugo Hamon
cab6fd531e [Security] backported phpdoc from Guard component. 2015-12-10 09:14:03 +01:00
Fabien Potencier
f95078c409 security #16631 n/a (xabbuh)
This PR was merged into the 2.3 branch.

Discussion
----------

n/a

n/a

Commits
-------

f88e600 migrate session after remember me authentication
2015-11-23 11:22:15 +01:00
Christian Flothmann
f88e600833 migrate session after remember me authentication 2015-11-23 11:04:06 +01:00
Christian Flothmann
819aa54fe4 prevent timing attacks in digest auth listener 2015-11-23 11:02:49 +01:00
Christian Flothmann
f1fd7686c5 fix potential timing attack issue 2015-11-23 11:02:49 +01:00
Klaas Cuvelier
e8f0e5afd8 [2.3][SECURITY] Add remember me cookie configuration 2015-10-06 16:28:55 +02:00
Fabien Potencier
1c4ea85787 bug #14842 [Security][bugfix] "Remember me" cookie cleared on logout with custom "secure"/"httponly" config options [1] (MacDada)
This PR was squashed before being merged into the 2.3 branch (closes #14842).

Discussion
----------

[Security][bugfix] "Remember me" cookie cleared on logout with custom "secure"/"httponly" config options [1]

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #14822
| License       | MIT
| Doc PR        | ~

* test now always pass "secure" and "httponly" options, as they are required
* could be considered BC, but [`RememberMeFactory` passes them](https://github.com/symfony/symfony/blob/2.3/src/Symfony/Bundle/SecurityBundle/DependencyInjection/Security/Factory/RememberMeFactory.php#L21), so they should've always been treated as required
* I can squash the commits before merging
* Alternative solution: #14843

Commits
-------

18b1c6a [Security][bugfix] "Remember me" cookie cleared on logout with custom "secure"/"httponly" config options [1]
2015-10-05 16:40:32 +02:00
Dawid Nowak
18b1c6a235 [Security][bugfix] "Remember me" cookie cleared on logout with custom "secure"/"httponly" config options [1] 2015-10-05 16:40:29 +02:00
Grégoire Pineau
335825363d [Security] Do not save the target path in the session for a stateless firewall 2015-07-26 20:14:09 +02:00
Hugo Hamon
1fc03155d4 [Security] removed useless else condition in SwitchUserListener class. 2015-07-22 15:05:05 +02:00
Richard van Laak
01ee3f6cda [Security] Initialize SwitchUserEvent::targetUser on attemptExitUser
The `SwitchUserEvent` is triggered in case an account is switched. This works okay while switching to the user, but on exit the `SwitchUserEvent` is triggered again with the original User. That User was not initialized by the provider yet.

load user by UserInterface instead of username
2015-06-28 20:33:21 +02:00
ogizanagi
57d30f9746 Fix quoting style consistency. 2015-06-28 12:13:08 +02:00
Javier Eguiluz
e8b924c2d3 Standardize the name of the exception variables 2015-06-15 18:26:34 +02:00
Fabien Potencier
089d9f734a minor #14670 [Security] TokenBasedRememberMeServices test to show why encoding username is required (MacDada)
This PR was squashed before being merged into the 2.3 branch (closes #14670).

Discussion
----------

[Security] TokenBasedRememberMeServices test to show why encoding username is required

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #14577
| License       | MIT
| Doc PR        | no

241538d shows that it's not actually tested, 257b796 reimplements it with test.

I can remove the POC commit if it's not needed.

Commits
-------

63a9736 [Security] TokenBasedRememberMeServices test to show why encoding username is required
2015-05-21 06:29:49 +02:00
Dawid Nowak
63a9736350 [Security] TokenBasedRememberMeServices test to show why encoding username is required 2015-05-21 06:29:39 +02:00
Fabien Potencier
2cf230d6a6 bug #14678 [Security] AbstractRememberMeServices::encodeCookie() validates cookie parts (MacDada)
This PR was squashed before being merged into the 2.3 branch (closes #14678).

Discussion
----------

[Security] AbstractRememberMeServices::encodeCookie() validates cookie parts

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #14577
| License       | MIT
| Doc PR        | no

`AbstractRememberMeServices::encodeCookie()` guards against `COOKIE_DELIMITER` in `$cookieParts`.

* it would make `AbstractRememberMeServices::cookieDecode()` broken
* all current extending classes do it anyway (see #14670 )
* added tests – it's not a public method, but it is expected to be used by user implementations – as such, it's good to know that it works properly

Commits
-------

464c39a [Security] AbstractRememberMeServices::encodeCookie() validates cookie parts
2015-05-21 06:28:27 +02:00
Dawid Nowak
464c39a77f [Security] AbstractRememberMeServices::encodeCookie() validates cookie parts 2015-05-21 06:28:25 +02:00
Alessandro Siragusa
9ee74eaef0 Avoid redirection to XHR URIs 2015-05-20 10:40:29 +02:00
Fabien Potencier
984d82cbe5 minor #14121 CS: Pre incrementation/decrementation should be used if possible (gharlan)
This PR was merged into the 2.3 branch.

Discussion
----------

CS: Pre incrementation/decrementation should be used if possible

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | n/a
| License       | MIT
| Doc PR        | n/a

Fixes provided by new fixer: https://github.com/FriendsOfPHP/PHP-CS-Fixer/pull/1113

If this pr is merged I would change the level of the fixer to `symfony`.

Commits
-------

c5123d6 CS: Pre incrementation/decrementation should be used if possible
2015-05-15 15:28:34 +02:00
Dawid Nowak
a73d2cc685 PhpDoc fix in AbstractRememberMeServices
All extending classes return `UserInterface`, not TokenInterface:

* https://github.com/symfony/symfony/blob/2.3/src/Symfony/Component/Security/Http/RememberMe/TokenBasedRememberMeServices.php#L64
* https://github.com/symfony/symfony/blob/2.3/src/Symfony/Component/Security/Http/RememberMe/PersistentTokenBasedRememberMeServices.php#L116

And `AbstractRememberMeServices` actually required the return value to be `UserInterface`:

            $user = $this->processAutoLoginCookie($cookieParts, $request);

            if (!$user instanceof UserInterface) {
                throw new \RuntimeException('processAutoLoginCookie() must return a UserInterface implementation.');
            }
2015-05-07 16:20:47 +02:00
Dariusz Ruminski
cfa3e95f4d CS fixes 2015-04-16 09:01:03 +02:00
Gregor Harlan
c5123d6881 CS: Pre incrementation/decrementation should be used if possible 2015-04-07 19:54:22 +02:00
Fabien Potencier
36948bb382 minor #14038 CS: fix some license headers (keradus)
This PR was merged into the 2.3 branch.

Discussion
----------

CS: fix some license headers

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | ?
| Fixed tickets | N/A
| License       | MIT
| Doc PR        | N/A

Commits
-------

2b74841 CS: fix some license headers
2015-03-24 17:57:18 +01:00
Dariusz Ruminski
2b74841b5b CS: fix some license headers 2015-03-24 17:44:35 +01:00
Dariusz Ruminski
6a16d917fe CS: Ensure there is no code on the same line as the PHP open tag and it is followed by a blankline 2015-03-24 17:36:00 +01:00
Dariusz Ruminski
f99c22c08a CS: Convert double quotes to single quotes 2015-03-21 12:11:30 +01:00
Vladimir Reznichenko
968275624a Php Inspections (EA Extended) - static code analysis includes:
Reduce couple count calls in [Yaml]
Modernize type casting, fix several strict comparisons
Unsets merged
Elvis operator usage
Short syntax for applied operations
2015-03-07 20:12:23 +01:00
Fabien Potencier
d9c0c55ace bug #13466 [Security] Remove ContextListener's onKernelResponse listener as it is used (davedevelopment)
This PR was squashed before being merged into the 2.3 branch (closes #13466).

Discussion
----------

[Security] Remove ContextListener's onKernelResponse listener as it is used

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets |
| License       | MIT
| Doc PR        |

The context listeners are specific to a particular firewall, and as such, should not be applied if the current request doesn't match that context listener. To avoid this, the context listener can remove itself from the dispatcher as it is called.

This comes in to affect when two or more firewalls are setup and using the same kernel for multiple requests.  Assuming there are two firewalls 'site' and 'admin'

- Request comes in matching 'site' firewall, 'site' ContextListener adds it's onKernelResponse method to the dispatcher
- Succesful auth for 'site'
- ContextListener writes token to session
- Request comes in matching 'admin' firewall, 'admin' ContextListener can't find anything in the session, so nulls the token in the security context
- 'site' ContextListener listens for response, can't find a token in the security context so removes the 'site' token from the session

Commits
-------

380d805 [Security] Remove ContextListener's onKernelResponse listener as it is used
2015-02-05 11:02:25 +01:00
Dave Marshall
380d8052ac [Security] Remove ContextListener's onKernelResponse listener as it is used 2015-02-05 11:01:10 +01:00
sarah khalil
50973bace1 Removed dead code and various cleaning 2015-01-21 21:14:55 +01:00
Alexander M. Turek
5d0b527dea [Security] Don't destroy the session on buggy php releases. 2015-01-07 09:13:06 +01:00
Fabien Potencier
ec38936fbf adapted previous commit for 2.3 2015-01-03 11:25:34 +01:00
blanchonvincent
119b0917dc [Security] Don't send remember cookie for sub request 2015-01-03 11:24:57 +01:00
Graham Campbell
83c15db887 [2.3] CS And DocBlock Fixes 2014-12-22 16:58:09 +01:00
Alexander Schwenn
5dd11e67a4 [Security] Delete old session on auth strategy migrate 2014-12-20 02:42:01 +01:00
Graham Campbell
0fc3369b35 CS fixes 2014-12-03 20:10:26 +00:00
Graham Campbell
443307edc1 Docblock fixes 2014-11-30 13:33:44 +00:00
Daniel Wehner
ace9a22101 Add machine readable events 2014-11-16 18:21:02 +01:00
Disquedur
51312d31cc Remove aligned '=>' and '=' 2014-10-26 08:30:58 +01:00
Fabien Potencier
369aebf431 fixed CS 2014-09-22 10:32:35 +02:00
WouterJ
be04c5000c Unify null comparisons 2014-07-26 11:54:23 +02:00
alcaeus
ba8fc166ca Fixed incompatibility of x509 auth with nginx 2014-04-22 09:12:31 +02:00
Fabien Potencier
5b72e5ab04 minor #10717 unified return null usages (fabpot)
This PR was merged into the 2.3 branch.

Discussion
----------

unified return null usages

| Q             | A
| ------------- | ---
| License       | MIT

This PR unifies the way we return `null` from a function or method:

 * always use `return;` instead of `return null;` (the current code base uses both);
 * never use `return;` at the end of a function/method.

Commits
-------

d1d569b unified return null usages
2014-04-18 22:35:25 +02:00
Fabien Potencier
e96b018805 fixed types in phpdocs 2014-04-16 12:30:19 +02:00
Fabien Potencier
d1d569bf7b unified return null usages 2014-04-16 09:43:51 +02:00
Fabien Potencier
810b9ed107 made {@inheritdoc} annotations consistent across the board 2014-04-16 09:04:20 +02:00
Fabien Potencier
3c9c10f3a0 made phpdoc types consistent with those defined in Hack 2014-04-15 07:41:45 +02:00
Fabien Potencier
0555b7f2ab made types consistent with those defined in Hack 2014-04-13 20:00:14 +02:00
ureimers
7fc0c5f1fd Update DefaultAuthenticationSuccessHandler.php 2014-03-14 13:21:43 +01:00