Безопасность URL в Django Электронная коммерция - PullRequest
2 голосов
/ 29 апреля 2020

Я работаю со своей собственной электронной коммерцией в Django, и платежи обрабатываются следующим образом:

  1. У меня есть представление оформления заказа со слагом (так как я работа только с двумя продуктами), где пользователь отправляет свои данные доставки.

  2. Затем они перенаправляются на URL платежа, который руководствуется Первичным ключом. Это выглядит так:

    http://....../payment/24

Проблема, которая беспокоит меня, заключается в простоте идентификатора, это просто число, которое любой можно получить доступ с URL. Есть ли способ сделать это безопаснее? Я думал о хешировании URL, но не нашел никакого инструмента для этого.

примечание: это проверка гостя, поэтому я не имею дело с зарегистрированными пользователями.

Заранее спасибо!

1 Ответ

2 голосов
/ 29 апреля 2020

Я понимаю ваше беспокойство, и есть супер простой способ сделать его более безопасным. Есть поле с именем UUIDField.

Позвольте мне просто написать здесь, как использовать.

import uuid
from django.db import models

class YourModelName(models.Model):
    id = models.UUIDField(
        primary_key=True,
        default=uuid.uuid4,
        editable=False)

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...