powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# где хранить строку подключения
25 сообщений из 107, страница 3 из 5
C# где хранить строку подключения
    #38120891
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahКак вам такое?
Отвратительно, двойка. Меняется имя базы, имя сервера, доп. параметры в строке соединения - что будешь делать?
Во-вторых, зачем какой-то костыльный класс для строки, если есть SqlConnectionStringBuilder
В-третьих, за такие именования классов и их членов - на каторгу.
В-четвертых, хранить в статике информацию о строке соединения - бить розгами по заднице.
Ну а так всё достаточно неплохо
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120899
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУС помощью отладчика каждый второй студент...Я не подпущу ни одного студента к своему компьютеру.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120906
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КМСУС помощью отладчика каждый второй студент...Я не подпущу ни одного студента к своему компьютеру.
Речь не о твоем компьютере, а о компьютере пользователя, работающего с программой. Предугадывая дальнейший твой ответ - зависимость политик локального администратора и политик безопасности БД - вещи ортогонально некоррелируемые.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120925
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей Кпропущено...
Я не подпущу ни одного студента к своему компьютеру.
Речь не о твоем компьютере, а о компьютере пользователя, работающего с программой.Ни один студент с отладчиком не будет допущен к боевому клиентскому рабочему месту, хранящему в оперативной памяти строку соединения, содержащую пароль. Будем дальше упражняться в красноречии? :-)
МСУПредугадывая дальнейший твой ответ - зависимость политик локального администратора и политик безопасности БД - вещи ортогонально некоррелируемые.От политики безопасности зависят необходимые в прикладном ПО средства защиты.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120935
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vahв итоге с сделал так:


Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
    public class conn
    {
        public static string login;
        public static string psw;
        public static string role;

        public String str_conn(String l, String p)
        {
        return "Data Source = SQL; Initial Catalog = project; User ID=" + l + "; Password=" + p + ";";    
        }
    }




Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
        private void button2_Click(object sender, EventArgs e)
        {
            conn c=new conn();
            conn.login = textBox1.Text;
            conn.psw = textBox2.Text;

            using (SqlConnection connection = new SqlConnection(c.str_conn(conn.login, conn.psw)))
            {
                try
                {
                    SqlCommand command = new SqlCommand("select 1", connection);





Как вам такое?

Этот код не нужно просматривать на ночь. Кошмары замучают.

1) Имена классов с большой буквы
2) Вместо открытых полей желательно свойства
3) Наименования свойств/открытых полей лучше с большой буквы
4) Наименование метода лучше CamelCase
5) Смешение стилей указания встроенных типов данных. string и String
6) в методе а) наименования параметров бессмысленны б) вообще не нужны
7) вместо конкатенации строк лучше использовать String.Format
8) нет анализа на наличие null + нужно String.IsNullOrEmpty или что-то в этом духе
9) не предусмотрен вариант win-авторизации
10) Нет проверки на допустимость значений login/password

Я перечислил то, что касается класса в общем. Теперь вообще о его целесообразности: зачем пытаться делать идиотский аналог ConnectionStringBuilder?

По второму отрывку кода:
1) Дайте осмысленное наименование кнопке
2) Вы знаете ключевое слово var? Нет необходимости явно указывать тип переменных, если там всё очевидно
3) Вместо последовательного присвоения полям значений, можно воспользоваться Object Initializer

А целесообразность прямого обращения к ADO.NET нужно уточнять уже у вас. Я лично предпочитаю пользоваться ORM. В BLToolkit есть удобные хелперы для работы с ADO.NET
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120943
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНи один студент с отладчиком не будет допущен к боевому клиентскому рабочему месту

Чем это достигается? У нас целая служба безопасности есть, куча всяких штук мониторят комп и сеть. Зато уборщицы ежедневно моют кабинеты. Оставил незаблокированным комп, и всё.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120951
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУAntonariyЭто я к тому, какие хэлловорлды пишу под .net.
Ничего сложного и необычного. Вопрос по поводу конфигов, ты где строку соединения для EF хранишь, когда выполняешь MyBase.db.Database.SqlQuery? Покажи свой web.config.Там и хранится, чоуж показывать.

Под десктоп на .net я почти не писал, в app.config не лез и напрочь забыл про его существование.

МСУОба способа имеют место на жизнь, в зависимости от ситуации.В ситуации ajax-приложения — xsl такого права не имеет. Достаточно, чтобы в каком-нибудь тексте из базы проскочила кавычка или еще какой служебный символ, все сразу летит к чертям.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120957
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Оставил незаблокированным комп, и всё.
что, в политиках не прописана автоматическая блокировка раб места при неактивности?
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120967
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm797) вместо конкатенации строк лучше использовать String.Format
Код: c#
1.
SqlConnectionStringBuilder
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120994
Фотография vah
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79,

Спасибо, буду менять
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38120995
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Зато уборщицы ежедневно моют кабинеты.Уборщицу с отладчиком в кармане задержат на проходной.
Arm79Оставил незаблокированным комп, и всё.Пресекается жосткими административными мерами.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121001
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилчто, в политиках не прописана автоматическая блокировка раб места при неактивности?

у нас нет. как я понимаю, идеальных учетных политик безопасности нет вообще. Где-то нет автоматического лока, где то разрешены съемные устройства... и так далее.

Изопропил
Код: c#
1.
SqlConnectionStringBuilder



