powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Разграничение доступа на уровне записей. ASP.NET MVC, EF
25 сообщений из 160, страница 1 из 7
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650902
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, братья по оружию!
Пришел отнимать хлеб у достойнейших представителей MS-технологий :)
"Но токма волею пославшей мя жены".

Итак, задача:
web-приложение, массивы данных, пользователи их вносят и редактируют.
Необходимо реализовать разграничение доступа на уровне записей - чтобы удалять и редактировать мог только автор.
Посоветуйте, пожалуйста, самый популярный в нашей синагоге отходняк лучшие практики реализации подобных задач!
Имею под рукой VS2012, ASP.NET MVC 4, EF, MSSQL 2014, зародыш приложения.
Заранее благодарен!

P.S. По форуму честно прошелся в поиске решений, но по ключевым словам выпадает куча материала, не имеющего отношения к задаче :(
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650905
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльVS2012ну какие практики со старьем?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650910
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

хранить в базе информацию о том, кем (CreatedBy) и когда (CreatedOn) была создана запись
и проверять при при удалении и редактировании
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650911
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123КурдльVS2012ну какие практики со старьем?
Вроде бы существует возможность обновить MVC и EF даже для VS2012. А оболочка разве так уж важна?..
Какое обновление Вы сочли бы уже достойным Вашего внимания?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650914
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123КурдльVS2012ну какие практики со старьем?
И где старьё, прогрессист?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650916
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльКакое обновление Вы сочли бы уже достойным Вашего внимания?
Конечно же VS2017, ASP.NET Core и EF Core
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650918
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAКурдль,

хранить в базе информацию о том, кем (CreatedBy) и когда (CreatedOn) была создана запись
и проверять при при удалении и редактировании
Знаете, в титрах к сериалам пишут "Автор идеи: такой_то" :)
Это и ежу понятно, что запись должна содержать в себе информацию о том, кто её создал, чтобы как-то потом использовать её.
Вопрос в том, какие приёмы атрибуты использовать в коде.
Как разграничивать по функциям и ролям мне понятно. А как по записям?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650923
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльskyANAКурдль,

хранить в базе информацию о том, кем (CreatedBy) и когда (CreatedOn) была создана запись
и проверять при при удалении и редактировании
Знаете, в титрах к сериалам пишут "Автор идеи: такой_то" :)
Это и ежу понятно, что запись должна содержать в себе информацию о том, кто её создал, чтобы как-то потом использовать её.
Вопрос в том, какие приёмы атрибуты использовать в коде.
Как разграничивать по функциям и ролям мне понятно. А как по записям?
Ну как. Можно тупо в начале метода Delete проверить.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650925
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

