Мое приложение использует серверную сессию Firebase ie. Все от входа до выхода реализовано с их официальным способом . Однако, если я не буду использовать приложение в течение некоторого времени, сессия cook ie со временем истечет. У меня есть два варианта:
- Выйти из системы и перенаправить пользователя на страницу входа.
- без повторной аутентификации пользователя, обновив сеанс приготовления ie на сервере * 1008. *
Нет вопросов по поводу варианта 1. Как бы я реализовал вариант 2, если это возможно, с помощью Firebase?
Единственное, что у меня есть, это
expired session cook ie на клиенте и сервере. На данный момент на моем сервере есть промежуточное программное обеспечение, которое возвращает ошибку аутентификации:
export default async (
req,
res,
firebaseAdmin
) => {
const { session } = req.cookies;
if (!session) {
return null;
}
const checkRevoked = true;
return await firebaseAdmin
.auth()
.verifySessionCookie(session, checkRevoked)
.then(decodedClaims => {
return firebaseAdmin.auth().getUser(decodedClaims.uid);
})
.catch(error => {
throw new AuthenticationError(error.message);
});
};
Можно ли каким-либо образом использовать сообщение об ошибке auth/session-cookie-expired
для повторной аутентификации пользователя в режиме без вывода сообщений? Возможно, мне не следует делать это в первую очередь - из-за проблем с безопасностью - и просто go с вариантом 1.