Roeland Jago Douma
579162d7b9
Allow 2FA to be setup on first login
...
Once 2FA is enforced for a user and they have no 2FA setup yet this will
now prompt them with a setup screen. Given that providers are enabled
that allow setup then.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-05-17 10:11:53 +07:00
Roeland Jago Douma
2dcb4cfbd6
Allow clients to delete their own apptoken
...
Fixes #15480
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-05-17 09:52:06 +07:00
Christoph Wurst
170582d4f5
Add a login chain to reduce the complexity of LoginController::tryLogin
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-05-07 18:04:36 +07:00
Roeland Jago Douma
7e7146db7f
Block install without CAN_INSTALL file
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-04-11 09:32:33 +07:00
Joas Schilling
c5560117da
Make the endpoint more robust against faulty resource providers
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-28 09:26:38 +07:00
Joas Schilling
21425eb964
Return 200 instead of 404 when asking for collections of a resource
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-19 13:13:53 +07:00
Joas Schilling
3022ef687a
Use rich objects instead of name, link and icon
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-19 13:06:55 +07:00
Joas Schilling
403b673b93
Replace the icon-class with an absolute link to an image
...
Otherwise the icon can not be displayed in mobile apps
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-19 13:06:55 +07:00
Joas Schilling
eecd9323c5
Also check the access to collections on preparing
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:58 +07:00
Joas Schilling
59c92a7513
Further work on the access cache
...
Searching for all is still a problem
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:19 +07:00
Joas Schilling
dee6f7f61f
Fix doc blocks
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:18 +07:00
Julius Härtl
e404ce7096
Implement search and rename in backend
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-01 20:56:18 +07:00
Julius Härtl
53ac9bdda1
Implement frontend for search/rename
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Move to vuex
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-01 20:56:18 +07:00
Julius Härtl
88aa3de784
Add iconClass to resources
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-01 20:56:17 +07:00
Julius Härtl
555afff015
Make sure we query the node before fetching the name
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-01 20:56:17 +07:00
Julius Härtl
a72a6d73a3
Adjust parameter names on createCollectionOnResource
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-01 20:56:16 +07:00
Joas Schilling
702dcfb728
Make names mandatory
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:16 +07:00
Joas Schilling
5dfc56e925
Allow to create collections
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:15 +07:00
Joas Schilling
136d2c39ac
Provider functionality
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:15 +07:00
Joas Schilling
65a9ab47ea
Add a controller with the most important methods
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:15 +07:00
Joas Schilling
55f627d20b
Add an event to the Autocomplete Controller to allow to filter the results
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-02-26 15:32:14 +07:00
Morris Jobke
5cbe6532a0
Fix typo in info log for autoconfig
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-02-25 21:28:22 +07:00
Roeland Jago Douma
e819e97829
Login flow V2
...
This adds the new login flow. The desktop client will open up a browser
and poll a returned endpoint at regular intervals to check if the flow
is done.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-25 07:24:50 +07:00
Daniel Kesselberg
c583c5e7e2
Emit event if app password created
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-18 17:47:43 +07:00
Daniel Kesselberg
149a98edf6
Publish activity for app token created by client login flow
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-17 23:49:54 +07:00
Daniel Kesselberg
2ade2bef8c
Publish activity for app token created by ocs api
...
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2019-02-17 23:37:22 +07:00
Morris Jobke
0e9903c420
Merge pull request #13969 from nextcloud/enh/additional_scripts_no_on_public_pages
...
No need to emit additonalscript event on public pages
2019-02-07 15:57:14 +07:00
Michael Weimann
bf1253cb49
Implement guest avatar endpoint
...
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-02-07 14:23:16 +07:00
Roeland Jago Douma
60e5a5eca4
Do not do redirect handling when loggin out
...
Fixes #12568
Since the clearing of the execution context causes another reload. We
should not do the redirect_uri handling as this results in redirecting
back to the logout page on login.
This adds a simple middleware that will just check if the
ClearExecutionContext session variable is set. If that is the case it
will just redirect back to the login page.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-06 11:29:32 +07:00
Roeland Jago Douma
b68567e9ba
Add StandaloneTemplateResponse
...
This can be used by pages that do not have the full Nextcloud UI.
So notifications etc do not load there.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-02-06 11:26:18 +07:00
Roeland Jago Douma
deb7d2364f
Merge pull request #13869 from nextcloud/enh/clean_pending_2fa_session_on_password_change
...
Clean pending 2FA authentication on password reset
2019-01-29 19:50:15 +07:00
Roeland Jago Douma
ac8a6e2244
Clean pending 2FA authentication on password reset
...
When a password is reste we should make sure that all users are properly
logged in. Pending states should be cleared. For example a session where
the 2FA code is not entered yet should be cleared.
The token is now removed so the session will be killed the next time
this is checked (within 5 minutes).
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-29 13:08:56 +07:00
Michael Weimann
e083e8abc6
Clears the local storage after logout
...
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2019-01-29 09:02:52 +07:00
Roeland Jago Douma
e6333c8fe3
Honor remember_login_cookie_lifetime
...
If the remember_login_cookie_lifetime is set to 0 this means we do not
want to use remember me at all. In that case we should also not creatae
a remember me cookie and should create a proper temp token.
Further this specifies that is not 0 the remember me time should always
be larger than the session timeout. Because else the behavior is not
really defined.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-23 08:46:24 +07:00
Roeland Jago Douma
66367797df
Fix template paramter
...
Else we get shown an error page instead of the correct 403.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-18 15:30:38 +07:00
Roeland Jago Douma
d0397f9b53
Generic message on password reset
...
There is no need to inform the user if the account existed or not.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-15 15:53:43 +07:00
Christoph Wurst
208788173d
Npmize (vendor) scripts
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-01-09 15:01:59 +07:00
Roeland Jago Douma
e6ac233947
Fix loginflow with apptoken enter on iOS
...
It seems iOS doesn't like us to change the location. So now we submit it
to the server that geneartes the redirect.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-01-04 21:51:36 +07:00
Roeland Jago Douma
763b52d402
Fix SAML Client login flow on Apple devices
...
Because the redirect from the SAML/SSO endpoint is a POST the lax/strict
cookies are not properly send.
Note that it is not strictly requried on this endpoint as we do not need
the remember me data. Only the real session info is enough. The endpoint
is also already protected by a state token.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-17 12:50:32 +07:00
John Molakvoæ (skjnldsv)
5e4990fadd
Remove redirect page
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-11-29 10:27:22 +07:00
Roeland Jago Douma
43d6ae7476
Respect the disabled setting for lost_password_link
...
Fixes #11146
As documented when it is set to disabled the user can't request a lost
password.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-20 13:28:40 +07:00
Roeland Jago Douma
92582a350d
Use the proper server for the apptoken flow login
...
If a user can't authenticate normally (because they have 2FA that is not
available on their devices for example). The redirect that is generated
should be of the proper format.
This means
1. Include the protocol
2. Include the possible subfolder
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-11-01 11:45:35 +07:00
Rayn0r
85eb43baff
added possibility to disable autocomplete in login form
...
Signed-off-by: Rayn0r <Andre.Weidemann@web.de>
2018-10-30 11:36:16 +07:00
Julius Härtl
d21ded67a7
Keep list of icons in a separate file for use in the accessibility app
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-10-25 12:16:10 +07:00
Morris Jobke
e0f9257be9
Merge pull request #11847 from iPaat/Fix/DeleteCookiesThroughClearSiteData
...
Remove cookies from Clear-Site-Data Header
2018-10-23 17:04:45 +07:00
Thomas Citharel
d63de5471b
Don't require Same Site Cookies on assets
...
Which can be used for public iframe embeeding
See https://github.com/nextcloud/calendar/issues/169
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-17 09:24:21 +07:00
Patrick Conrad
1806baaeaf
Remove cookies from Clear-Site-Data Header
...
In 2f87fb6b45 this header was introduced. The referenced documentation says:
> When delivered with a response from https://example.com/clear , the following header will cause cookies associated with the origin https://example.com to be cleared, as well as cookies on any origin in the same registered domain (e.g. https://www.example.com/ and https://more.subdomains.example.com/ ).
This also applies if `https://nextcloud.example.com/ ` sends the `Clear-Site-Data: "cookies"` header.
This is not the behavior we want at this point!
So I removed the deletion of cookies from the header. This has no effect on the logout process as this header is supported only recently and the logout works in old browsers as well.
Signed-off-by: Patrick Conrad <conrad@iza.org>
2018-10-15 14:46:06 +07:00
Morris Jobke
7971ba5cc6
Merge pull request #10898 from nextcloud/feature/10684/default-logo-color-theme-colors
...
Switches the default logo color depending on the primary color
2018-10-08 10:33:22 +07:00
Roeland Jago Douma
78273cb1e6
Add an endppoint for clients to request an app password
...
Now that we allow enforcing 2 factor auth it make sense if we also allow
and endpoint where the clients can in the background fetch an
apppassword if they were configured before the login flow was present.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-10-03 19:05:20 +07:00
Roeland Jago Douma
d9febae5b2
Update all the publickey tokens if needed on web login
...
* On weblogin check if we have invalid public key tokens
* If so update them all with the new token
This ensures that your marked as invalid tokens work again if you once
login on the web.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-10-02 19:50:54 +07:00
Michael Weimann
a45ec3d324
Refactors the scss svg functions
...
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2018-10-02 08:37:55 +07:00
Michael Weimann
d855c38e07
Moves the logo files to logo
...
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2018-10-02 08:37:54 +07:00
blizzz
ef97ef72f6
Merge pull request #10743 from danielkesselberg/bugfix/noid/allow-password-reset-for-duplicate-email
...
Enable password reset for user with same email address when only one is active
2018-09-13 10:48:30 +07:00
Roeland Jago Douma
be2d8cc4e9
Do not invalidate main token on OAuth
...
Fixes #10584
We deleted the main token when using the login flow else mutliple tokens
would show up for a single user.
However in the case of OAuth this is perfectly fine as the
authentication happens really in your browser:
1. You are already logged in, no need to log you out
2. You are not logged in yet, but since you log in into the exact same
browser the expected behavior is to stay logged in.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-09-06 08:30:52 +07:00
Morris Jobke
cf3f4888cc
Change password expiration time from 12h to 7d
...
We use the same logic for creating accounts without a password and there the 12h is a bit short. Users don't expect that the signup link needs to be clicked within 12h - 7d should be a more expected behavior.
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-08-31 13:31:03 +07:00
Morris Jobke
6099786c8d
Merge pull request #10670 from nextcloud/fix/login-throttle-username-length
...
Fix max length requirements for the throttler metadata
2018-08-24 16:25:35 +07:00
Daniel Kesselberg
031fdfb1fc
Enable password reset for user with same email address when only one is active
...
When two or more user share the same email address its not possible to
reset password by email. Even when only one account is active.
This pr reduce list of users returned by getByEmail by disabled users.
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2018-08-19 16:32:46 +07:00
Bjoern Schiessle
dfec66ca02
only warn about data lose on password reset if per-user keys are used
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-08-15 15:08:34 +07:00
Christoph Wurst
42300d19e9
Fix max length requirements for the throttler metadata
...
If a failed login is logged, we save the username as metadata
in the bruteforce throttler. To prevent database error due to
very long strings, this truncates the username at 64 bytes in
the assumption that no real username is longer than that.long strings,
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-08-13 15:52:09 +07:00
Christoph Wurst
d8197f2b97
Rename providerset method to get primary providers
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-08-08 20:28:21 +07:00
Christoph Wurst
c6e47e8a51
Fix login redirection if only one 2FA provider is active
...
Fixes https://github.com/nextcloud/server/issues/10500 .
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-08-08 15:25:59 +07:00
Joas Schilling
decd196162
Make the info available if the avatar was uploaded or generated
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-08-01 10:56:22 +07:00
Morris Jobke
70fa73404f
Merge pull request #10391 from nextcloud/bugfix/10389/fix-app-navigation-controller
...
Fix app navigation controller to return an array
2018-07-25 14:11:49 +07:00
Julius Härtl
4c773891d7
Fix app navigation controller to return an array
...
This is required to not break compatibility with existing consumers of that endpoint like the apps management or the client
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-07-25 13:50:46 +07:00
Joas Schilling
12efde520d
Allow to access SVGs as guest
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-07-25 12:05:18 +07:00
Michael Weimann
c92d7429d7
Implements handling for deactivated users
...
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2018-07-21 13:05:13 +07:00
John Molakvoæ (skjnldsv)
37a4d2bbbc
Php code bump
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 22:46:32 +07:00
Julius Härtl
bfc6fc8e50
Fix settings icon fetching
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-07-19 08:17:00 +07:00
John Molakvoæ (skjnldsv)
61946819ba
Fixed svg generator regex && added missing icons
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:59 +07:00
John Molakvoæ (skjnldsv)
9e5885963c
Fixed icons detection and caching
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:58 +07:00
John Molakvoæ (skjnldsv)
8977c71f88
Mixin scss icon api
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:58 +07:00
John Molakvoæ (skjnldsv)
ccd70a4099
use built in response cacheFor function
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:58 +07:00
John Molakvoæ (skjnldsv)
29ff7efe9a
Svg icon api sass function and upgrade of all styles
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:57 +07:00
John Molakvoæ (skjnldsv)
98a0113d40
Svg from app
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:30 +07:00
John Molakvoæ (skjnldsv)
84e90e26c0
Svg color api
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-07-19 08:16:30 +07:00
Arthur Schiwon
ca6094f390
wire the frontend
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-07-05 20:29:00 +07:00
Arthur Schiwon
772bbd99be
Backend work to provide NC whats New info to users
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-07-05 14:33:08 +07:00
Morris Jobke
9444a3fad1
Merge pull request #9632 from nextcloud/enhancement/stateful-2fa-providers
...
Stateful 2fa providers
2018-06-25 15:49:58 +07:00
Robin Appelman
8ed50d4b63
prefill userid for login after password reset
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-06-21 15:18:07 +07:00
Christoph Wurst
13d93f5b25
Make 2FA providers stateful
...
This adds persistence to the Nextcloud server 2FA logic so that the server
knows which 2FA providers are enabled for a specific user at any time, even
when the provider is not available.
The `IStatefulProvider` interface was added as tagging interface for providers
that are compatible with this new API.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-06-20 08:30:26 +07:00
John Molakvoæ (skjnldsv)
543188d0cb
Removed debug stack
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-06-15 15:40:10 +07:00
John Molakvoæ (skjnldsv)
156da29cea
Avatar imagick bump
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-06-13 18:46:05 +07:00
John Molakvoæ (skjnldsv)
eea6f74ca4
Controller tests fixes
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-06-13 18:46:04 +07:00
John Molakvoæ (skjnldsv)
adf3856d35
Return Svg avatars
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2018-06-13 18:46:04 +07:00
Roeland Jago Douma
e5cc8be9d5
Fix usage
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-04 08:48:54 +07:00
Morris Jobke
245d20f9ac
Merge pull request #9531 from remyj38/master
...
Fix translation bug on lost password page
2018-05-22 16:31:30 +07:00
Roeland Jago Douma
5a97148863
Don't use special chars to avoid confusion
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-05-22 09:24:17 +07:00
Rémy Jacquin
04e1cab5ee
Fix translation bug on lost password page
...
Fix nextcloud/password_policy#26
Signed-off-by: Rémy Jacquin <remy@remyj.fr>
2018-05-20 12:51:50 +07:00
Arthur Schiwon
38a90130ce
move log constants to ILogger
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 10:45:52 +07:00
Roeland Jago Douma
a07f6d46e3
Use proper types
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-11 00:21:25 +07:00
Morris Jobke
fd3c97b93b
Avoid to leak a user ID that is not a string to reach a user backend
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-04-11 00:03:30 +07:00
Roeland Jago Douma
b2350810e0
Merge pull request #9115 from nextcloud/feature/noid/login_flow_wording
...
Improve login flow
2018-04-09 08:45:27 +07:00
Roeland Jago Douma
177c8972cc
Improve login flow
...
* Add page explaining you are about to grant access
* Show grant access page after login
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-08 13:42:36 +07:00
Roeland Jago Douma
33b93db953
Remove unused parameter
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-06 21:44:23 +07:00
Roeland Jago Douma
2b7d4d5069
Fix tests
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-06 19:58:37 +07:00
Roeland Jago Douma
caee215120
Always remember me
...
Fixes #8004
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-04-06 15:44:28 +07:00
Joas Schilling
dabd7291c3
Make the new autocomplete endpoint OCS
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-03-21 09:46:52 +07:00
Roeland Jago Douma
796b4f19f8
Add Cache-control: immutable
...
Cache generated CSS forever!
Also cache combined JS forever
Fix tests
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-19 14:21:53 +07:00
Roeland Jago Douma
7674e591bd
Move search to proper Controller
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-03-09 14:36:48 +07:00
Christoph Wurst
b9720703e8
Add CSRF token controller to retrieve the current CSRF token
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2018-03-08 16:48:50 +07:00
Julius Härtl
11b6cc3f68
Replace logout href to avoid new etag on every request
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-03-06 09:51:28 +07:00
Julius Härtl
723b8764d1
Add ETag to NavigationController
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-03-05 12:19:20 +07:00
Bjoern Schiessle
7d0102bf73
expose capabilities in js
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2018-02-27 12:29:25 +07:00
Joas Schilling
226e63695f
Merge pull request #8026 from nextcloud/feature/noid/allow-custom-html-in-html-emails
...
Allow custom HTML in HTML Emails
2018-02-26 13:38:39 +07:00
Arthur Schiwon
ffc05e2fed
don't try login with the same name that just failed
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-02-22 13:05:48 +07:00
Roeland Jago Douma
cf83eb5e77
Merge pull request #8336 from nextcloud/cleanup-unused-parameter
...
Cleanup unused parameter
2018-02-20 10:16:59 +07:00
Morris Jobke
14bc9b1714
Merge pull request #8095 from nextcloud/webapps-capabilities
...
Expose navigation entries as API endpoint
2018-02-15 16:55:12 +07:00
Joas Schilling
339e320064
Fix existing usages
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-02-15 12:18:51 +07:00
Morris Jobke
d3d045dd5c
Remove unused import statements
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-14 16:55:43 +07:00
Morris Jobke
bcf1668cc8
Remove config from AutoCompleteController
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-02-13 21:40:30 +07:00
Julius Härtl
5a23b35ddb
Also rewrite icon url
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-02-12 21:20:21 +07:00
Julius Härtl
922cf44c81
Move to OCS endpoint
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-02-12 17:22:33 +07:00
Julius Härtl
8ecac56543
Allow requesting absolute URLs
...
They might be useful when requesting the navigation from the clients
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-02-12 17:22:32 +07:00
Julius Härtl
6211d18dc1
Add tests for NavigationController
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-02-12 17:22:32 +07:00
Julius Härtl
96480af159
Add navigation endpoint
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-02-12 17:22:32 +07:00
Roeland Jago Douma
0224c61530
Add preview endpoint for the fileid
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-24 11:24:18 +07:00
Morris Jobke
3d4c698f44
Improve OC_Image code to not guess the type of input, but actually request the specific methods to be called
...
Followup to #7836
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-18 13:40:55 +07:00
Morris Jobke
4ef302c0be
Request->getHeader() should always return a string
...
PHPDoc (of the public API) says that this method returns string but it also returns null, which is not allowed in some method calls. This fixes that behaviour and returns an empty string and fixes all code paths that explicitly checked for null to be still compliant.
Found while enabling the strict_typing for lib/private for the PHP7+ migration.
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-17 09:51:31 +07:00
Roeland Jago Douma
7cab7feb38
Display message when connection is throttled on logi page
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-15 21:43:09 +07:00
Mario Danic
cc742ce9e7
Fix bug with proxies
...
Signed-off-by: Mario Danic <mario@lovelyhq.com>
2018-01-15 00:50:49 +07:00
Morris Jobke
68e205e827
Merge pull request #7712 from nextcloud/jsconfig_l10n
...
Use correct L10N files for jsconfig
2018-01-05 15:22:10 +07:00
Roeland Jago Douma
30ac28f950
Use correct L10N files for jsconfig
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-05 14:33:03 +07:00
Roeland Jago Douma
82f03e1314
Clear login token once apppassword is generated
...
Fixes #7697
When using the new login flow a token will be generated since we login.
However after that we generate yet another token to return (as we
should).
However we should kill the current session token as we are done with it.
And will never use it again.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-01-04 14:30:40 +07:00
Arthur Schiwon
4f3d52a364
never translate login names when requiring with a user id
...
where appropriate, the preLoginNameUsedAsUserName hook should be thrown.
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-01-03 13:25:00 +07:00
Julius Härtl
f5f6ed664d
Hide stay logged in checkbox when flow authentication is used
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-12-28 11:15:26 +07:00
Roeland Jago Douma
c1fcd6fc98
Merge pull request #7324 from nextcloud/no-sorters-no-instances
...
don't create sorter instances when none was requested
2017-12-11 15:27:44 +07:00
Morris Jobke
ed7beb929e
Merge pull request #6876 from nextcloud/always_img_avatar
...
Always generate avatar
2017-12-08 23:58:17 +07:00
Roeland Jago Douma
ba648eecdf
Move avatar code to Avatar Class
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-29 14:23:15 +07:00
Roeland Jago Douma
604596ec16
Always generate avatar
...
Even if no avatar is set we should just generate the image. This to not
duplicate the code on all the clients. And only server images from the
avtar endpoint.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-29 14:23:15 +07:00
Arthur Schiwon
96bc03a03a
don't create sorter instances when none was requested
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-11-28 13:30:51 +07:00
Mario Danic
c2cd5fc5d3
Fix flow
...
Signed-off-by: Mario Danic <mario@lovelyhq.com>
2017-11-09 00:29:34 +07:00
Julius Härtl
cd1bfea8c4
Theming: theme flow redirection page
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-11-08 14:56:32 +07:00
Morris Jobke
31c5c2a592
Change @georgehrke's email
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 20:38:59 +07:00
Morris Jobke
0eebff152a
Update license headers
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +07:00
Roeland Jago Douma
6ce095b166
Add 204 endpoint
...
Fixes #6967
This allows clients to check for Walled Garden connections.
The endpoint just responds with a 204 (which is very unlikely with such
a connection)
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-11-02 10:30:16 +07:00
Arthur Schiwon
25aad121e6
meanwhile we can have exact matches. also show those.
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-10-31 14:58:48 +07:00
Arthur Schiwon
ca72c0150b
configurable amount of autocomplete results in comments
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-10-27 13:50:38 +07:00
Arthur Schiwon
fa2f03979b
add search parameter to autocomplete controller
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-10-25 17:26:50 +07:00
Arthur Schiwon
fd6daf8d19
AutoCompletion backend
...
* introduce a Controller for requests
* introduce result sorting mechanism
* extend Comments to retrieve commentors (actors) in a tree
* add commenters sorter
* add share recipients sorter
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-10-22 14:13:32 +07:00
Joas Schilling
3119fd41ce
Set the data from the template
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 15:12:03 +07:00
Joas Schilling
8b37fe7f65
Set the subject with the email template to allow theming
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 15:12:03 +07:00
Lukas Reschke
8ad17a66d6
Exclude avatar from Same-Site Cookie requirement
...
Required to work with the upcoming Collabora avatar integration.
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-10-11 14:41:34 +07:00
Lukas Reschke
0bccd5a0d9
Fix "Uninitialized string offset: 0 at \/media\/psf\/stable9\/lib\/private\/URLGenerator.php#224"
...
The URLGenerator doesn't support `` as target for absolute URLs, we need to link to `/` thus.
Regression introduced with 46229a00f3
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-09-07 08:34:02 +07:00
Morris Jobke
504c1abee0
Fix undefined index oauthState
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-09-06 16:38:24 +07:00
Morris Jobke
15cd21d252
Merge pull request #6358 from nextcloud/fix-mixup-of-id-and-name
...
Set the meta data before everything
2017-09-05 16:08:57 +07:00
Joas Schilling
6dbb64c4a2
Merge setMetaData into constructor
...
This ensures that the meta data is set in the beginning
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-04 15:07:41 +07:00
Morris Jobke
30ca3b70ed
Merge pull request #6196 from nextcloud/downstream-26539-2
...
Handle invalid ext storage backend to keep mount point visible
2017-09-04 14:17:28 +07:00
Morris Jobke
0326c2c54f
Fix broken tests
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-09-04 14:17:03 +07:00
Julius Härtl
46229a00f3
Add rich link preview to the login page
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-09-02 21:39:38 +07:00
Joas Schilling
0aff1c9268
Return the user id in case of an error
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-29 11:10:30 +07:00
Morris Jobke
2bf15eda26
Merge pull request #6255 from nextcloud/email-meta-data
...
Add meta information to emails for better customisation
2017-08-26 18:53:52 +07:00
Morris Jobke
0b652648cc
Merge pull request #6177 from nextcloud/properly-add-slo-url
...
Properly allow \OCP\Authentication\IApacheBackend to specify logout URL
2017-08-26 18:50:52 +07:00
Christoph Wurst
6676232a56
Allow 2FA providers to specify their custom CSP
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-08-26 13:48:08 +07:00
Joas Schilling
6a130d01e7
Also for reset password
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-24 18:02:37 +07:00
Lukas Reschke
2e4cd44556
Inject \OCP\IURLGenerator to make tests work
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-08-18 15:32:40 +07:00
Joas Schilling
d5c6d56170
No password reset for disabled users
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-18 13:21:53 +07:00
Lukas Reschke
a04feff9a7
Properly allow \OCP\Authentication\IApacheBackend to specify logout URL
...
Any `\OCP\Authentication\IApacheBackend` previously had to implement `getLogoutAttribute` which returns a string.
This string is directly injected into the logout `<a>` tag, so returning something like `href="foo"` would result
in `<a href="foo">`.
This is rather error prone and also in Nextcloud 12 broken as the logout entry has been moved with
054e161eb5 inside the navigation manager where one cannot simply inject attributes.
Thus this feature is broken in Nextcloud 12 which effectively leads to the bug described at nextcloud/user_saml#112 ,
people cannot logout anymore when using SAML using SLO. Basically in case of SAML you have a SLO url which redirects
you to the IdP and properly logs you out there as well.
Instead of monkey patching the Navigation manager I decided to instead change `\OCP\Authentication\IApacheBackend` to
use `\OCP\Authentication\IApacheBackend::getLogoutUrl` instead where it can return a string with the appropriate logout
URL. Since this functionality is only prominently used in the SAML plugin. Any custom app would need a small change but
I'm not aware of any and there's simply no way to fix this properly otherwise.
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-08-18 12:22:44 +07:00
Morris Jobke
84c22fdeef
Merge pull request #5907 from nextcloud/add-metadata-to-throttle-call
...
Add metadata to \OCP\AppFramework\Http\Response::throttle
2017-08-01 14:43:47 +07:00
Roeland Jago Douma
75771a108b
Fix OCSController
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-08-01 08:20:15 +07:00
Roeland Jago Douma
e945f2bc3a
Fix ContactsMenuController
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-08-01 08:20:15 +07:00
Roeland Jago Douma
aa6d8fcdbf
Fix AvatarController
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-08-01 08:20:15 +07:00
Lukas Reschke
f22ab3e665
Add metadata to \OCP\AppFramework\Http\Response::throttle
...
Fixes https://github.com/nextcloud/server/issues/5891
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-07-27 14:17:45 +07:00
Morris Jobke
188b87e03b
Cleanup legacy user class from unused methods
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-07-24 12:17:53 +07:00
Julius Härtl
51a0741005
Add public capabilities API
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2017-06-30 11:08:04 +07:00
Lukas Reschke
2f87fb6b45
Add Clear-Site-Data header
...
This adds a Clear-Site-Data header to the logout response which will delete all relevant data in the caches which may contain potentially sensitive content.
See https://w3c.github.io/webappsec-clear-site-data/#header for the definition of the types.
Ref https://twitter.com/mikewest/status/877149667909406723
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-06-20 19:46:10 +07:00
Lukas Reschke
26ee889fec
Add tests for ClientFlowLoginController
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-05-18 20:49:08 +07:00
Lukas Reschke
b07a0f51ba
Add OAuth state to session
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-05-18 20:49:08 +07:00
Bjoern Schiessle
23b296b66e
use name of oauth app to identify auth token
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-05-18 20:49:07 +07:00
Bjoern Schiessle
a74d67b69c
show error page if no valid client identifier is given and if it is not a API request
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-05-18 20:49:06 +07:00
Lukas Reschke
e86749121c
Remove special characters
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-05-18 20:49:05 +07:00
Lukas Reschke
5f71805c35
Add basic implementation for OAuth 2.0 Authorization Code Flow
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-05-18 20:49:03 +07:00
Joas Schilling
0828df5ed4
Disable the API endpoints as well
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-11 17:03:57 +07:00
Ujjwal Bhardwaj
7c23414eef
Disable reset password link. Issue: #27440
2017-05-11 10:27:33 +07:00
Joas Schilling
d418ea550b
Automatic injection for CssController
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-10 09:42:40 +07:00
Joas Schilling
9c8fe82000
Automatic injection for JsController
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-05-10 09:42:15 +07:00
Mario Danic
e4aac15a92
Update login flow redirection
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-05-04 19:21:22 +07:00
Morris Jobke
23cc309606
Handle more error cases
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-05-02 13:43:48 +07:00
Georg Ehrke
60f9ed6241
add contactsmenu popover
...
Signed-off-by: Georg Ehrke <developer@georgehrke.com>
2017-04-26 09:26:53 +07:00
Jan-Christoph Borchardt
241e397326
Merge branch 'master' into contactsmenu
...
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2017-04-26 00:50:38 +07:00
Christoph Wurst
36cee1f386
Let apps register contact menu provider via info.xml
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-04-25 20:47:17 +07:00
Christoph Wurst
d091793ceb
Contacts menu
...
* load list of contacts from the server
* show last message of each contact
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-04-25 20:47:17 +07:00
Roeland Jago Douma
aae079aa29
AppToken to 72 chars
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-04-25 20:18:49 +07:00
Roeland Jago Douma
bb5e5efa6d
Do not remove the state token to early
...
we should check the stateToken before we remove it. Else the check will
always fail.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-04-25 20:18:49 +07:00
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 +07:00
Christoph Wurst
bb1d191f82
Fix remember redirect_url on failed login attempts
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-04-25 09:38:19 +07:00
Joas Schilling
3d671cc536
Merge pull request #4443 from nextcloud/cleanup-unused-imports
...
Remove unused use statements
2017-04-24 11:47:37 +07:00
Lukas Reschke
8a1d3c7e87
Merge pull request #4434 from nextcloud/add-rate-limiting-to-solve-challenge-controller
...
Add rate limit to TOTP solve challenge controller
2017-04-24 10:03:19 +07:00
Morris Jobke
c54a59d51e
Remove unused use statements
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-22 19:23:31 +07:00
Lukas Reschke
d0d34d308a
Add at most 10 password reset requests per 5 minutes and IP range
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-22 08:12:54 +07:00
Lukas Reschke
c1b8f152d8
Add rate limit to TOTP solve challenge controller
...
Fixes https://github.com/nextcloud/server/issues/2626
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-22 07:59:40 +07:00
Morris Jobke
16c4755e03
Rename renderHTML to renderHtml
...
* fixes #4383
* improves consistency
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-19 15:46:41 +07:00
Lukas Reschke
727688ebd9
Adjust existing bruteforce protection code
...
- Moves code to annotation
- Adds the `throttle()` call on the responses on existing annotations
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-14 13:42:40 +07:00
Lukas Reschke
8149945a91
Make BruteForceProtection annotation more clever
...
This makes the new `@BruteForceProtection` annotation more clever and moves the relevant code into it's own middleware.
Basically you can now set `@BruteForceProtection(action=$key)` as annotation and that will make the controller bruteforce protected. However, the difference to before is that you need to call `$responmse->throttle()` to increase the counter. Before the counter was increased every time which leads to all kind of unexpected problems.
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-13 23:05:33 +07:00
Lukas Reschke
81d3732bf5
Merge pull request #4308 from nextcloud/lost-password-email
...
Update email template for lost password email
2017-04-13 20:02:15 +07:00
Morris Jobke
d36751ee38
Merge pull request #2424 from nextcloud/fix-login-controller-test-consolidate-login
...
Fix login controller test and consolidate login
2017-04-13 12:16:38 +07:00
Lukas Reschke
66835476b5
Add support for ratelimiting via annotations
...
This allows adding rate limiting via annotations to controllers, as one example:
```
@UserRateThrottle(limit=5, period=100)
@AnonRateThrottle(limit=1, period=100)
```
Would mean that logged-in users can access the page 5 times within 100 seconds, and anonymous users 1 time within 100 seconds. If only an AnonRateThrottle is specified that one will also be applied to logged-in users.
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-04-13 12:00:16 +07:00
Morris Jobke
7cb6038fca
Merge pull request #3043 from nextcloud/issue-3038-no-logentry-on-email-login
...
Dont create a log entry on email login
2017-04-13 01:04:11 +07:00
Morris Jobke
1f962f9115
Update email template for lost password email
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-12 15:19:53 +07:00
Morris Jobke
5b4adf66e5
Move OC_Defaults to OCP\Defaults
...
* currently there are two ways to access default values:
OCP\Defaults or OC_Defaults (which is extended by
OCA\Theming\ThemingDefaults)
* our code used a mixture of both of them, which made
it hard to work on theme values
* this extended the public interface with the missing
methods and uses them everywhere to only rely on the
public interface
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-04-09 21:43:01 +07:00
Joas Schilling
7ad791efb4
Dont create a log entry on email login
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-04-07 10:15:20 +07:00
Arthur Schiwon
7b3fdfeeaa
do login routine only once when done via LoginController
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-04-06 15:22:42 +07:00
Arthur Schiwon
2994cbc586
fix login controller tests
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2017-04-06 15:20:17 +07:00
Roeland Jago Douma
6bdd3a167d
Merge pull request #4123 from nextcloud/allow-password-reset-with-email
...
Allow to reset the password with the email as an input
2017-04-05 09:12:41 +07:00
Morris Jobke
9813023aab
Fix gzip files for Safari
...
* Safari support gzip only if the filename does not
end on .gz - so this renames them to .gzip
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-03-29 00:11:51 +07:00
Roeland Jago Douma
54f9b35f71
Allow to gzip CSS/JS files
...
Since in production the SCSS files are compiled once and the javascript
files are combined once we can just as well gzip them aggresively.
This means that once they are requested and the browser supports gzip we
can just serve the gzipped file saving precious bandwidth.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-03-28 21:46:23 +07:00
Joas Schilling
4bae7ef96d
Allow to reset the password with the email as an input
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-03-28 21:17:37 +07:00
Roeland Jago Douma
8e89ad21a2
[PoC] JS Combiner
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-03-24 10:58:10 +07:00
blizzz
19fc68cbdc
Merge pull request #2606 from temparus/master
...
Add preLoginValidation hook
2017-02-15 21:47:47 +07:00
Joas Schilling
ac841ee002
Merge pull request #3362 from nextcloud/fix/nc-token-cookie-name
...
oc_token should be nc_token
2017-02-09 10:07:59 +07:00
Sandro Lutz
9b6f99ab08
Update license header
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-07 01:25:39 +07:00
Sandro Lutz
fa1d607bfa
Merge remote-tracking branch 'nextcloud/master'
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-07 00:15:30 +07:00
Sandro Lutz
ff3fa538e4
Add missing use statement for PublicEmitter
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-07 00:12:19 +07:00
Christoph Wurst
5e728d0eda
oc_token should be nc_token
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-02-02 21:56:44 +07:00
Sandro Lutz
20f878b014
Fix typo for UserManager variable
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-01 21:54:00 +07:00
Sandro Lutz
6feff0ceba
Add check if UserManager is of type PublicEmitter before calling preLogin hook
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-01 21:53:50 +07:00
Sandro Lutz
e30d28f7eb
Change where preLogin hook gets called
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-01 21:53:42 +07:00
Sandro Lutz
6ab0a3215d
Remove preLoginValidation hook
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-01 21:53:29 +07:00
Sandro Lutz
e14d50eb1f
Fix indentation
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-01 21:50:47 +07:00
Sandro Lutz
4ebcd5ac0b
Add preLoginValidation hook
...
Signed-off-by: Sandro Lutz <sandro.lutz@temparus.ch>
2017-02-01 21:50:25 +07:00
John Molakvoæ (skjnldsv)
2c9d7eeb76
Fix public page css fallback loading
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2017-02-01 18:03:51 +07:00
Morris Jobke
5bad417e57
Merge pull request #2044 from nextcloud/login-credential-store
...
Login credential store
2017-01-30 19:30:04 +07:00
Bjoern Schiessle
5086335643
unify endpoints form core and the the provisioning api
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-01-25 11:20:35 +07:00
Lukas Reschke
bde1150d04
Merge pull request #3004 from nextcloud/fix-installation-css
...
Fixed installation page
2017-01-22 18:28:33 +07:00
Bjoern Schiessle
927d3865a0
add brute force protection to password reset to make it harder to guess user logins
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-01-19 10:12:45 +07:00
Bjoern Schiessle
cdf01feba7
add action to existing brute force protection
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-01-18 15:25:16 +07:00
Morris Jobke
622101f2dd
Merge pull request #2918 from nextcloud/encryption-recovery-improvements
...
create new encryption keys on password reset and backup the old one
2017-01-13 11:28:43 +07:00
Christoph Wurst
140555b786
always allow remembered login
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-01-11 19:20:11 +07:00
Christoph Wurst
243c9c0941
fix coding style and increase code coverage
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2017-01-11 11:01:54 +07:00
Cornelius Kölbel
e077e01bf2
Add a TwoFactorException
...
A Two Factor third party App may throw a TwoFactorException()
with a more detailed error message in case the authentication fails.
The 2FA Controller will then display the message of this Exception
to the user.
Working on #26593
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-01-11 11:01:52 +07:00
John Molakvoæ (skjnldsv)
e4b3ba6590
Create unified css file and merge all needed data into this file
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2017-01-10 17:50:29 +07:00
Bjoern Schiessle
fcda3a20f4
create new encryption keys on password reset and backup the old one
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2017-01-10 17:04:32 +07:00
John Molakvoæ (skjnldsv)
67467873c2
Removed jquery scss
...
- Switched to setup.css
- Disable scss when displaying the update page
- Improved setup css
- Fixed loading failure of other styles on setup & update page
- Improved scss compiler with an ignore scss compilation option
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2017-01-10 11:06:03 +07:00
Roeland Jago Douma
350b7ebc86
Adds CssControllerTests
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-01-06 09:42:39 +07:00
Roeland Jago Douma
1e44a15dd1
No need for the CssManager
...
* It is a simple wrapper we can always add it later if needed
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-01-06 09:42:14 +07:00
Roeland Jago Douma
95d85ba8eb
Do not add ICssManager to OCP
...
We can add it later if needed
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-01-06 09:42:13 +07:00
Roeland Jago Douma
2816177ecb
Code cleanup
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2017-01-06 09:42:13 +07:00
John Molakvoæ (skjnldsv)
6380d503af
Css cache folder name fix, route fix and various fixes
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2017-01-06 09:42:13 +07:00
John Molakvoæ (skjnldsv)
3b62003c9c
Injection fix and log appname fix
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2017-01-06 09:42:13 +07:00
John Molakvoæ (skjnldsv)
1caaa7f4cd
Appdata integration 2
...
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2017-01-06 09:42:13 +07:00
Joas Schilling
2f21eaaf47
Use login name to fix password confirm with ldap users
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-01-05 12:17:30 +07:00
Christoph Wurst
eff904473d
Set redirect_url on 2FA challenge page
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2016-12-23 20:53:26 +07:00
Morris Jobke
998f235474
Merge pull request #2563 from nextcloud/fix-password-reset
...
fix password reset if encryption is enabled
2016-12-22 11:18:04 +07:00
Bjoern Schiessle
16bbd3fd7c
fix password reset if encryption is enabled
...
Signed-off-by: Bjoern Schiessle <bjoern@schiessle.org>
2016-12-08 12:08:05 +07:00
Joas Schilling
924358ef96
Save the timezone on login again
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-12-08 10:45:24 +07:00
Morris Jobke
9eb1ea41ce
Merge pull request #2428 from justin-sleep/upstream
...
Fix #2427 by converting $remember to integer
2016-12-03 11:10:22 +07:00
justin-sleep
25a5c655f7
Move integer casting to the top of the chain
...
Signed-off-by: justin-sleep <justin@quarterfull.com>
2016-12-02 14:07:45 +07:00
Roeland Jago Douma
5c602f3217
Cache all avatar responses
...
* Cache for 30 minutes
* Also cache when avatar can't be found
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-30 09:43:36 +07:00
Lukas Reschke
fb91bf6a5b
Add a signer class for signing
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-11-21 11:30:00 +07:00
Lukas Reschke
6f4cb12be2
Add identity proof
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-11-21 11:30:00 +07:00
Joas Schilling
d75e35b75e
Introduce the UI for password confirmation
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-11-18 11:57:16 +07:00
Roeland Jago Douma
1baa2b8deb
Move OC\OCS\Person to OCSController
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-16 19:21:00 +07:00
Morris Jobke
ac61f64190
Merge pull request #1109 from nextcloud/add-more-secrets-to-password-reset-link
...
Use mail for encrypting the password reset token as well
2016-11-03 22:11:43 +07:00
Lukas Reschke
6d686c213b
[WIP] Use mail for encrypting the password reset token as well
2016-11-03 14:27:26 +07:00
Roeland Jago Douma
9e6b26dcd0
Add cache 1 day cache to preview endpoint
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-03 14:00:33 +07:00
Roeland Jago Douma
55af6b45f7
More tests
...
* PreviewController test
* PublicPreview test
* Versions Preview test
* Trash Preview test
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-03 14:00:33 +07:00
Roeland Jago Douma
5466fbf761
Move Ipreview to more of DI thingy
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-03 14:00:33 +07:00
Roeland Jago Douma
d6f1287ae6
Move file
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-03 14:00:33 +07:00
Roeland Jago Douma
02525fd98b
Move preview endpoint to controller
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-11-03 14:00:33 +07:00
Christoph Wurst
d907666232
bring back remember-me
...
* try to reuse the old session token for remember me login
* decrypt/encrypt token password and set the session id accordingly
* create remember-me cookies only if checkbox is checked and 2fa solved
* adjust db token cleanup to store remembered tokens longer
* adjust unit tests
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2016-11-02 13:39:16 +07:00
Roeland Jago Douma
b05fe45d52
Fix avatar on exif rotated images
...
Fixes #1928
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-26 21:37:11 +07:00
Lukas Reschke
015affb082
Missing returns + autoloader file
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2016-10-25 22:13:09 +07:00
Roeland Jago Douma
d5589a15d5
Move oc.js to a proper class
...
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2016-10-25 22:03:02 +07:00
Joas Schilling
656e3f7a24
Check the mimetype before reading the content and catch exception
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-10-18 16:22:20 +07:00
Joas Schilling
a1e4b17ff4
Remove unused endpoint
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-30 10:21:08 +07:00
Joas Schilling
877cb06bfe
Use magic DI for core controllers
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2016-09-30 10:00:26 +07:00
Joas Schilling
7c0951244a
Deprecate getEditionString()
2016-09-06 16:05:28 +07:00
Roeland Jago Douma
6740c627b8
Move AvatarController over to FileDisplayResponse
2016-09-05 15:11:45 +07:00
Lukas Reschke
06fa486706
Merge pull request #1158 from nextcloud/cache_avatars
...
Cache avatars
2016-09-05 15:08:43 +07:00
Christoph Wurst
8acb734854
add 2fa backup codes app
...
* add backup codes app unit tests
* add integration tests for the backup codes app
2016-09-05 08:51:13 +07:00
Christoph Wurst
0a0c7a9b92
redirect to default app after solving the 2FA challenge
2016-08-30 11:10:45 +07:00
Roeland Jago Douma
14136295b7
Cache avatars properly
...
* Set proper caching headers for avatars (15 minutes)
* For our own avatar use some extra logic to invalidate when we update
2016-08-30 09:00:16 +07:00
Morris Jobke
e341bde8b9
Merge pull request #1172 from nextcloud/core_cleanup
...
Core controller cleanup
2016-08-30 08:32:55 +07:00
Roeland Jago Douma
b1a090f357
AvatarController use proper JSONResponse
...
* Do not rely on DataResponse magic. We want JSON so use JSON
* Fix tests
2016-08-29 21:52:14 +07:00
Roeland Jago Douma
f6423f74e3
Minor cleanup in core Controllers
2016-08-29 21:52:09 +07:00
Roeland Jago Douma
c0ed865ab2
UserController does not require Defaults
2016-08-29 21:14:50 +07:00
Christoph Wurst
291dd0bd31
redirect to 2fa provider if there's only one active for the user
2016-08-29 18:36:39 +07:00
Roeland Jago Douma
2f03853fb9
AvatarController cleanup
...
* Use all DI components
* Let the AppFramework resolve the AvatarController
* Update unit tests
* Unit tests no longer require DB
2016-08-25 21:39:14 +07:00
Joas Schilling
736e884e9a
Move the reset token to core app
2016-08-23 15:01:38 +07:00
Joas Schilling
139fb8de94
Remove "password reset token" after successful login
2016-08-23 12:54:45 +07:00
Roeland Jago Douma
0963397cb8
we are Nextcloud :)
2016-08-18 09:37:11 +07:00
Roeland Jago Douma
6bc1c6590c
Move /config over to Core OCSController
2016-08-18 09:37:09 +07:00
Roeland Jago Douma
0cb8f74cd1
Delete IE8 support in the avatar controller
2016-08-16 20:48:04 +07:00
Lukas Reschke
9ca25e857c
Redirect users when already logged-in on login form
2016-08-11 15:22:29 +07:00
Roeland Jago Douma
ba922c9f73
Merge pull request #807 from nextcloud/ocs_dataresponse
...
OCSController requires DataResponse
2016-08-10 22:36:25 +07:00
Roeland Jago Douma
9544c97ffe
Fix Core's OCSController response
2016-08-10 20:53:13 +07:00
Thomas Müller
4cf2f97a16
Add missing array element - fixes #25714
2016-08-10 11:11:23 +07:00
Roeland Jago Douma
69da896785
Move /cloud/user to Core app
2016-08-09 20:56:31 +07:00
Roeland Jago Douma
02449c8336
Move getCapabilities over to Core
2016-08-09 20:56:31 +07:00
Roeland Jago Douma
575875e8d0
Allow OCS routes in Core and Settings
2016-08-09 20:56:31 +07:00
Damjan Georgievski
4d559267bd
SetupController should use \OC::$configDir too
2016-08-02 15:28:19 +07:00
Bjoern Schiessle
4ecd16c555
Redirect to default page after login
2016-07-27 12:11:58 +07:00
Joas Schilling
0215b004da
Update with robin
2016-07-21 18:13:58 +07:00
Joas Schilling
ba87db3fcc
Fix others
2016-07-21 18:13:57 +07:00
Lukas Reschke
c1589f163c
Mitigate race condition
2016-07-20 23:09:27 +07:00
Lukas Reschke
ba4f12baa0
Implement brute force protection
...
Class Throttler implements the bruteforce protection for security actions in
Nextcloud.
It is working by logging invalid login attempts to the database and slowing
down all login attempts from the same subnet. The max delay is 30 seconds and
the starting delay are 200 milliseconds. (after the first failed login)
2016-07-20 22:08:56 +07:00
Joas Schilling
2c988ecbf4
Use the themed Defaults everywhere
2016-07-15 09:17:30 +07:00
Morris Jobke
2791b8f00d
Revert "occ web executor ( #24957 )"
...
This reverts commit 854352d9a0 .
2016-07-07 12:14:45 +07:00
Lukas Reschke
7a9d60d87e
Merge remote-tracking branch 'upstream/master' into master-upstream-sync
2016-06-26 12:55:05 +07:00
VicDeo
854352d9a0
occ web executor ( #24957 )
...
* Initial web executor
* Fix PHPDoc
Fix broken integration test
OccControllerTests do not require database access - moch them all!
Kill unused sprintf
2016-06-22 13:12:36 +07:00
Arthur Schiwon
42c66efea5
Merge branch 'master' of https://github.com/owncloud/core into downstream-160611
2016-06-11 15:34:43 +07:00
Lukas Reschke
5fdde426eb
Add fancy layout
2016-06-09 17:55:26 +07:00
Thomas Müller
232d735893
Do not leak the login name - fixes #25047
2016-06-09 16:44:31 +07:00
Joas Schilling
7f88645eab
Allow to cancel 2FA after login
2016-06-09 14:00:02 +07:00
Christoph Wurst
60e15e934c
do not generate device token if 2FA is enable for user
2016-06-09 14:00:00 +07:00
Vincent Petry
7dcc47dc94
Merge pull request #25011 from owncloud/issue-24745-allow-to-cancel-2fa
...
Allow to cancel 2FA after login
2016-06-08 10:27:21 +07:00
Joas Schilling
3e3b326c85
Allow to cancel 2FA after login
2016-06-07 18:17:29 +07:00
Christoph Wurst
8f7a4aaa4d
do not generate device token if 2FA is enable for user
2016-06-07 09:09:51 +07:00
Christoph Wurst
5e71d23ded
remember redirect_url when solving the 2FA challenge
2016-06-01 14:43:47 +07:00
Vincent Petry
235f03da64
Merge pull request #24795 from owncloud/issue-24789-reset-password-link-new-window
...
Allow opening the password reset link in a new window when its a URL
2016-05-31 10:12:30 +07:00
Lukas Reschke
aba539703c
Update license headers
2016-05-26 19:57:24 +07:00
Vincent Petry
25e6026fa6
Merge pull request #24735 from juliushaertl/passwordreset-invalid
...
Show error messages if a password reset link is invalid or expired
2016-05-25 11:08:46 +07:00
Christoph Wurst
ad10485cec
when generating browser/device token, save the login name for later password checks
2016-05-24 11:49:15 +07:00
Christoph Wurst
a0ccebfdcb
generate device token for UID, not login name
...
fixes #24785
2016-05-24 09:49:40 +07:00
Christoph Wurst
4128b853e5
login explicitly
2016-05-24 09:48:02 +07:00
Joas Schilling
5c063cf7c9
Allow opening the password reset link in a new window when its a URL
2016-05-24 09:23:25 +07:00
Julius Haertl
8ee2cb47d0
Show error messages if a password reset link is invalid or expired
...
- Moved token validation to method checkPasswordResetToken
- Render error with message from exceptions
2016-05-23 16:48:10 +07:00
Christoph Wurst
dfb4d426c2
Add two factor auth to core
2016-05-23 11:21:10 +07:00
Christoph Wurst
e077d78ec9
Show login error message correctly ( #24599 )
2016-05-12 16:53:50 +07:00
Lukas Reschke
ee0ebd192a
Use proper URL generation function ( #24576 )
...
Fixes the redirection after login, otherwise `core/files/index` is opened which fails.
2016-05-11 19:39:57 +07:00
Christoph Wurst
0486d750aa
use the UID for creating the session token, not the login name
2016-05-11 13:36:46 +07:00
Christoph Wurst
214aa6639c
fix login with email
2016-05-11 13:36:46 +07:00
Christoph Wurst
46bdf6ea2b
fix PHPDoc and other minor issues
2016-05-11 13:36:46 +07:00
Christoph Wurst
3ffa7d986a
show login error
2016-05-11 13:36:46 +07:00
Christoph Wurst
f0f8bdd495
PHPDoc and other minor fixes
2016-05-11 13:36:46 +07:00
Christoph Wurst
fbb5768587
add unit tests for all new classes
2016-05-11 13:36:46 +07:00
Christoph Wurst
aa85edd224
increase token column width
...
add some range to time() assertions
2016-05-11 13:36:46 +07:00
Christoph Wurst
aafd660b97
fix LoginController unit tests
2016-05-11 13:36:46 +07:00
Christoph Wurst
7aa16e1559
fix setup
2016-05-11 13:36:46 +07:00
Christoph Wurst
fdc2cd7554
Add token auth for OCS APIs
2016-05-11 13:36:46 +07:00
Christoph Wurst
8d48502187
Add index on 'last_activity'
...
add token type column and delete only temporary tokens in the background job
debounce token updates; fix wrong class import
2016-05-11 13:36:46 +07:00
Christoph Wurst
53636c73d6
Add controller to generate client tokens
2016-05-11 13:36:46 +07:00
Christoph Wurst
3ab922601a
Check if session token is valid and log user out if the check fails
...
* Update last_activity timestamp of the session token
* Check user backend credentials once in 5 minutes
2016-05-11 13:36:46 +07:00
Christoph Wurst
d8cde414bd
token based auth
...
* Add InvalidTokenException
* add DefaultTokenMapper and use it to check if a auth token exists
* create new token for the browser session if none exists
hash stored token; save user agent
* encrypt login password when creating the token
2016-05-11 13:36:46 +07:00
Lukas Reschke
8222ad5157
Move logout to controller
...
Testable code. Yay.
2016-04-18 21:21:52 +07:00
Lukas Reschke
d4a93893bb
Also check for an empty string
...
PHP. Yay.
2016-04-15 19:53:14 +07:00
Lukas Reschke
fee95084ae
Rename `username` to `loginName`
...
UID and login name are two different things.
2016-04-15 19:02:19 +07:00
Lukas Reschke
8a650a51be
Use !== instead of empty
...
Users can be named null
2016-04-15 18:57:11 +07:00
Lukas Reschke
331e4efacb
Move login form into controller
...
First step on getting the authorisation stuff cleaned up. This is only for the login form, all other stuff is still where it is.
2016-04-15 17:36:23 +07:00
Lukas Reschke
a4b19a5b1e
Rename files to be PSR-4 compliant
2016-04-06 11:00:52 +07:00