как разрешить пользователю изменять только свой собственный контент?

я кодирую веб-сайт, используя js и c #. я связываю их, используя общие обработчики.

то, что я хочу сделать, это позволить пользователю удалять (или редактировать в целом) свой собственный контент, тогда как одни и те же данные отображаются для всех. например - как зарегистрированный пользователь на главной странице этого веб-сайта - разрешить пользователю удалять свои вопросы.

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

как facebook, например, позволяет мне удалять только свои собственные комментарии, а не другие? они поддерживают сеанс для каждого пользователя?

есть идеи?


person Yaniv    schedule 17.01.2012    source источник


Ответы (1)


Ваши пользователи должны иметь этот тип доступа к функциям CRUD только при входе в систему. Затем функции, которые фактически редактируют и удаляют, должны проверять, что контент принадлежит этому пользователю. ТОГДА, кроме того, вы должны отображать пользовательский интерфейс функций редактирования / удаления только для этого контента, когда он принадлежит им.

person Kristian    schedule 17.01.2012
comment
чтобы быть конкретным, как мои пользователи получат такой доступ? это по куки? это путем добавления их идентификатора пользователя в каждый запрос? последнее звучит как дыра в безопасности. - person Yaniv; 18.01.2012
comment
Имейте в виду, что вы можете делать буквально все, что захотите. если вы хотите, чтобы только определенная роль пользователей могла редактировать свои собственные материалы, создайте роль и дайте ее только тому, кому она должна быть. Вы никогда не захотите прикреплять идентификатор пользователя к URL-адресу (если я правильно вас понимаю). Если вы сохранили его в файле cookie, вы хотели бы сохранить его как зашифрованную строку, а затем проверить ее, прежде чем разрешать запуск каких-либо функций. - person Kristian; 18.01.2012
comment
это точно. но как я могу заставить это правило? зашифрованная строка в куки? - person Yaniv; 04.02.2012