Commit Graph

98 Commits (efd037134aff8e7246d584710ba6576778ae2dfc)

Author SHA1 Message Date
Clement Michaud 4da5402cdf Add helmet dependency and add it as express middleware 2018-04-26 09:07:06 +02:00
Clement Michaud 479d7ddc09 3.7.1 2018-04-24 22:12:27 +02:00
Clement Michaud a64462d3da Update chrome driver to fix integration tests 2018-03-29 23:20:16 +02:00
Clement Michaud 0b2f6ace83 Fix unit and integration tests 2018-03-29 23:09:29 +02:00
Clement Michaud a5592252c7 Bump npm dependencies 2018-03-23 10:13:00 +01:00
Clement Michaud 3f6c375446 3.7.0 2017-11-28 22:40:42 +01:00
Clement Michaud 515a82eb8d Add links and tooltips at second factor stage to better guide the user
A link to U2F explains what is a U2F security key and how they are used.

A tooltip on U2F device registration link is telling the user he needs a
security key to register.
2017-11-28 21:56:50 +01:00
Clement Michaud ca885e4b15 Fix not working u2f when using Firefox
The u2f-api package does not use the official u2f script provided by Yubikey.
Unfortunately, it was blocked by Firefox.  This change reintroduces the
official u2f script.
2017-11-09 00:21:24 +01:00
Clement Michaud e3e1235755 Fix unhandled error exception thrown by Bluebirds in tests 2017-11-01 16:30:51 +01:00
Clement Michaud 6d11801d56 Change the how-to to build Authelia in the README 2017-10-31 22:11:01 +01:00
Clement Michaud 7b68a543bf Strengthen password in LDAP using SHA512 crypt algorithm
Uses the crypt() function to do password encryption. This function handles
several schemes such as: MD5, Blowfish, SHA1, SHA2.
SHA-512 is used in Authelia for best security.
The algorithm is fully described in
https://www.akkadia.org/drepper/SHA-crypt.txt

The 'crypt3' npm package has been added as a dependency to use the crypt()
function. The package needs to be compiled in order to call the c function,
that's why python, make and C++ compiler are installed temporarily in the
Docker image.
2017-10-31 07:27:36 +01:00
Clement Michaud 5570ac3d84 3.6.0 2017-10-16 22:32:55 +02:00
Clement Michaud bf3e71d732 Fix unhandled rejections in unit tests 2017-10-15 01:34:37 +02:00
Clement Michaud 3a88ca95b8 Check TOTP token with window of 1
A window of 1 means the token is checked against current time slot T
as well as at time slot T-1 and T+1.
A time slot is 30 seconds by default in Authelia.
2017-10-15 00:44:10 +02:00
Clément Michaud f041b946d9 Merge pull request #140 from clems4ever/improve-endpoint-errors
Every public endpoints return 200 with harmonized error messages or 401
2017-10-14 12:22:24 +02:00
Clement Michaud 56fdc40290 Every public endpoints return 200 with harmonized error messages or 401
Now, /verify can return 401 or 403 depending on the user authentication.
Every public API endpoints and pages return 200 with error message in
JSON body or 401 if the user is not authorized.

This policy makes it complicated for an attacker to know what is the source of
the failure and hide server-side bugs (not returning 500), bugs being potential
threats.
2017-10-14 11:57:38 +02:00
Clement Michaud 2a3fde5ee7 Add a schema validator to check user configuration 2017-10-10 01:14:36 +02:00
Clement Michaud 46deb765bb 3.5.0 2017-10-09 01:15:40 +02:00
Clement Michaud 78f6028c1b Improve logging format for clarity
Previously, logs were not very friendly and it was hard to track
a request because of the lack of request ID.
Now every log message comes with a header containing: method, path
request ID, session ID, IP of the user, date.

Moreover, the configurations displayed in the logs have their secrets
hidden from this commit.
2017-10-08 22:33:50 +02:00
Clement Michaud d86a3f8393 3.4.2 2017-10-08 16:11:16 +02:00
Clement Michaud f3f61d4e13 3.4.1 2017-10-08 14:48:46 +02:00
Clement Michaud d8ff186303 Split client and server
Client and server now have their own tsconfig so that the transpilation is only
done on the part that is being modified.

