Commit Graph

22 Commits

Author SHA1 Message Date
Alfonso Martínez
4b96bb51e8 mgr/dashboard: fix issues related with PyJWT versions >=2.0.0
Fixes: https://tracker.ceph.com/issues/49574
Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2021-03-03 15:36:06 +01:00
Aashish Sharma
3c72dc3099 mgr/dashboard: Use secure cookies to store JWT Token
This PR intends to store the jwt token in secure cookies instead of local storage

Fixes: https://tracker.ceph.com/issues/44591

Signed-off-by: Aashish Sharma <aasharma@redhat.com>
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit 36703c63381e6723fff57266235f8230e6af1d92)
2020-12-18 19:33:50 +05:30
Alfonso Martínez
5d7ee7c1f0 mgr/dashboard: CLI commands: read passwords from file
Fixes: https://tracker.ceph.com/issues/48355

Signed-off-by: Alfonso Martínez <almartin@redhat.com>
Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
2020-12-17 08:36:57 +01:00
Nizamudeen A
41941f0d28 mgr/dashboard: Temporary User Lockout if 10 Invalid Login attempts
Implemented a user lockout mechanism if the user enters 10 invalid attempts. The attempt count gets resetted to 0 once the user succesfully logins before getting disabled. Once the user gets disabled administrator has to manually enable the user which will also resets the number of attempts.

Fixes: https://tracker.ceph.com/issues/40914
Signed-off-by: Nizamudeen A <nia@redhat.com>
2020-12-16 16:14:47 +05:30
Tatjana Dehler
1474259b65 mgr/dashboard/qa: add isort check
Add isort check to the QA test files and
fix issues.

Fixes: https://tracker.ceph.com/issues/47757
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2020-10-22 14:12:14 +02:00
Sage Weil
dfd01d7653 blacklist -> blocklist
Signed-off-by: Sage Weil <sage@newdream.net>
Signed-off-by: Neha Ojha <nojha@redhat.com>
2020-08-24 19:53:08 +00:00
Kefu Chai
b0bdbc3414 qa/tasks/mgr: partial revert of 'import with full path'
this change partially reverts #34139

using relative import helps with readability and ease the pain to write
down the full parent module name

in #34139, all relative imports were replaced with full path, because we
were using following code to verify if the code is python3 compatible:

```
  mod_spec = importlib.util.spec_from_file_location(mod_name, path)
  mod = importlib.util.module_from_spec(mod_spec)
  mod_spec.loader.exec_module(mod)
```

but this does not work with submodule which can import using relative
import without specifying the name of the package and its parent module.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-03-26 14:37:06 +08:00
Kefu Chai
947a74349d qa: import with full path
to be py3 compatible

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-03-24 18:27:55 +08:00
Tatjana Dehler
310f787687 mgr/dashboard: Enforce password change upon first login
Fixes: https://tracker.ceph.com/issues/24655
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2020-02-19 15:54:42 +01:00
Kefu Chai
7d262db114 qa/tasks: call super class's setUp()
to address the regression introduced by
8729281121

Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-02-15 12:39:08 +08:00
Tatjana Dehler
0221241909 mgr/dashboard: add password expiration date
Add a 'pwd_expiration_date' field to the User object to be able
to set password expiration date per user.

There are two options to set a password expiration date for a
user:

1. Set the 'USER_PWD_EXPIRATION_SPAN' setting. If defined
   the expiration date of the password will be calculated
   automatically based on the given value. It will also be
   updated automatically when the user changes the password.
2. Set an expiration date by setting the 'pwdExpirationDate'
   field when creating a user.

Add two more settings in addition: USER_PWD_EXPIRATION_WARNING_1
and USER_PWD_EXPIRATION_WARNING_2. These two settings are
defining the amount of days to notify the user that his password
will expiration soon.

It's not possible to set the 'pwd_expiration_date' field to a
date in the past.

If the password of a user is already expired he is no longer
allowed to log into the dashboard.

Fixes: https://tracker.ceph.com/issues/40329
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2019-12-13 08:53:05 +01:00
Volker Theile
6f0b3179b9 mgr/dashboard: Check password complexity in Dashboard CLI commands
- Refactor parts of the existing password complexity code.
- Check password complexity when setting password via Dashboard CLI commands.
- Add ability to force setting a password via CLI. This is useful in vstart environments or wherever it is necessary to disable the password complexity check.

Signed-off-by: Volker Theile <vtheile@suse.com>
2019-11-29 11:12:55 +01:00
Volker Theile
ee80139fa0 mgr/dashboard: Allow users to change their password on the UI
Fixes: https://tracker.ceph.com/issues/40248

Signed-off-by: Volker Theile <vtheile@suse.com>
2019-07-17 11:00:58 +02:00
Ricardo Marques
04f4d5053e mgr/dashboard: SAML 2.0 support
Fixes: https://tracker.ceph.com/issues/24268

Signed-off-by: Ricardo Dias <rdias@suse.com>
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2018-11-08 15:27:37 +00:00
Ricardo Dias
2f5e7c3392
mgr/dashboard: backend: JWT based authentication
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-10-29 15:47:14 +00:00
Ricardo Marques
49ba4a7b84 mgr/dashboard: User password should be optional
Fixes: https://tracker.ceph.com/issues/36031

Signed-off-by: Ricardo Marques <rimarques@suse.com>
2018-09-19 13:49:22 +01:00
Ricardo Dias
76f89edee0
mgr/dashboard: auth: return user permissions on login
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-06-26 12:28:54 +01:00
Ricardo Dias
01a1a1ff84
qa/tasks/mgr/dashboard: Adapted tests to work with new authentication system
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-06-26 12:28:54 +01:00
Ricardo Marques
091e01ca71 mgr/dashboard: Login failure should return HTTP 400
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2018-06-06 11:45:09 +01:00
Ricardo Dias
8fb798fb93
mgr/dashboard: removed browsable api
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-05-24 10:42:24 +01:00
Ricardo Dias
d101b33bc7 qa/tasks/mgr/dashboard: Fix login expires too soon
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-23 11:30:16 +01:00
Ricardo Dias
aa205a6731
mgr/dashboard: renamed dashboard_v2 to dashboard
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-16 07:23:08 +00:00