Size: a a a

2020 December 12

DT

Dmitriy Tkachenko in PHP
что в этом плохого?
источник

DT

Dmitriy Tkachenko in PHP
картинки же не в воздухе висят
источник

DT

Dmitriy Tkachenko in PHP
у кого-то есть права на просмотр, у кого-то нет
источник

DT

Dmitriy Tkachenko in PHP
так весь инет построен
источник

AM

Artem Molotov in PHP
Dmitriy Tkachenko
что в этом плохого?
Это уже не ко мне. Имхо, можно и денормализацию сделать, если есть проблемы с прикреплением картинки к разным ресурсам при привязке юзера.
источник

VC

Vladimir Chernyshev in PHP
knopkod4v
Пользователь загружает в систему картинку с приватными данными (например паспорт).
С фронтенда загружается картинка, получается её uuid.
Делается запрос с uuid картинки на создание какого-нибудь ресурса, на просмотр которого у него (пользователя) будут права.
Проблема  в том, что если другой пользователь угадает uuid уже существующей картинки и создаст свой ресурс с её (картинки) uuid - он сможет просматривать эту картинку.
Как можно решить эту проблему?

Мне в голову пришло только шифровать идентификаторы. Но никто так не делает вроде, поэтому я сомневаюсь
сделать в ресурсе поле picture_uuid уникальным )
источник

k

knopkod4v in PHP
Vladimir Chernyshev
сделать в ресурсе поле picture_uuid уникальным )
1. Тяжело гарантировать уникальность (ну как я понял это чёт типа unique contraint в бд) в наборе ресурсов.
2. Пользователь не всегда загружая картинку отправляет её на сохранение, т.е. если будет угадан uuid несохранённой картинки - констреинт уникальности не сработает
источник

VC

Vladimir Chernyshev in PHP
knopkod4v
1. Тяжело гарантировать уникальность (ну как я понял это чёт типа unique contraint в бд) в наборе ресурсов.
2. Пользователь не всегда загружая картинку отправляет её на сохранение, т.е. если будет угадан uuid несохранённой картинки - констреинт уникальности не сработает
Мне тяжело понять, что есть ресурс. Я исходил из того, что это табличка resources в базе
источник

k

knopkod4v in PHP
Dmitriy Tkachenko
что в этом плохого?
связанность контекста файлов с контекстом других ресурсов
источник

k

knopkod4v in PHP
Vladimir Chernyshev
Мне тяжело понять, что есть ресурс. Я исходил из того, что это табличка resources в базе
это всё, к чему можно прилепить картинку. Заявление какое-то электронное с документами, профиль на сайте, карточка товара, что угодно
источник

DT

Dmitriy Tkachenko in PHP
айдишники - не связанность
источник

VC

Vladimir Chernyshev in PHP
knopkod4v
это всё, к чему можно прилепить картинку. Заявление какое-то электронное с документами, профиль на сайте, карточка товара, что угодно
это записи в РСУБД или нет?
источник

VC

Vladimir Chernyshev in PHP
Ну или просто можно выделить какой-то идентификатор ресурса?
источник

VC

Vladimir Chernyshev in PHP
уникальный
источник

AM

Artem Molotov in PHP
knopkod4v
это всё, к чему можно прилепить картинку. Заявление какое-то электронное с документами, профиль на сайте, карточка товара, что угодно
Я бы на вашем месте скорее думал что делать, если идентификатор утечёт. Вы не сможете отозвать доступ и предоставить новый. Максимум — удалить изображение с идентификатором полностью во всех ресурсах и запретить в новых.

Вот для таких случаев действительно нужен отдельный access_token любой длины (с возможностью в дальнейшем длину увеличить).

А вышеописанные случаи, имхо, не столь критичны.
источник

k

knopkod4v in PHP
Dmitriy Tkachenko
айдишники - не связанность
После того, как к картинке прилепили пользователя, может понадобиться прилепить поле идентификатора организации - значит надо менять модуль файлов.
Потом надо прилепить подразделение организации. Снова прилепляем к модулю файлов поле идентификатора подразделения - снова меняем модуль файлов.
Потом надо прилепить...
Каждый раз когда у нас появляется ещё что-то с файлами - надо добавлять поле в файлы.
Это изменение модуля файлов. Если это не coupling, тогда я не знаю что такое coupling 🤔
источник

DT

Dmitriy Tkachenko in PHP
нищего не понял
источник

DT

Dmitriy Tkachenko in PHP
есть файл, у него айди
источник

DT

Dmitriy Tkachenko in PHP
лепи к кому хочешь
источник

AM

Artem Molotov in PHP
knopkod4v
После того, как к картинке прилепили пользователя, может понадобиться прилепить поле идентификатора организации - значит надо менять модуль файлов.
Потом надо прилепить подразделение организации. Снова прилепляем к модулю файлов поле идентификатора подразделения - снова меняем модуль файлов.
Потом надо прилепить...
Каждый раз когда у нас появляется ещё что-то с файлами - надо добавлять поле в файлы.
Это изменение модуля файлов. Если это не coupling, тогда я не знаю что такое coupling 🤔
Так вы не лепите к картинке другую сущность. Лепите к другой сущности картинку. Решено.
источник