Вы не используете Пользовательский API ? Предполагая, что вы обрабатываете запрос POST, как об этом:
class LoginError(Exception):
CODES = { 'mismatch': 'Wrong credentials', 'disabled': 'Account disabled' }
...
try:
// your authentication code
raise LoginError('mismatch')
...
raise LoginError('disabled')
except LoginError as e:
self.redirect(your_login_url + '?err=' + e)
# In login page you must not print arbitrary GET parameter directly
err_reason = LoginError.CODES[self.request.get('err')]`
(Запрос на вход в систему должен использовать метод POST, потому что он изменяет состояние сервера, и это хорошая привычка перенаправлять после POST, таким образом, перенаправление.)