Como implementar o decorador necessário para login no Flask

Eu tenho 2 aplicativos do Flask (projetos diferentes) que funcionam juntos. Um implementa alguma API que usa tokens para autenticação. O segundo consome a API e faz uma interface da Web para ela. Agora eu tenho uma função de login que envia o nome de usuário e a senha para a API e, se estiver correta, obtém o token de autenticação em troca. Depois de obter o token, salve-o na sessão do usuário e o usuário deverá agora ser considerado como logado / autenticado. Como posso implementar o decorador login_required para esse caso.

Aqui está a minha função de login -

 def login(self):
        response = make_request(BASE_URL + 'login/', clean_data(self.data))
        if response.status_code == 200:
            session['auth_token'] = response.json().get('auth_token')
            return True
        return False

Como posso fazer o decorador login_required?

Também estou usando o Redis para armazenar sessões, se isso importa.