Fixing key error in Keystone authentication
Change-Id: I107d8f67e468b80f8feec7c6f9ec7c09922467cd
Signed-off-by: Eduardo Sousa <esousa@whitestack.com>
diff --git a/osm_nbi/auth.py b/osm_nbi/auth.py
index 44eaa94..18986a3 100644
--- a/osm_nbi/auth.py
+++ b/osm_nbi/auth.py
@@ -174,7 +174,7 @@
.format(role_with_operations["role"]))
continue
- operations = {}
+ role_ops = {}
root = None
if not role_with_operations["operations"]:
@@ -195,8 +195,8 @@
continue
operation_key = operation.replace(".", ":")
- if operation_key not in operations.keys():
- operations[operation_key] = is_allowed
+ if operation_key not in role_ops.keys():
+ role_ops[operation_key] = is_allowed
else:
self.logger.info("In role {0}, the operation {1} with the value {2} was discarded due to "
"repetition.".format(role_with_operations["role"], operation, is_allowed))
@@ -217,7 +217,7 @@
"root": root
}
- for operation, value in operations.items():
+ for operation, value in role_ops.items():
operation_to_roles_item[operation] = value
self.db.create("roles_operations", operation_to_roles_item)
@@ -426,7 +426,9 @@
tmp_keys = []
for tmp_key in filtered_keys:
splitted = tmp_key.split()[1].split("/")
- if "<" in splitted[idx] and ">" in splitted[idx]:
+ if idx >= len(splitted):
+ continue
+ elif "<" in splitted[idx] and ">" in splitted[idx]:
if splitted[idx] == "<artifactPath>":
tmp_keys.append(tmp_key)
continue