пример кода удаления привести можете?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650950
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,
в коде удаления ничего необычного, например как приведено ниже.
Понятно, что добавить в него авторизацию (проверку законности удаления) можно.
Но не хотелось бы доводить юзера до функции удаления, а потом огорошивать сообщением "А тебе это недоступно!"
Корректнее отображать элементы управления в тех строках, где они доступны.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
        // GET: Course/Delete/5
        public ActionResult Delete(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            Course course = db.Courses.Find(id);
            if (course == null)
            {
                return HttpNotFound();
            }
            return View(course);
        }

        // POST: Course/Delete/5
        [HttpPost, ActionName("Delete")]
        [ValidateAntiForgeryToken]
        public ActionResult DeleteConfirmed(int id)
        {
            Course course = db.Courses.Find(id);
            db.Courses.Remove(course);
            db.SaveChanges();
            return RedirectToAction("Index");
        }
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650973
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилPetro123пропущено...
ну какие практики со старьем?
И где старьё, прогрессист?ты две винды пропускаешь дома или три?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650976
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльPetro123пропущено...
ну какие практики со старьем?
Вроде бы существует возможность обновить MVC и EF даже для VS2012. А оболочка разве так уж важна?..
Какое обновление Вы сочли бы уже достойным Вашего внимания?минимум 2015 с сервис паком3
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650978
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльНо не хотелось бы доводить юзера до функции удаления, а потом огорошивать сообщением "А тебе это недоступно!"все дважды делают. Слой ГУИ чтобы не огорошить и слой EF или базы.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39650988
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123КурдльНо не хотелось бы доводить юзера до функции удаления, а потом огорошивать сообщением "А тебе это недоступно!"все дважды делают. Слой ГУИ чтобы не огорошить и слой EF или базы.
Ок! Я скорее всего справлюсь со слоем EF самостоятельно.
Ограничусь просьбой о помощи в части GU.
Предположим, что каждый элемент массива данных (запись в таблице) имеет информацию об авторе (id или login или login можно получить через join).
Как отобразить элемент управления в строке, где он уместен и не отобразить - где запрещен?
Заранее благодарен!
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651007
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльОк! Я скорее всего справлюсь со слоем EF самостоятельно.тогда почему нет слов об
NET Identity 2.
Это вроде волшебная парочка для ролей в ASP.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651010
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльКак отобразить элемент управления в строке, где он уместен и не отобразить - где запрещен?
Заранее благодарен!
В контроллере А и контроллере Б ( где запрещено)?
Если читать разрешено то ставите фильтр любым способом. Хоть на клиенте.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651019
Фотография StalkerS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльОк! Я скорее всего справлюсь со слоем EF самостоятельно.
Ограничусь просьбой о помощи в части GU.
Предположим, что каждый элемент массива данных (запись в таблице) имеет информацию об авторе (id или login или login можно получить через join).
Как отобразить элемент управления в строке, где он уместен и не отобразить - где запрещен?
Заранее благодарен!
вопрос не совсем понятен. Как сделать так, что-бы некоторые строки в таблице были недоступны для редактирования? А их можно совсем не показывать? Или надо показывать все, до дисаблить кнопку Удалить для ряда из них? В таблицу вносится дополнительное скрытое поле "CanDelete", если выбранная строка иммет там True - включать кнопку, иначе - выключать. Понятно, что это только удобство GUI, надо перепроверять на сервере
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651035
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StalkerS,
+1
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651038
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StalkerSКурдльОк! Я скорее всего справлюсь со слоем EF самостоятельно.
Ограничусь просьбой о помощи в части GU.
Предположим, что каждый элемент массива данных (запись в таблице) имеет информацию об авторе (id или login или login можно получить через join).
Как отобразить элемент управления в строке, где он уместен и не отобразить - где запрещен?
Заранее благодарен!
вопрос не совсем понятен. Как сделать так, что-бы некоторые строки в таблице были недоступны для редактирования? А их можно совсем не показывать? Или надо показывать все, до дисаблить кнопку Удалить для ряда из них? В таблицу вносится дополнительное скрытое поле "CanDelete", если выбранная строка иммет там True - включать кнопку, иначе - выключать. Понятно, что это только удобство GUI, надо перепроверять на сервере

Коллеги!
ТЗ я указал в первом посте: "Необходимо реализовать разграничение доступа на уровне записей - чтобы удалять и редактировать мог только автор."
Разве там написано "...чтобы видеть мог только автор"? :)
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651047
Фотография StalkerS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльКоллеги!
ТЗ я указал в первом посте: "Необходимо реализовать разграничение доступа на уровне записей - чтобы удалять и редактировать мог только автор."
Разве там написано "...чтобы видеть мог только автор"? :)
там НЕ написано, что он их должен обязательно видеть. Фильтрация строк - страндартный метод решения таких проблем. Если строки должны быть видимы, но кнопки доступны/непоступны в зависимости от текущей строки - решение я написал
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651085
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,
Шо за паника? Тебе сразу все варианты дали. Выбирай любой.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651103
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как на ваш взгляд, годный это материал для моих целей?
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651124
Агнец за бортом
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльНеобходимо реализовать разграничение доступа на уровне записей

На уровне "записей" - это объектная модель ДБ, и она, кстати, под "ограничением доступа" понимает также и чтение.

Выше БД - нет "записей". Там уже объекты. И к MS SQL имеет уже самое косвенное отношение.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651125
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

если доберётесь до SQL 2016, то в нем есть нативная подддержка RLS.
...
Рейтинг: 0 / 0
Разграничение доступа на уровне записей. ASP.NET MVC, EF
    #39651126
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльКак на ваш взгляд, годный это материал для моих целей?имхо подходит.
Дерзай и отпишись!
...
Рейтинг: 0 / 0
25 сообщений из 160, страница 1 из 7
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Разграничение доступа на уровне записей. ASP.NET MVC, EF
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]