[!!!][FEATURE] Introduce single _cli_ user for all CLI calls 89/51089/6
authorBenni Mack <benni@typo3.org>
Sun, 1 Jan 2017 20:32:54 +0000 (21:32 +0100)
committerSusanne Moog <susanne.moog@typo3.org>
Tue, 10 Jan 2017 12:44:32 +0000 (13:44 +0100)
commit6a1da0b3f0f1f4fb4225b510dd54fee904830cb7
treee3cde26d659450d92f4bfef5db9c76b5f306129c
parente3779b1f51d58550de201c057ca901e6b7d33ab2
[!!!][FEATURE] Introduce single _cli_ user for all CLI calls

The command line users prefixing with _CLI_scheduler etc. is flawed,
however a single user is needed for doing e.g. DataHandler calls.

This patch adds a new CommandLineUserAuthentication class, which extends
the regular $BE_USER object to only allow a user called "_cli_" and which
is created automatically if it does not exist, so the _cli_ user always
exists.

Additionally, the _cli_ user is now an admin user so access settings
on command line are obsolete and crucial stuff like the DataHandler can
be used without restrictions.

* Adapt Extbase Bootstrap
* Make sure to have an API to "opt-in" for the need for a user
* Adapt documentation (e.g. in scheduler) because a new user is not needed.

Resolves: #79240
Releases: master
Change-Id: I5a6277fa2252ce6c61f57bbfa26e8be9dc47bbab
Reviewed-on: https://review.typo3.org/51089
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Susanne Moog <susanne.moog@typo3.org>
Tested-by: Susanne Moog <susanne.moog@typo3.org>
typo3/sysext/backend/Classes/Console/CliRequestHandler.php
typo3/sysext/core/Classes/Authentication/BackendUserAuthentication.php
typo3/sysext/core/Classes/Authentication/CommandLineUserAuthentication.php [new file with mode: 0644]
typo3/sysext/core/Classes/Console/CommandRequestHandler.php
typo3/sysext/core/Classes/Core/Bootstrap.php
typo3/sysext/core/Configuration/DefaultConfiguration.php
typo3/sysext/core/Documentation/Changelog/master/Feature-79240-SingleCliUserForCliCommands.rst [new file with mode: 0644]
typo3/sysext/extbase/ext_localconf.php
typo3/sysext/lowlevel/Configuration/Commands.php
typo3/sysext/lowlevel/ext_localconf.php
typo3/sysext/scheduler/ext_localconf.php