powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / 2-х звенка vs. 3-х звенка и безопасность
25 сообщений из 360, страница 9 из 15
2-х звенка vs. 3-х звенка и безопасность
    #38426570
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Infernal V. RavenАлексей КМеняет, причём кардинально.
Я искренно не понимаю зачем мне LINQ при обработке данных. Для UI - пожалуйста.Ок.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426613
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модМСУЯ говорил о том, что пользователь может выполнить SQL запрос минуя ПО.
Не может. У него софта соотв. нет. И прав на установку нет. И дебаггера нет. Нечем ему в БД лазить.
Достаточно прав локального администратора, чтобы поставить этот софт. А теперь задайся вопросом, что это за безопасность в системе, если какие-то права локального администратора могут поставить под угрозу СУБД с важнейшей информацией? Как вообще связаны сисадмины, которые раздают права локального админа, и промышленный софт, у которого совсем другое предназначение? Это ж что получается, любой из админов интрасети может ковыряться в боевой базе предприятия?

_модМСУУсложним задачу: требуется обращаться к нескольких источникам (MS SQL, Oracle, SharePoint, SAP, MS CRM, 1C, веб сервисы и так далее - на любой вкус), джойтиться с этим источниками, осуществлять какую-то логику. Что будем делать?
Так не бывает. Этот винегрет не съедобен. Но задача интерации решается либо серверными средствами (link, gate) либо на клиенте.
Это почему не бывает? Обратиться на сервере приложений к шарепоинту и содать в нем файл в библиотеке документов? Тот факт, что ты не решал подобные задачи, вовсе не означает, что таких задач не существует.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426624
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Infernal V. RavenПоэтому и с БЛ проще всего работать в СУБД.
Неубедительно. Я ж привел пример, нужно по логике обратиться к шарепоинту и что-то сделать в нем. Как ты это будешь делать через SQL? Или нужно отправить смс сразу по факту. Будешь городить отдельную очередь, разрабатывать и подключать новый программный слой и так далее (а-ля слушающие порты как в бизтолк оркестровке)?
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426657
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУInfernal V. RavenПоэтому и с БЛ проще всего работать в СУБД.
Неубедительно. Я ж привел пример, нужно по логике обратиться к шарепоинту и что-то сделать в нем. Как ты это будешь делать через SQL? Или нужно отправить смс сразу по факту.Можно написать дотнет или жаба-процедуру и вызвать ее прямо из СКЛ,

Хотя безусловно есть случаи, когда необходимо иметь к-л утилиту/клиента для нестандартных действий (обычно интеграция с внешними системами или оборудованием).
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426664
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LSVМожно написать дотнет или жаба-процедуру и вызвать ее прямо из СКЛ
За такую интеграционную архитектуру нужно сажать на кол.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426717
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУЭто ж что получается, любой из админов интрасети может ковыряться в боевой базе предприятия?
А адимн не пользователь, он пароля не знает.
МСУЭто почему не бывает? Обратиться на сервере приложений к шарепоинту и содать в нем файл в библиотеке документов?
Если СУБД чего не может, то делает клиент.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426722
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУLSVМожно написать дотнет или жаба-процедуру и вызвать ее прямо из СКЛ
За такую интеграционную архитектуру нужно сажать на кол.
МСУНеубедительно.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426758
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модМСУЭто ж что получается, любой из админов интрасети может ковыряться в боевой базе предприятия?
А адимн не пользователь, он пароля не знает.
Какой еще пароль? Админ даст права локального администратора пользователю, у которого есть доступ к программному обеспечению. Или просто под своими правами поставит Management Studio или иной софт.

_модМСУЭто почему не бывает? Обратиться на сервере приложений к шарепоинту и содать в нем файл в библиотеке документов?
Если СУБД чего не может, то делает клиент.
Ты шутишь? На клиента нужно ставить дистрибутив сапа или регистрировать DLL в системе, чтобы использовать коннектор? Или на клиента нужно ставить дополнительные дрова, чтобы он мог работать с 1С, шарепоинтом, аксаптами, CRM системами, внешними веб сервисами (а тут уже нужно грамотно админить порты фаервола)? Такую петрушку городить даже идиот не станет. Клиент вообще ничего делать не должен, делать должен сервер приложений. А база данных - это тупое хранилище данных и ничего кроме. Мухи отдельно - котлеты отдельно.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426789
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУА база данных - это тупое хранилище данных и ничего кроме.
Распространенная точка зрения. Как результат - несопровождаемые глючные монстры.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426887
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модМСУА база данных - это тупое хранилище данных и ничего кроме.
Распространенная точка зрения. Как результат - несопровождаемые глючные монстры.
Это больше относится к базам данных с километровыми немасштабируемыми процедурами с лапшекодом, разобраться в которых можно только под действием яда.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38426909
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУЭто больше относится к базам данных с километровыми немасштабируемыми процедурами с лапшекодом, разобраться в которых можно только под действием яда.
Код на sql на порядки короче императивного. Нет никаких километров.
немасштабируемыми процедурами - это что ?
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427071
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модКод на sql на порядки короче императивного. Нет никаких километров.
Ну-ка, вариант на чистом транзакте в пару строк кода в студию.

Код: c#
1.
2.
3.
4.
if (!Regex.IsMatch("25a.243.190.7", @"\b(([01]?\d?\d|2[0-4]\d|25[0-5])\.){3}([01]?\d?\d|2[0-4]\d|25[0-5])\b"))
{
    File.WriteAllText("output.txt", string.Format("IP-адрес некорректен {0}", DateTime.Now), Encoding.Default);
}



