forked from sr2/cloud-api
feat: iam dependencies
IAM endpoints now use dependencies to perform most initial database get requests. Issue #6
This commit is contained in:
parent
d4f1b73deb
commit
c6a2b301dc
4 changed files with 100 additions and 61 deletions
|
|
@ -30,6 +30,12 @@ class GroupResponse(CustomBaseModel):
|
|||
id: int
|
||||
name: str
|
||||
|
||||
class GroupIDMixin(CustomBaseModel):
|
||||
group_id: int
|
||||
|
||||
class PermIDMixin(CustomBaseModel):
|
||||
permission_id: int
|
||||
|
||||
class IAMGetGroupPermissionsResponse(CustomBaseModel):
|
||||
permissions: list[PermissionResponse]
|
||||
|
||||
|
|
@ -42,32 +48,28 @@ class IAMPostGroupRequest(CustomBaseModel):
|
|||
class IAMPostGroupResponse(CustomBaseModel):
|
||||
group: GroupResponse
|
||||
|
||||
class IAMPutGroupPermissionRequest(CustomBaseModel):
|
||||
group_id: int
|
||||
permission_id: int
|
||||
class IAMPutGroupPermissionRequest(GroupIDMixin, PermIDMixin):
|
||||
pass
|
||||
|
||||
class IAMPutGroupPermissionResponse(CustomBaseModel):
|
||||
group: GroupResponse
|
||||
permissions: list[PermissionResponse]
|
||||
|
||||
class IAMPutGroupUserRequest(CustomBaseModel):
|
||||
group_id: int
|
||||
class IAMPutGroupUserRequest(GroupIDMixin):
|
||||
user_id: int
|
||||
|
||||
class IAMPutGroupUserResponse(CustomBaseModel):
|
||||
group: GroupResponse
|
||||
users: list[UserResponse]
|
||||
|
||||
class IAMDeleteGroupPermissionRequest(CustomBaseModel):
|
||||
group_id: int
|
||||
permission_id: int
|
||||
class IAMDeleteGroupPermissionRequest(GroupIDMixin, PermIDMixin):
|
||||
pass
|
||||
|
||||
class IAMDeleteGroupPermissionResponse(CustomBaseModel):
|
||||
group: GroupResponse
|
||||
permissions: list[PermissionResponse]
|
||||
|
||||
class IAMDeleteGroupUserRequest(CustomBaseModel):
|
||||
group_id: int
|
||||
class IAMDeleteGroupUserRequest(GroupIDMixin):
|
||||
user_id: int
|
||||
|
||||
class IAMDeleteGroupUserResponse(CustomBaseModel):
|
||||
|
|
@ -85,10 +87,8 @@ class IAMPostPermissionRequest(CustomBaseModel):
|
|||
class IAMPostPermissionResponse(CustomBaseModel):
|
||||
permission: PermissionResponse
|
||||
|
||||
class IAMDeletePermissionRequest(CustomBaseModel):
|
||||
service_id: int
|
||||
resource: str
|
||||
action: str
|
||||
class IAMDeletePermissionRequest(PermIDMixin):
|
||||
pass
|
||||
|
||||
class IAMGetPermissionsSearchRequest(CustomBaseModel):
|
||||
service_id: Optional[int] = None
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue