Как предотвратить разоблачение реальных данных в ответе AJAX (SSR VS CSR) и вместо этого вернуть непрозрачные токены?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как предотвратить разоблачение реальных данных в ответе AJAX (SSR VS CSR) и вместо этого вернуть непрозрачные токены?

Сообщение Anonymous »

Я сравниваю два способа рендеринга HTML-структур с данными из PHP + MySQL.
опция 1: ssr (рендеринг на стороне сервера)
Php создает HTML и возвращает его напрямую:
php> php> php> php> php> php>
php>
php: psthy> php

Код: Выделить всё

else if(isset($_POST["retrieveData"])){
$sql = "SELECT * FROM sampleTable";
$result = $conn->query($sql);
$data = '';

while($row = $result->fetch_assoc()){
$data .= '';
$data .= '
'.$row["ticket"].'
';
$data .= '
'.$row["email"].'
';
$data .= '';
}

echo $data;
}
js:

Код: Выделить всё

$.ajax({
method: "POST",
url: "PostData.php",
data: { retrieveData: true },
success: function(response){
$('.container').append(response);
}
});
опция 2: csr (рендеринг на стороне клиента)
php только возвращает JSON, а JS строит HTML:
php:

Код: Выделить всё

else if(isset($_POST["retrieveData"])){
$sql = "SELECT * FROM sampleTable";
$result = $conn->query($sql);
$rows = [];

while($row = $result->fetch_assoc()){
$rows[] = [
"ticket" => $row["ticket"],
"email"  => $row["email"]
];
}

echo json_encode($rows);
}
js:

Код: Выделить всё

$.ajax({
method: "POST",
url: "PostData.php",
data: { retrieveData: true },
success: function(response){
let a = JSON.parse(response);
for(let i=0;i  Таким образом, чувствительные значения (например, идентификаторы билетов или электронные письма) непосредственно видны в клиенте. />  Позже, когда клиенту необходимо использовать эти токены, сервер должен иметь возможность разрешить их обратно к реальным данным. (Я предполагаю, да, но хочу подтвердить.) 

  Какой стандартный способ вернуть токены вместо реальных данных в ответах AJAX, при этом при этом все еще делая реальные данные позже? />  или использовать подписанные токены (например, HMAC/JWT), чтобы сервер мог проверить их без сохранения сопоставлений?> 

Подробнее здесь: [url]https://stackoverflow.com/questions/79766981/how-to-prevent-exposing-real-data-in-ajax-response-ssr-vs-csr-and-instead-retu[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»