It also allows faster transpilation since tests are now excluded from tsconfig.
They are compiled by ts-node during unit tests execution.
2017-10-07 00:49:42 +02:00
Clement Michaud 444d278a1e 3.4.0 2017-10-04 21:53:19 +02:00
Clement Michaud 4cd78f3f83 Add SMTP notifier as an available option in configuration
One can now plug its own SMTP server to send notifications
for identity validation and password reset requests.

Filesystem has been removed from the template configuration file
since even tests now use mail catcher (the fake webmail) to
retrieve the email and the confirmation link.
2017-09-24 23:20:45 +02:00
Clement Michaud 0a33b2d5ee Add logs to detect redis connection issues earlier
Before this fix, the application was simply crashing during execution
when connection to redis was failing.

Now, it is correctly handled with failing promises and logs have been
enabled to clearly see the problem
2017-09-22 20:52:05 +02:00
FrozenDragoon 489dbf9e30 Merge branch 'master' into feature-dockercompose 2017-09-11 13:28:39 -05:00
Clement Michaud 1643f4779c 3.3.19 2017-09-09 01:36:36 +02:00
Clement Michaud f4926ac138 Fix npm package missing dist directory 2017-09-09 00:43:19 +02:00
Clement Michaud 85834befb6 3.3.2 2017-09-05 00:43:06 +02:00
Clement Michaud dbb936679c Try to fix issue with npm publishing 2017-09-05 00:43:00 +02:00
Clement Michaud 432568f8f5 3.3.1 2017-09-04 23:49:15 +02:00
Clement Michaud d4a2b5dab9 Try to fix issue with npm publishing 2017-09-04 23:49:11 +02:00
Clement Michaud 86bb5c5a19 3.3.0 2017-09-04 21:51:58 +02:00
Clement Michaud 690c73e557 Fix installing authelia with npm install -g 2017-09-04 21:42:59 +02:00
Clement Michaud 50636587a8 Notifications to users do not use notifyjs anymore. They are more common and located in the form areas to improve visibility on mobile devices. 2017-09-02 16:33:57 +02:00
Clement Michaud 7be61d7357 3.2.0 2017-08-03 00:58:04 +02:00
Clement Michaud c12a085f8e Replace mocha integration tests by cucumber tests 2017-07-31 22:20:33 +02:00
Clement Michaud e45ac39c8f Add Mongo as scalable and resilient storage backend 2017-07-31 00:29:00 +02:00
Clement Michaud 1de4155ac9 3.1.4 2017-07-19 21:07:51 +02:00
Clement Michaud 8f797c025a 3.1.3 2017-07-19 00:44:42 +02:00
Clement Michaud aa863f23fa 3.1.2 2017-07-17 23:27:33 +02:00
Clement Michaud 2242f0b9ce 3.1.1 2017-07-16 16:31:32 +02:00
Clement Michaud 5873a4c328 3.1.0 2017-07-16 15:07:51 +02:00
Clement Michaud f516aaf243 Adding one integration test for redis 2017-07-14 00:25:11 +02:00
Clement Michaud 925b58fabc Add redis option to the express-session middleware 2017-07-13 23:14:31 +02:00
Clément Michaud 888bdd2bf9 Merge pull request #45 from clems4ever/ldap-bind
Fix LDAP search operation when user has no rights to search attributes in DB.
2017-07-13 21:47:09 +02:00
Clement Michaud b3f755ac24 Upgrade nodemailer, request and assert npm packages 2017-06-29 18:56:41 +02:00
Clement Michaud e56c2492ed Fix integration test and package Travis scripts 2017-06-29 13:09:08 +02:00
Clement Michaud 0b96a0547d 3.0.1 2017-06-19 10:23:56 +02:00
Clement Michaud 1a6f3137eb npm install breaks because it does not find entrypoint file 2017-06-19 10:14:08 +02:00