Skip to content

Commit 87cb6e1

Browse files
committed
restrict scenario visibility to their owners
1 parent 9f38075 commit 87cb6e1

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

nebula/frontend/app.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -469,8 +469,11 @@ async def nebula_update_user(
469469

470470

471471
@app.get("/platform/api/dashboard/runningscenario", response_class=JSONResponse)
472-
async def nebula_dashboard_runningscenario():
473-
scenario_running = get_running_scenario()
472+
async def nebula_dashboard_runningscenario(session: dict = Depends(get_session)):
473+
if session.get("role") == "admin":
474+
scenario_running = get_running_scenario()
475+
elif "user" in session:
476+
scenario_running = get_running_scenario(session["user"])
474477
if scenario_running:
475478
scenario_running_as_dict = dict(scenario_running)
476479
scenario_running_as_dict["scenario_status"] = "running"
@@ -586,7 +589,11 @@ async def nebula_dashboard(request: Request, session: dict = Depends(get_session
586589
scenarios = get_all_scenarios_and_check_completed(
587590
username=session["user"], role=session["role"]
588591
) # Get all scenarios after checking if they are completed
589-
scenario_running = get_running_scenario()
592+
if session.get("role") == "admin":
593+
scenario_running = get_running_scenario()
594+
else:
595+
scenario_running = get_running_scenario(username=session["user"])
596+
590597
if session["user"] not in user_data_store:
591598
user_data_store[session["user"]] = UserData()
592599

0 commit comments

Comments
 (0)