Я работаю над созданием электронной почты для клиента. Они хотят, чтобы электронная почта направлялась на целевую страницу, которая закрыта.
Можно ли щелкнуть URL-адрес в электронном письме и автоматически сгенерировать имя пользователя и пароль для веб-сайта?
Веб-сайт имеет только один логин, поэтому он будет одинаковым для всех получателей электронной почты.
Спасибо,
Почему бы вам не создать веб-страницу с уже введенными логином и паролем.
Например:
<form method="POST" action="http://">
<label for="username">Username:</label>
<input placeholder="MyLogin" id="username" name="username" size="15">
<br /><br />
<label for="password">Password:</label>
<input placeholder="MyPassword" type="password" id="password" name="password" size="15">
<br /><br />
<input type="submit" value="Login">
</form>
Это возможно, но не уверен, что это самое безопасное.
Если бы я должен был реализовать, я бы:
Создать систему для выдачи токена, который связан с пользователем в системе
и, вероятно, имеют какой-то срок действия и «используется» флаг, чтобы предотвратить
обмен ссылкой.
Создайте целевую страницу / конечную точку API, которая ищет токен, извлекает учетные данные пользователя и выполняет весь рабочий процесс входа в систему для любой проверки подлинности.
Ссылка в электронном письме приведет вас непосредственно к конечной точке целевой страницы / API вместе с токеном, выданным для пользователя. Как только он попадет на эту страницу обработки, проверьте, был ли токен уже использован или нет, проверьте срок его действия, пометьте токен как «использованный» и продолжите аутентификацию.
Я сделал что-то похожее на это (хотя делать это с паролями не рекомендуется).
поместите некоторый код на целевую страницу, который проверяет URL при загрузке страницы:
window.onload = function(){
var key = window.location.search; // grab the ?XXX part of the URL
if (key == '?some_key'){
populateInputs(); // function to fill user/pass
}
}
И тогда вы можете отправить ссылку, как это: www.thesite.com/landingPage.html?some_key
Это всего лишь простой пример, который, надеюсь, даст вам представление о том, как выполнить вашу задачу.