mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-15 23:08:20 +00:00
feat: 应用授权增加Action动作控制
This commit is contained in:
@@ -64,13 +64,22 @@ class ValidateUserApplicationPermissionApi(APIView):
|
||||
application_id = request.query_params.get('application_id', '')
|
||||
system_user_id = request.query_params.get('system_user_id', '')
|
||||
|
||||
data = {
|
||||
'has_permission': False,
|
||||
'expire_at': int(time.time()),
|
||||
'actions': []
|
||||
}
|
||||
if not all((user_id, application_id, system_user_id)):
|
||||
return Response({'has_permission': False, 'expire_at': int(time.time())})
|
||||
return Response(data)
|
||||
|
||||
user = User.objects.get(id=user_id)
|
||||
application = Application.objects.get(id=application_id)
|
||||
system_user = SystemUser.objects.get(id=system_user_id)
|
||||
|
||||
has_permission, expire_at = validate_permission(user, application, system_user)
|
||||
status_code = status.HTTP_200_OK if has_permission else status.HTTP_403_FORBIDDEN
|
||||
return Response({'has_permission': has_permission, 'expire_at': int(expire_at)}, status=status_code)
|
||||
has_perm, actions, expire_at = validate_permission(user, application, system_user)
|
||||
status_code = status.HTTP_200_OK if has_perm else status.HTTP_403_FORBIDDEN
|
||||
data = {
|
||||
'has_permission': has_perm,
|
||||
'expire_at': int(expire_at),
|
||||
'actions': actions
|
||||
}
|
||||
return Response(data, status=status_code)
|
||||
|
Reference in New Issue
Block a user