Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion layer/nrlf/core/authoriser.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ def get_pointer_permissions_v2(
pointer_permissions = json.load(file)
except Exception as exc:
logger.log(
LogReference.V2PERMISSIONS014,
LogReference.S3PERMISSIONS005,
exc_info=sys.exc_info(),
stacklevel=5,
error=str(exc),
Expand Down
12 changes: 9 additions & 3 deletions layer/nrlf/core/decorators.py
Original file line number Diff line number Diff line change
Expand Up @@ -156,9 +156,11 @@ def _use_v2_permissions_model(headers: Dict[str, str]) -> bool:

def _load_v2_connection_metadata(headers: Dict[str, str], path: str):
logger.log(LogReference.HANDLER004d)

metadata = parse_headers(headers, use_v2_permissions=True)
logger.log(LogReference.HANDLER003, metadata=metadata.model_dump())

logger.log(LogReference.HANDLER004e)
logger.log(LogReference.HANDLER004b)
pointer_permissions = get_pointer_permissions_v2(metadata, path)

metadata.nrl_permissions_policy = PermissionsPolicy.model_validate(
Expand All @@ -169,10 +171,11 @@ def _load_v2_connection_metadata(headers: Dict[str, str], path: str):
AccessControls.ALLOW_ALL_TYPES.value
in metadata.nrl_permissions_policy.access_controls
):
logger.log(LogReference.HANDLER004a)
metadata.nrl_permissions_policy.types = PointerTypes.list()

logger.log(
LogReference.HANDLER004f,
LogReference.HANDLER004c,
permissions_policy=(
metadata.nrl_permissions_policy.model_dump()
if metadata.nrl_permissions_policy
Expand All @@ -184,13 +187,16 @@ def _load_v2_connection_metadata(headers: Dict[str, str], path: str):


def load_connection_metadata(headers: Dict[str, str], config: Config, path=""):
logger.log(LogReference.HANDLER002, headers=headers)

if _use_v2_permissions_model(headers):
return _load_v2_connection_metadata(headers, path)

metadata = parse_headers(headers, use_v2_permissions=False)
logger.log(LogReference.HANDLER003, metadata=metadata.model_dump())

if PERMISSION_ALLOW_ALL_POINTER_TYPES in metadata.nrl_permissions:
logger.log(LogReference.HANDLER004b)
logger.log(LogReference.HANDLER004a)
metadata.pointer_types = PointerTypes.list()
return metadata

Expand Down
10 changes: 2 additions & 8 deletions layer/nrlf/core/log_references.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,9 @@ class LogReference(Enum):
)
HANDLER004 = _Reference("INFO", "Authorisation lookup enabled")
HANDLER004a = _Reference("INFO", "Authorisation lookup skipped for sync request")
HANDLER004b = _Reference("INFO", "Parsing embedded permissions file from S3")
HANDLER004c = _Reference("INFO", "Parsed embedded permissions file from S3")
HANDLER004b = _Reference("INFO", "Parsing embedded permissions file")
HANDLER004c = _Reference("INFO", "Parsed embedded permissions file")
HANDLER004d = _Reference("INFO", "Using v2 permissions model")
HANDLER004e = _Reference("INFO", "Parsing v2 permissions file from lambda layer")
HANDLER004f = _Reference("INFO", "Parsed v2 permissions file from lambda layer")
HANDLER005 = _Reference("WARN", "Rejecting request due to missing pointer types")
HANDLER006 = _Reference("DEBUG", "Attempting to parse request parameters")
HANDLER007 = _Reference("INFO", "Parsed request parameters")
Expand Down Expand Up @@ -92,10 +90,6 @@ class LogReference(Enum):
V2PERMISSIONS013 = _Reference(
"WARN", "No v2 permissions file found in lambda layer"
)
V2PERMISSIONS014 = _Reference(
"EXCEPTION",
"An error occurred whilst retrieving v2 pointer permissions",
)

# Parse Logs
PARSE000 = _Reference("DEBUG", "Attempting to parse data against model")
Expand Down
Loading