nextcloud/tests
Lukas Reschke 6a16df7288
Add new auth flow
This implements the basics for the new app-password based authentication flow for our clients.
The current implementation tries to keep it as simple as possible and works the following way:

1. Unauthenticated client opens `/index.php/login/flow`
2. User will be asked whether they want to grant access to the client
3. If accepted the user has the chance to do so using existing App Token or automatically generate an app password.

If the user chooses to use an existing app token then that one will simply be redirected to the `nc://` protocol handler.
While we can improve on that in the future, I think keeping this smaller at the moment has its advantages. Also, in the
near future we have to think about an automatic migration endpoint so there's that anyways :-)

If the user chooses to use the regular login the following happens:

1. A session state token is written to the session
2. User is redirected to the login page
3. If successfully authenticated they will be redirected to a page redirecting to the POST controller
4. The POST controller will check if the CSRF token as well as the state token is correct, if yes the user will be redirected to the `nc://` protocol handler.

This approach is quite simple but also allows to be extended in the future. One could for example allow external websites to consume this authentication endpoint as well.

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-25 20:18:49 +02:00
..
acceptance Merge pull request #4462 from danxuliu/fix-sharing-password-protected-link 2017-04-25 14:12:44 +02:00
apps [App Code Check] add check for version and mandatory fields 2015-09-24 11:58:12 +02:00
Core Add new auth flow 2017-04-25 20:18:49 +02:00
data Fix translations 2017-04-18 16:40:53 -05:00
docker Namespace and array syntax fixes 2017-03-19 14:52:54 -06:00
lib Merge pull request #3531 from nextcloud/theming-scss 2017-04-25 10:56:13 -03:00
objectstore make object prefix configurable 2016-11-14 15:10:56 +01:00
Settings Add installed category in AppSettingsControlerTest 2017-04-25 00:22:57 +02:00
travis Changed name of default logfile from owncloud.log to nextcloud.log. 2016-07-04 11:50:32 +02:00
apps.php Fix the tests again 2016-05-25 16:51:02 +02:00
bootstrap.php unit test adjustment 2017-04-07 18:06:50 +08:00
enable_all.php Fix tests 2016-10-31 17:17:45 +01:00
karma.config.js JS tests for upload only function 2017-04-18 20:43:25 +05:45
phpunit-autotest-external.xml Adjust the phpunit config 2016-05-25 15:14:37 +02:00
phpunit-autotest.xml Fix tests 2017-04-04 10:29:12 +02:00
preseed-config.php add ci support for s3 object store 2017-01-02 14:17:19 +01:00
startsessionlistener.php Make compatible with PHPUnit 5.1 2015-12-10 09:22:41 +01:00