|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Курдльпрошу предыдущих ораторов не путать термины "разграничение доступа на уровне данных" и "управление доступом средствами БД" А никто и не путает. Просто выразился не ясно и потом пояснил. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 09:46 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Кстати, вот статья, что гуглится на раз: https://blogs.msdn.microsoft.com/mvpawardprogram/2016/02/09/row-level-security-in-entityframework-6-ef6/ Я так понял, что реализация через фильтры на уровне EF. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 09:51 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
skyANAКстати, вот статья, что гуглится на раз: https://blogs.msdn.microsoft.com/mvpawardprogram/2016/02/09/row-level-security-in-entityframework-6-ef6/ Я так понял, что реализация через фильтры на уровне EF. Спасибо! Это именно то, чего ждешь при обращении не форум! :) Правда не всегда то, что гуглится - является истиной в последней инстанции. Но раз Вы рекомендуете - то я с радостью воспользуюсь! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 10:00 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльСпасибо! Это именно то, чего ждешь при обращении не форум! :) Правда не всегда то, что гуглится - является истиной в последней инстанции. Но раз Вы рекомендуете - то я с радостью воспользуюсь! "Нагуглено для вас" ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 10:05 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Курдль, Я в курсе что вы из APEX. Если принять ваш термин технологический коннект за основу, то вы конечно знаете что оракл это там назвал Схема разбора. Везде все по разному))). В java не используют широко миграцию. В шарпе налево и направо. Если получится посадить identity на DBFirst - отпишитесь. MS кругом проповедует CodeFirst, поэтому identity будет там сам создавать таблички в базе). В оракле, apex, java - dbfirst. Ну, и ещё, в АппСервер java имя таблички с юзверями можно указать в самом сервере. В IIS такого пока вроде нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 10:14 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльskyANAКстати, вот статья, что гуглится на раз: https://blogs.msdn.microsoft.com/mvpawardprogram/2016/02/09/row-level-security-in-entityframework-6-ef6/ Я так понял, что реализация через фильтры на уровне EF. Спасибо! Это именно то, чего ждешь при обращении не форум! :) Правда не всегда то, что гуглится - является истиной в последней инстанции. Но раз Вы рекомендуете - то я с радостью воспользуюсь! Да не за что. Я рекомендую прочитать и попробовать. Сам я EF не использую, но идея-то простая: добавить в каждый запрос ограничение по владельцу. То есть ни UPDATE, ни DELETE просто ничего не сделают из-под другого пользователя. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 10:19 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
skyANAСам я EF не использую, но идея-то простая: добавить в каждый запрос ограничение по владельцу Я, честно говоря, не являюсь фанатичным апологетом EF, как и любого другого ORM. С удовольствием бы писал простые незатейливые SQL-запросы. Но ADO.NET делает этот процесс мучительным :( Или Вы считаете, что теперь можно легко и непринужденно обращаться к БД, без всех этих классов соединений, ридеров и т.п.? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 10:36 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльskyANAСам я EF не использую, но идея-то простая: добавить в каждый запрос ограничение по владельцу Я, честно говоря, не являюсь фанатичным апологетом EF, как и любого другого ORM. С удовольствием бы писал простые незатейливые SQL-запросы. Но ADO.NET делает этот процесс мучительным :( Или Вы считаете, что теперь можно легко и непринужденно обращаться к БД, без всех этих классов соединений, ридеров и т.п.?EF тоже обращается к БД через классы ADO.NET, просто скрывает от Вас это. Вы, собственно, тоже можете написать небольшую обёрточку и с удовольствием писать простые незатейливые SQL-запросы без всех этих классов соединений, ридеров и т.п. Или взять что-то попроще EF, например Dapper. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 10:48 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльС удовольствием бы писал простые незатейливые SQL-запросы. Но ADO.NET делает этот процесс мучительным :( Или Вы считаете, что теперь можно легко и непринужденно обращаться к БД, без всех этих классов соединений, ридеров и т.п.? Dapper. Но EF делает трекинг, что сильно сокращает количество кода, которое требуется писать для записи изменений в БД без ошибок на поздней стадии. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2018, 11:15 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Сейчас разбираю пример, любезно предоставленный мне ранее в этой теме. Получаю исключение, вызванное кодом, который я не то, что не трогал - даже не видел (где-то в недрах EF). Кто навскидку может сказать - куда копать? Код: html 1. 2.
Повторяю: я использую EF и в ADO.NET своими грязными ручонками не лезу... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 10:26 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Курдль Код: html 1.
Нельзя во время одной выполняемой операции с БД, делать другую. Исключение об этом. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 10:44 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
hVosttНельзя во время одной выполняемой операции с БД, делать другую. Исключение об этом. Видимо нельзя лезть в таблицу с изменениями, если не закрыта предыдущая транзакция. А система параллелизма CLR об этом знает? Может собака порылась в асинхронности запроса? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 11:02 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Курдль, что ещё за "система параллелизма CLR"? Укажите в строке подключения MultipleActiveResultSets=True и будет Вам счастье ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 11:47 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Курдль, Два варианта. Если бд поддерживает мультиРидер, то галку добавить. Если не поддерживает, то добавить ххххх.ToList() в коде. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 11:56 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
skyANAУкажите в строке подключения MultipleActiveResultSets=True и будет Вам счастье Лучше этого не делать, так больше ошибок можно выловить при работе с данными, которые вот так будут скрыты, но проблему не решит. Если нужно получать за один запрос несколько наборов, это другое. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 12:32 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Petro123Курдль, Два варианта. Если бд поддерживает мультиРидер, то галку добавить. Если не поддерживает, то добавить ххххх.ToList() в коде. 1. Где галку добавить в MS SQL Server 2014? 2. Вариант с ToList() в качетве решения видел в сети, но я не могу вмешиваться в системные вызовы (он где-то в недрах Identity или Owin, а не в моем контроллере). hVosttskyANAУкажите в строке подключения MultipleActiveResultSets=True и будет Вам счастье Лучше этого не делать, так больше ошибок можно выловить при работе с данными, которые вот так будут скрыты, но проблему не решит. Если нужно получать за один запрос несколько наборов, это другое. Вот блин :( Я я это сделал и настало мне счастье. А оказывается надо ждать проблем :( ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 12:47 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльЯ я это сделал и настало мне счастье. А оказывается надо ждать проблем :( Та ради бога. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 13:06 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
hVostt Та ради бога. Не, я не в претензии - просто не успел обрадоваться, как облом :( А другие варианты по-вашему есть? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 13:07 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльhVosttТа ради бога. Не, я не в претензии - просто не успел обрадоваться, как облом :( А другие варианты по-вашему есть? Разбираться в чём косяк. А косяк скорее всего в lazy, вам нужно освоить проекции. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 13:08 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
hVosttskyANAУкажите в строке подключения MultipleActiveResultSets=True и будет Вам счастье Лучше этого не делать, так больше ошибок можно выловить при работе с данными, которые вот так будут скрыты, но проблему не решит. Если нужно получать за один запрос несколько наборов, это другое. Да не переживай ты так за него, нормально всё будет ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2018, 13:12 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Petro123Если получится посадить identity на DBFirst - отпишитесь. Да лучше убейте меня об стену! :( identity создает 5 таблиц, с ID-шниками типа GUID. Само в них пишет и читает в интересах security. Можно, конечно, переопределить все необходимые методы, навесить перехватчики - но это без меня :( И так Hello World занимает более 20 файлов, весит 35МБ и еле ворочается :( ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2018, 08:55 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Курдль, ))) Да. Тут java, Oracl впереди MS. И ничего руками писать не надо. Но у MS круче Linq.)) Может в Core что получше...будет. Проект опубликуешь? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2018, 09:01 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
КурдльИ так Hello World занимает более 20 файлов, весит 35МБ и еле ворочается :(Compiling HelloWorld project.... 28 error(s) 116 warning(s) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2018, 11:13 |
|
Разграничение доступа на уровне записей. ASP.NET MVC, EF
|
|||
---|---|---|---|
#18+
Petro123Проект опубликуешь? Проект про Identity, на котором я тренировался, складывается из кирпичей по ходу изучения примера: https://professorweb.ru/my/ASP_NET/identity/level1/1_1.php Его и публиковать не надо - можешь выбрать нужные куски и не трогать лишние (я, например, не стал геморроиться с Claims). А проект, который я делаю опубликовать не могу - он может вывести на заказчика Shocker.ProКурдльИ так Hello World занимает более 20 файлов, весит 35МБ и еле ворочается :(Compiling HelloWorld project.... 28 error(s) 116 warning(s) Это какой пример столько ошибок дал? Я тоже сначала "добираю" всякие references, чтобы проект из примера хотя бы начал компиллиться. А про 20 файлов - это я имел в виду только созданные вручную для Hello World, а если считать с библиотеками, которые для этого нужны - то их 328 Т.е. если мне надо всё это задеплоить на хостинг - мне надо тащить все эти 328 файлов(ну, за вычетом исходников)?!! Это за границами добра и зла! :) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.06.2018, 09:33 |
|
|
start [/forum/topic.php?fid=18&msg=39652396&tid=1355201]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
24ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 133ms |
0 / 0 |