_моднемасштабируемыми процедурами - это что ?
Речь нагруженности бизнес логикой. Первый уровень вообще про нее ничего не должен знать, как ты предлагал ранее.
http://ru.wikipedia.org/wiki/Трёхуровневая_архитектура Первый уровень не должен иметь прямых связей с базой данных (по требованиям безопасности)[/u], быть нагруженным основной бизнес-логикой (по требованиям масштабируемости) и хранить состояние приложения (по требованиям надежности). На первый уровень может быть вынесена и обычно выносится простейшая бизнес-логика: интерфейс авторизации, алгоритмы шифрования, проверка вводимых значений на допустимость и соответствие формату, несложные операции (сортировка, группировка, подсчет значений) с данными, уже загруженными на терминал.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427096
Фотография Infernal V. Raven
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУНеубедительно. Я ж привел пример, нужно по логике обратиться к шарепоинту и что-то сделать в нем. Как ты это будешь делать через SQL? Или нужно отправить смс сразу по факту. Будешь городить отдельную очередь, разрабатывать и подключать новый программный слой и так далее (а-ля слушающие порты как в бизтолк оркестровке)?
(пожимая плечами) думаю, я вряд ли смогу тебя переубедить парой-тройкой, а то и сотней постов (дело в религиозных убеждениях :-) ). Я высказал свое мнение, которое готов аргументировать. Если будет что-то конкретное - отвечу.
С шарепоинтом не работал, поэтому как решить какую-то задачу не имею понятия. Вероятно, он предоставляет веб-сервисы которые нужно дергать, от этого я бы и пошел.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427109
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Infernal V. RavenС шарепоинтом не работал, поэтому как решить какую-то задачу не имею понятия. Вероятно, он предоставляет веб-сервисы которые нужно дергать, от этого я бы и пошел.
И что, ты через SQL дергал бы эти сервисы? :) Мрак какой-то...
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427274
Фотография Infernal V. Raven
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУИ что, ты через SQL дергал бы эти сервисы? :) Мрак какой-то...
я так не говорил
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427500
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модКод на sql на порядки короче императивного. Нет никаких километров.Километры есть, не говоря уже про отсутствие группирования процедур в пакеты (Ёракл не в счёт, у нас MSSQL), и описания части из них как private.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[MyClass_MyProc]') AND type in (N'P', N'PC'))
DROP PROCEDURE [dbo].[MyClass_MyProc]
go

create proc [dbo].[MyClass_MyProc] as
-- Do
go

grant exec on [dbo].[MyClass_MyProc] to MyRole
go

vs
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
public class MyClass
{
    [SomeSecurityAttribute("MyRole")]
    public void MyProc()
    {
        // Do
    }
}
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427559
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей К, а Вы пишите короче (ну или настройте CASE-средство):
Код: sql
1.
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[MyClass_MyProc]') AND type in (N'P', N'PC'))

vs
Код: sql
1.
IF OBJECT_ID('dbo.MyClass_MyProc') IS NOT NULL
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427577
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МСУНу-ка, вариант на чистом транзакте в пару строк кода в студию.
Насмешил. Вот 1000 строк сишного кода можно превратить в 10 sql
МСУРечь нагруженности бизнес логикой.
Не читай на ночь википедию, для психики вредно
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427580
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей ККилометры есть, не говоря уже про отсутствие группирования процедур в пакеты (Ёракл не в счёт, у нас MSSQL),
Сочуствую. MSSQL - это проблема
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427585
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей К
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
public class MyClass
{
    [SomeSecurityAttribute("MyRole")]
    public void MyProc()
    {
        // Do
    }
}


Код: plsql
1.
2.
3.
4.
5.
create or replace procedure MyProc
begin
-- do
end;
execute MyProc
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427658
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAАлексей К, а Вы пишите короче (ну или настройте CASE-средство):
Код: sql
1.
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[MyClass_MyProc]') AND type in (N'P', N'PC'))

vs
Код: sql
1.
IF OBJECT_ID('dbo.MyClass_MyProc') IS NOT NULL


Лучше так:
Код: sql
1.
2.
exec DropSP '[dbo].[MyClass_MyProc]'
go


Но это ничего не меняет. Банальный рефакторинг, вроде переименования процедуры, становится проблемой. Мне это не надо.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427674
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модАлексей К
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
public class MyClass
{
    [SomeSecurityAttribute("MyRole")]
    public void MyProc()
    {
        // Do
    }
}


Код: plsql
1.
2.
3.
4.
5.
create or replace procedure MyProc
begin
-- do
end;
execute MyProc

Словосочетание create or replace procedure особенно доставляет. :-)
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427687
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модАлексей ККилометры есть, не говоря уже про отсутствие группирования процедур в пакеты (Ёракл не в счёт, у нас MSSQL),
Сочуствую. MSSQL - это проблемаДа не надо сочувствовать. В MSSQL, как минимум, отличный оптимизатор запросов + масса других преимуществ. Вынос логики из процедур в LINQ-to-SQL на сервере приложений - один из способов обойти его недостатки + поиметь ряд приятных возможностей.
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427716
_мод
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей КВ MSSQL, как минимум, отличный оптимизатор запросов + масса других преимуществ. Вынос логики из процедур в LINQ-to-SQL на сервере приложений - один из способов обойти его недостатки + поиметь ряд приятных возможностей.
MSSQL vs oracle в форуме сравнение субд
Зачем брать СУБД и обходить ее недостатки
...
Рейтинг: 0 / 0
2-х звенка vs. 3-х звенка и безопасность
    #38427727
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_модЗачем брать СУБД и обходить ее недостаткиВсё имеет преимущества и недостатки. Идеальных решений (пока?) нет.
...
Рейтинг: 0 / 0
25 сообщений из 360, страница 9 из 15
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / 2-х звенка vs. 3-х звенка и безопасность
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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