Страница входа в HTML показывает кредиты в источнике страницы - PullRequest
0 голосов
/ 15 марта 2019

Хорошо, я пытаюсь создать личный веб-сайт для группы моих друзей, к которому никто не может зарегистрироваться или войти в систему. Мой сценарий ...

<html>
<head>
<title>
Login page
</title>
</head>
<body>
<h1 style="font-family:Comic Sans Ms;text-align="center";font-size:20pt;
color:#00FF00;>
Simple Login Page
</h1>
<form name="login">
Username<input type="text" name="userid"/>
Password<input type="password" name="pswrd"/>
<input type="button" onclick="check(this.form)" value="Login"/>
<input type="reset" value="Cancel"/>
</form>
<script language="javascript">
function check(form)/*function to check userid & password*/
{
 /*the following code checkes whether the entered userid and password are matching*/
 if(form.userid.value == "myuserid" && form.pswrd.value == "mypswrd")
  {
    window.open('target.html')/*opens the target page while Id & password matches*/
  }
 else
 {
   alert("Error Password or Username")/*displays error message*/
  }
}
</script>
</body>
</html>

Используя этот код, кто-то может открыть исходный код страницы и просмотреть кредиты. Есть ли способ, которым я могу скрыть и зашифровать его, и, возможно, добавить несколько разных учетных записей?

Ответы [ 3 ]

1 голос
/ 15 марта 2019

Все, что вы пишете в клиентском JavaScript, потенциально может быть замечено другими в их браузере, поэтому такие вещи, как аутентификация, должны обрабатываться на сервере.

Также важно знать, что выникогда не следует хранить пароли в виде простого текста.

Еще одна важная вещь, которую я вижу при чтении вашего кода, состоит в том, что я, вероятно, могу просто перейти к https://whatever.com/target.html и увидеть страницу, которую вы пытаетесь защитить паролем.

ЕслиВы заинтересованы в создании сайта с такими функциями, вам нужно будет использовать язык на стороне сервера и написать код для сервера.

1 голос
/ 15 марта 2019

Никогда не следует помещать конфиденциальную информацию в код на стороне клиента, поскольку она будет видна всем, кто просматривает исходный код страницы или проверяет элемент. Единственная вещь, которую вы должны проверить на стороне клиента, это такие вещи, как обязательные поля или действительный адрес электронной почты и так далее. Затем в скрипте на стороне сервера вы делаете конфиденциальные проверки, подобные тем, которые вы сделали выше. Также я должен отметить, что проверка пользователя с помощью оператора if является крайне плохой практикой. Вы должны больше работать над серверной логикой своего приложения.

0 голосов
/ 15 марта 2019

Самый простой способ выполнить аутентификацию на стороне сервера - это создание базовой HTTP-аутентификации с использованием файлов .htaccess и .htpasswd.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...