Я использую django для управления сайтом, где идентификаторы, такие как идентификатор отправления, идентификатор пользователя передаются в ясном виде. Например, я могу иметь/posts/1,/posts/2/Переданные параметры без зашифрования
Даже если я проверяю, может ли текущий пользователь читать связанный пост, действительно ли он безопасен для передачи таких параметров, или я должен делать что-то вроде/сообщений/lkjfekj87Dokdz98/который соответствует/posts/1/например?
Пример подробный вид называется с/пост/1/
class DetailView(generic.DetailView):
model = Post
def get_context_data(self, **kwargs):
context = super(generic.DetailView, self).get_context_data(**kwargs)
if context['post'] not in self.request.user.allowed_post:
raise PermissionDenied
return context
Я бы не передавал первичные ключи, хотя запрос, а не идентификатор пользователя. – Brandon
почему? Даже шифровать? – billyJoe
Если вы фильтруете представления только теми, которые они видят, плюс представление уже защищено с помощью @login_required, вы можете получить идентификатор пользователя из сеанса, а не передавать его. – Brandon