No need to add permissions when the super admin creates templates or projects

This commit is contained in:
grossmj 2021-09-18 12:49:54 +09:30
parent c8ed96d91b
commit 3d1c3303f9
2 changed files with 9 additions and 5 deletions

View File

@ -111,6 +111,7 @@ async def create_project(
controller = Controller.instance()
project = await controller.add_project(**jsonable_encoder(project_data, exclude_unset=True))
if not current_user.is_superadmin:
await rbac_repo.add_permission_to_user_with_path(current_user.user_id, f"/projects/{project.id}/*")
return project.asdict()
@ -392,6 +393,7 @@ async def duplicate_project(
new_project = await project.duplicate(
name=project_data.name, location=location, reset_mac_addresses=reset_mac_addresses
)
if not current_user.is_superadmin:
await rbac_repo.add_permission_to_user_with_path(current_user.user_id, f"/projects/{new_project.id}/*")
return new_project.asdict()

View File

@ -25,7 +25,7 @@ import logging
log = logging.getLogger(__name__)
from fastapi import APIRouter, Request, Response, HTTPException, Depends, Response, status
from fastapi import APIRouter, Request, HTTPException, Depends, Response, status
from typing import List
from uuid import UUID
@ -55,6 +55,7 @@ async def create_template(
template = await TemplatesService(templates_repo).create_template(template_create)
template_id = template.get("template_id")
if not current_user.is_superadmin:
await rbac_repo.add_permission_to_user_with_path(current_user.user_id, f"/templates/{template_id}/*")
return template
@ -150,5 +151,6 @@ async def duplicate_template(
"""
template = await TemplatesService(templates_repo).duplicate_template(template_id)
if not current_user.is_superadmin:
await rbac_repo.add_permission_to_user_with_path(current_user.user_id, f"/templates/{template_id}/*")
return template