Skip to content
Snippets Groups Projects
Commit d2457818 authored by Henrik tom Wörden's avatar Henrik tom Wörden
Browse files

Merge branch 'f-password-req' into dev

parents 985be885 e3fe0343
No related branches found
No related tags found
1 merge request!33MAINT: change arguments of create_user
Pipeline #14336 passed
......@@ -26,16 +26,12 @@
"""missing docstring."""
from lxml import etree
from caosdb.common.utils import xml2str
from caosdb.connection.connection import get_connection
from caosdb.exceptions import (HTTPClientError,
HTTPForbiddenError,
HTTPResourceNotFoundError,
EntityDoesNotExistError,
ServerConfigurationException,
)
from caosdb.exceptions import (EntityDoesNotExistError, HTTPClientError,
HTTPForbiddenError, HTTPResourceNotFoundError,
ServerConfigurationException)
from lxml import etree
def set_server_property(key, value):
......@@ -156,13 +152,22 @@ def _update_user(name, realm=None, password=None, status=None,
return con.put_form_data(entity_uri_segment="User/" + (realm + "/" + name if realm is not None else name), params=params, **kwargs).read()
except HTTPResourceNotFoundError as e:
e.msg = "User does not exist."
raise
raise e
except HTTPForbiddenError as e:
e.msg = "You are not permitted to update this user."
raise
raise e
except HTTPClientError as e:
if e.status == 409:
e.msg = "Entity does not exist."
if e.status == 422:
e.msg = """Maybe the password does not match the required standard?
The current requirements are:
- at least 8 characters
- at least 1 number
- at least 1 lower case character
- at least 1 upper case character
- at least 1 special character"""
raise
......@@ -191,7 +196,13 @@ def _insert_user(name, password=None, status=None, email=None, entity=None, **kw
e.msg = "User name is already in use."
if e.status == 422:
e.msg = "Maybe the password does not match the required standard?"
e.msg = """Maybe the password does not match the required standard?
The current requirements are:
- at least 8 characters
- at least 1 number
- at least 1 lower case character
- at least 1 upper case character
- at least 1 special character"""
raise e
......
......@@ -131,11 +131,17 @@ def do_create_user(args):
def do_activate_user(args):
admin._update_user(name=args.user_name, status="ACTIVE")
try:
admin._update_user(name=args.user_name, status="ACTIVE")
except HTTPClientError as e:
print(e.msg)
def do_deactivate_user(args):
admin._update_user(name=args.user_name, status="INACTIVE")
try:
admin._update_user(name=args.user_name, status="INACTIVE")
except HTTPClientError as e:
print(e.msg)
def do_set_user_password(args):
......@@ -143,7 +149,10 @@ def do_set_user_password(args):
password = _promt_for_pw()
else:
password = args.user_password
admin._update_user(name=args.user_name, password=password)
try:
admin._update_user(name=args.user_name, password=password)
except HTTPClientError as e:
print(e.msg)
def do_add_user_roles(args):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment