human
Complete this python program:
def check_action_access_permission(view_func):
assistant
#Here is the Python program you requested.

    """Decorator ensuring that the user has access to the workflow action.
    Arg: \workflow action\ id.
    Return: the workflow action or raise an exception
    Notice: its gets an id in input and returns the full object in output (not an id).
    """
    def decorate(request, *args, **kwargs):
        action_id = kwargs.get('action')
        action = Node.objects.get(id=action_id).get_full_node()
        Job.objects.can_read_or_exception(request, action.workflow.id)
        kwargs['action'] = action
        return view_func(request, *args, **kwargs)
    return wraps(view_func)(decorate)