Результаты поиска
Решение для репликации сеансов FOSS ASP.Net?
Я искал (с небольшим успехом) свободное/открытое решение для кластеризации сеансов и репликации для asp.net. Я столкнулся с обычными подозреваемыми (indexus sharedcache, memcached), однако у каждого из них есть некоторые ограничения.
- Indexus - очень незрелая, заглушенная реализация интерфейса сеанса. Однако в остальном это отличное решение для кэширования.
- Memcached -небольшая поддержка репликации/failover без перехода на серверную часть БД. Несколько проектов SF.Net-все прерваны на ранних стадиях... ничего такого, что, по-видимому, имеет какую-то тягу, и тот, который, по-видимому, стал полностью коммерческим.
- Microsoft Velocity -не OSS, но вроде неплохо. К сожалению, я не видел, где CTP1 поддерживает failover,и нет четкой дорожной карты для этого. Я боюсь,что этот может упасть в эфир, как и многие другие проекты MS dev.
Я достаточно привык к миру Java, где считается само собой разумеющимся, что многие решения подобных проблем будут доступны из мира FOSS.
Существуют ли какие-либо подходящие альтернативы в мире .Net?
536   4   15:11, 2nd August, 2020
Доступ к параметру html в PHP
Я пытаюсь сделать простой тестовый сценарий php для сеансов. В основном он увеличивает счетчик (хранится в $_SESSION) каждый раз, когда вы обновляете эту страницу. Это работает, но я пытаюсь иметь ссылку, чтобы уничтожить сеанс, который перезагружает страницу с параметром ?destroy=1 . Я пробовал пару операторов if, чтобы увидеть, установлен ли этот параметр, и если да, то уничтожить сеанс, но он, похоже, не работает.
Я даже поместил оператор if в основной корпус, чтобы всплывающее сообщение, если параметр установлен , но он, похоже, не был поднят.
Я знаю, что делаю что-то глупое (я новичок PHP), но я не могу найти, что это такое...
Смотрите код здесь:
<?php
if ($_POST['destroy']) {
session_destroy();
} else {
session_start();
}
?>
<html>
<head>
<title>Session test</title>
</head>
<body>
<?php
if (isset($_POST['destroy'])) {
echo "Destroy set";
}
$_SESSION['counter']++;
echo "You have visited this page " . $_SESSION['counter'] . " times" . "<BR>";
echo "I am tracking you using the session id " . session_id() . "<BR>";
echo "Click <a href=\"" . $_SERVER['PHP_SELF'] . "?destroy=1\">here</a> to destroy the session.";
?>
Как лучше всего предотвратить захват сеанса?
В частности, это касается использования файла cookie сеанса клиента для идентификации сеанса на сервере.
Является ли лучшим решением использовать шифрование SSL/HTTPS для всего веб-сайта, и у вас есть лучшая гарантия того, что ни один человек в середине атаки не сможет обнюхать существующий файл cookie сеанса клиента?
И, возможно, во-вторых, лучше всего использовать какое-то шифрование самого значения сеанса, которое хранится в вашем сеансовом файле cookie?
Если злоумышленник имеет физический доступ к машине, он все равно может посмотреть файловую систему, чтобы получить допустимый файл cookie сеанса и использовать его для захвата сеанса?
Наиболее эффективный способ получить данные из базы данных в сеанс
Каков самый быстрый способ получить большой объем данных (подумайте о гольфе) и самый эффективный (подумайте о производительности), чтобы получить большой объем данных из базы данных MySQL в сеанс, не продолжая делать то, что у меня уже есть:
$sql = "SELECT * FROM users WHERE username='" . mysql_escape_string($_POST['username']) . "' AND password='" . mysql_escape_string(md5($_POST['password'])) . "'";
$result = mysql_query($sql, $link) or die("There was an error while trying to get your information.\n<!--\n" . mysql_error($link) . "\n-->");
if(mysql_num_rows($result) < 1)
{
$_SESSION['username'] = $_POST['username'];
redirect('index.php?p=signup');
}
$_SESSION['id'] = mysql_result($result, '0', 'id');
$_SESSION['fName'] = mysql_result($result, '0', 'fName');
$_SESSION['lName'] = mysql_result($result, '0', 'lName');
...
И прежде чем кто-нибудь спросит "да", мне действительно нужно "SELECT
Edit: Да, Я дезинфицирую данные, так что не может быть никакой инъекции SQL, которая находится дальше в коде.