3

Привет Я новичок в Метеор, и я хотел бы знать, что такое использование hashedToken, сгенерированного внутри объекта Meteor.user.Какая польза от hashedToken внутри meteor.user

В Метеор документации это объясняется тем, что объект службы,

, содержащие данные, используемые конкретными услугами входа. Например, его поле сброса содержит токены, используемые ссылками для забытых паролей, а поле его возобновления содержит токены, используемые для ведения регистрации между сеансами.

Когда я проверяю местное хранилище, Meteor.loginToken кажется отличным от hashedToken.

так что мой вопрос: 1. В чем разница между Meteor.loginToken, сгенерированным в локальном хранилище, и hashedToken, сгенерированным внутри объекта службы? 2. Также почему resume.loginTokens внутри служебного объекта является массивом?

Любая помощь приветствуется ...

ответ

1

Так loginToken является строка символов, которые могут быть оставлены на компьютере похожий на знак печенья. Вы не хотите оставлять фактическое имя пользователя и пароль на компьютере, чтобы вместо этого использовался токен.

Затем токен используется для аутентификации на сервере и входа в систему вместо имени пользователя/пароля.

В массиве их много, потому что вы можете одновременно регистрироваться на многих устройствах. У каждого будет свой собственный токен.

Причина, по которой маркеры хэшируются, является дополнительной мерой безопасности в базе данных. Токены на клиенте sha256 хэшируются и сопоставляются с теми, которые уже имеются в хэшированной базе данных, чтобы попытаться автоматически войти в систему.

Причина, по которой они хэшированы, поэтому никто не может использовать их как loginToken localStorage form для входа в систему как определенный пользователь, скопировав ее из базы данных и вставив ее в качестве локального хранилища logintoken. Это похоже на пароль открытого текста, который можно использовать для входа в систему.

+0

Вы упомянули, что токены «кратно им в массиве, потому что у вас может быть много браузеров или несколько сеансов. У каждого будет свой собственный токен ». Так что если есть много токенов, то какой токен будет использоваться для аутентификации. –

+0

@gopinathshiva Каждый раз, когда вы входите в систему (путем ввода ваших учетных данных), создается новый токен. Если у вас не зарегистрирован браузер или отдельный компьютер, на котором вы регистрируетесь, новые локи для входа будут созданы для каждого компьютера, в который вы вошли. Любой указанный токен действителен для входа в систему и по праву, так как вы можете одновременно войти в систему на нескольких компьютерах одновременно. – Akshat

+0

@gopinathshiva Что вы намерены с помощью loginTokens, возможно, я могу предоставить конкретный ответ на то, для чего вы хотите их использовать? – Akshat