Я новичок в SignalR, но мне было любопытно, насколько это безопасно.
Например, я создаю следующий метод для отправки сообщения всем пользователям следующим образом:
public class NotificationHub : Hub
{
public void Send(string message)
{
Clients.All.broadcastMessage(message);
}
}
SignalR генерирует следующий метод в файле js (hubs):
proxies.notificationHub.server = {
send: function (message) {
return proxies.notificationHub.invoke.apply(proxies.notificationHub, $.merge(["Send"], $.makeArray(arguments)));
}
};
Итак, не мог ли любой пользователь в мире просто скопировать и вставить его в свою консоль и отправить сообщение по своему выбору всем моим пользователям без моего ответа?
var notifications = $.connection.notificationHub;
notifications.server.send("Your site has been hacked!");
Я просто попробовал это, и он работает - так, как я могу запретить моим пользователям отправлять несанкционированные сообщения с клиентской стороны?