projects
/
osm
/
NBI.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix bug 771 Do not revoke token when try to do a non allowed operation
[osm/NBI.git]
/
osm_nbi
/
authconn.py
diff --git
a/osm_nbi/authconn.py
b/osm_nbi/authconn.py
index
42707fe
..
140e024
100644
(file)
--- a/
osm_nbi/authconn.py
+++ b/
osm_nbi/authconn.py
@@
-31,13
+31,20
@@
from http import HTTPStatus
class AuthException(Exception):
"""
class AuthException(Exception):
"""
- Authentication error
.
+ Authentication error
, because token, user password not recognized
"""
def __init__(self, message, http_code=HTTPStatus.UNAUTHORIZED):
super(AuthException, self).__init__(message)
self.http_code = http_code
"""
def __init__(self, message, http_code=HTTPStatus.UNAUTHORIZED):
super(AuthException, self).__init__(message)
self.http_code = http_code
+class AuthExceptionUnauthorized(AuthException):
+ """
+ Authentication error, because not having rights to make this operation
+ """
+ pass
+
+
class AuthconnException(Exception):
"""
Common and base class Exception for all authconn exceptions.
class AuthconnException(Exception):
"""
Common and base class Exception for all authconn exceptions.
@@
-87,6
+94,14
@@
class AuthconnNotFoundException(AuthconnException):
super().__init__(message, http_code)
super().__init__(message, http_code)
+class AuthconnConflictException(AuthconnException):
+ """
+ The operation has conflicts.
+ """
+ def __init__(self, message, http_code=HTTPStatus.CONFLICT):
+ super().__init__(message, http_code)
+
+
class Authconn:
"""
Abstract base class for all the Auth backend connector plugins.
class Authconn:
"""
Abstract base class for all the Auth backend connector plugins.
@@
-226,14
+241,24
@@
class Authconn:
"""
raise AuthconnNotImplementedException("Should have implemented this")
"""
raise AuthconnNotImplementedException("Should have implemented this")
- def get_role_list(self):
+ def get_role_list(self
, filter_q=None
):
"""
Get all the roles.
"""
Get all the roles.
+ :param filter_q: dictionary to filter role list by _id and/or name.
:return: list of roles
"""
raise AuthconnNotImplementedException("Should have implemented this")
:return: list of roles
"""
raise AuthconnNotImplementedException("Should have implemented this")
+ def update_role(self, role, new_name):
+ """
+ Change the name of a role
+ :param role: role name or id to be changed
+ :param new_name: new name
+ :return: None
+ """
+ raise AuthconnNotImplementedException("Should have implemented this")
+
def create_project(self, project):
"""
Create a project.
def create_project(self, project):
"""
Create a project.