Не, это вместо всего класса. Я имею ввиду, что любую строку лучше конструировать не сложением, а форматом

то есть вместо "a=" + a.ToString() +", b=" + ba.ToString() + ",c = " + c
лучше написать String.Format("a={0}, b={1}, c={2}", a, b, c)
На мой неискушенный взгляд красивее и понятнее.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121003
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КArm79Зато уборщицы ежедневно моют кабинеты.Уборщицу с отладчиком в кармане задержат на проходной.
Arm79Оставил незаблокированным комп, и всё.Пресекается жосткими административными мерами.

Уборщик не обыскивают, отладчик - не аппаратное устройство.
Жесткие административные меры никак не отменяют человеческий фактор. Всегда можно просто забыть
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121086
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КНи один студент с отладчиком не будет допущен к боевому клиентскому рабочему месту, хранящему в оперативной памяти строку соединения, содержащую пароль. Будем дальше упражняться в красноречии? :-)
А кто будет работать с программой, приведения? )

Алексей КОт политики безопасности зависят необходимые в прикладном ПО средства защиты.
Не путай ролевые политики ПО и возможность хакнуть твою систему, получив строку соединения БД от супер юзера (аля sa).
То есть достаточно иметь права локального админа, чтобы накатить дистриб. Всё, твоя база подломлена. Профит.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121088
Фотография fortibransa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Алексей Кпропущено...
Уборщицу с отладчиком в кармане задержат на проходной.
пропущено...
Пресекается жосткими административными мерами.

Уборщик не обыскивают, отладчик - не аппаратное устройство.
Жесткие административные меры никак не отменяют человеческий фактор. Всегда можно просто забыть+100500? еще можно добавить самих user-ов, они чо все такие кристальные, одни из любопытства, другие прикидываются дурачками, а сами даже очень так разбираются, user может обидется на что-нить и тд и тп
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121100
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyТам и хранится, чоуж показывать.
Ну вот. А почему UDL не использовал? :)

В ситуации ajax-приложения — xsl такого права не имеет. Достаточно, чтобы в каком-нибудь тексте из базы проскочила кавычка или еще какой служебный символ, все сразу летит к чертям.[/quot]
Не суть, какое это приложение, ajax или не ajax. Зависит от задачи, если нужно темплейты периодически изменять и создавать новые, то xslt - то, что доктор прописал. Это отличное средство для влияния на вывод.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121112
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КУборщицу с отладчиком в кармане задержат на проходной.
Отладчик будет в телефоне на флеш-карте. У вас всех задерживают с мобильниками на проходной?

Алексей КПресекается жосткими административными мерами.
Получается, какой-нибудь помощник сисадмина с правами локального админа может получить доступ к БД со платёжками, финансами и прочими проводками? Представляешь, если бы в сбере была бы такая архитектура?
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121113
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fortibransauser может обидется на что-нитьИ своровать пароль у самого себя?
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121117
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79Жесткие административные меры никак не отменяют человеческий фактор. Всегда можно просто забытьВсё зависит от их жосткости.
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121122
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понимаю, у Алексей К как-раз "архитектура" с супер-пользователем в строке соединения. Расстрелятьнах! (c)
Лёша, уволен! )
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121133
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУАлексей КНи один студент с отладчиком не будет допущен к боевому клиентскому рабочему месту, хранящему в оперативной памяти строку соединения, содержащую пароль. Будем дальше упражняться в красноречии? :-)
А кто будет работать с программой, приведения? )Сотрудники, прошедшие соответствующий инструктаж. Главное, чтобы пароль не хранился на жостком диске.
МСУАлексей КОт политики безопасности зависят необходимые в прикладном ПО средства защиты.
Не путай ролевые политики ПО и возможность хакнуть твою систему, получив строку соединения БД от супер юзера (аля sa).
То есть достаточно иметь права локального админа, чтобы накатить дистриб. Всё, твоя база подломлена. Профит.От sa защиты нет?
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121140
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУКак я понимаю, у Алексей К как-раз "архитектура" с супер-пользователем в строке соединения.Нет.
МСУРасстрелятьнах! (c) Да
МСУЛёша, уволен! )А если я сейчас начну увольнять направо-налево - кто работать будет?
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121141
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КВсё зависит от их жосткости

Казнить нельзя помиловать (с)
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121142
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей КСотрудники, прошедшие соответствующий инструктаж. Главное, чтобы пароль не хранился на жостком диске.
Человеческий фактор впринципе исключён? :)

Алексей КМСУНе путай ролевые политики ПО и возможность хакнуть твою систему, получив строку соединения БД от супер юзера (аля sa).
То есть достаточно иметь права локального админа, чтобы накатить дистриб. Всё, твоя база подломлена. Профит.От sa защиты нет?
Причем тут защита от sa? Я тебе говорю о том, что ни в коей мере нельзя использовать сиквельную аутентификацию с супер-пользователем в топологии "двухзвенка".
...
Рейтинг: 0 / 0
C# где хранить строку подключения
    #38121144
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей, где комментарий этого? )

МСУПолучается, какой-нибудь помощник сисадмина с правами локального админа может получить доступ к БД с платёжками, финансами и прочими проводками? Представляешь, если бы в сбере была бы такая архитектура?

Жду )
...
Рейтинг: 0 / 0
25 сообщений из 107, страница 3 из 5
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# где хранить строку подключения
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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