2013-09-03 3 views
0

Я использую 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 
+0

Я бы не передавал первичные ключи, хотя запрос, а не идентификатор пользователя. – Brandon

+0

почему? Даже шифровать? – billyJoe

+0

Если вы фильтруете представления только теми, которые они видят, плюс представление уже защищено с помощью @login_required, вы можете получить идентификатор пользователя из сеанса, а не передавать его. – Brandon

ответ

Смежные вопросы