|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Ребят, такой вопрос, где хранить строку подключения к БД? я Храню в App.config. Но допустим установив это приложение пользователю, он сможет открыть этот файлик и посмотреть данные подключения, подключиться к бд с менеджера допустим и прописать себе любые права в таблице Permissions. Подскажите как было бы правильней организовать такой механизм работы? Пользователь на сервере работающий с БД заводится только один, новых заводить нельзя. Как вариант у меня пока добавлять к строке подключения поля User="";Password=""; программно, но может есть более элегантные решения) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 03:08 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Не понял, а как юзер сможет посмотреть app.config вы компилируете ехе и отдаете его юзеру или вы включаете в сборку app.config? если да то с какой целью? Как вариант можете создать класс Public Class Connection 'ATTENTION! DLL 'System.Configuration' was added to references. ''' <summary> ''' Get ConnectionString data ''' </summary> Shared ReadOnly Property ConnectionString As String Get Dim StringBuilder As New SqlConnectionStringBuilder StringBuilder.DataSource = "Имя Сервера" StringBuilder.InitialCatalog = "Имя Базы" StringBuilder.PersistSecurityInfo = True StringBuilder.UserID = "" StringBuilder.Password = "" StringBuilder.ConnectTimeout = 0 StringBuilder.ApplicationName = "" Return StringBuilder.ToString() End Get End Property End Class ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 09:32 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Артем GНе понял, а как юзер сможет посмотреть app.config глазами Артем GКак вариант можете создать класс ConnectionStringBuilder давно существует ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 09:49 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
viton-zizuПодскажите как было бы правильней организовать такой механизм работы? Пользователь на сервере работающий с БД заводится только один, новых заводить нельзя. Как вариант у меня пока добавлять к строке подключения поля User="";Password=""; программно, но может есть более элегантные решения) Если строка подключения находится у юзера, то исходите из того что она общедоступна! Куда бы Вы ее не засунули, при необходимости любой хакер ее достанет. Поэтому есть два варианта. Или Вы пользователю доверяете или нет. Если доверяете, то храните строку подключения где угодно. Если нет, то никакого прямого доступа в таблицы, только через хранимки или app-сервер. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 10:05 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
viton-zizu, Используйте доменную аутентификацию, и не парьтесь со строкой соединения ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 10:13 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
viton-zizuПользователь на сервере работающий с БД заводится только один, новых заводить нельзя. это кто так альтернативно одарён? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 10:21 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Arm79Используйте доменную аутентификацию, и не парьтесь со строкой соединения Угу... А запросы слать "на деревню дедушке"? Server= [ServerAddress] ;Database= [DataBase] ;Trusted_Connection=True; ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 10:25 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
sphinx_mvArm79Используйте доменную аутентификацию, и не парьтесь со строкой соединения Угу... А запросы слать "на деревню дедушке"? Server= [ServerAddress] ;Database= [DataBase] ;Trusted_Connection=True; И как эта строка поможет получить доступ с БД человеку, не знающему доменный пароль? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 10:31 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
а app.config можно не включать в сборку!? А от куда тогда приложение будет брать строку подключения сохраненную там? Или app.config можно как то вшивать в exe?)) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 11:24 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Arm79sphinx_mvпропущено... Угу... А запросы слать "на деревню дедушке"? пропущено... И как эта строка поможет получить доступ с БД человеку, не знающему доменный пароль ?Упростим задачу: у человека ЕСТЬ доменная учетная запись... :) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 13:19 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
sphinx_mvArm79пропущено... И как эта строка поможет получить доступ с БД человеку, не знающему доменный пароль ?Упростим задачу: у человека ЕСТЬ доменная учетная запись... :) Значит у него есть и права доступа к БД, чему вы так удивляетесь? Тут же уже сказали, строка соединения с БД - это отнюдь не секретная информация. Поэтому нужно сделать так, чтобы просмотр этой строки левым человеком не имел последствий. Человек, имеющий доменную учетку, уже не левый. Можно, конечно, пытаться еще прикрутить шифрование секции в app.config, но по моему это избыточная ересь... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 14:10 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Arm79viton-zizu, Используйте доменную аутентификацию, и не парьтесь со строкой соединения Используя доменную аутентификацию пользователь будет: viton-zizu... подключиться к бд с менеджера допустим и прописать себе любые права в таблице Permissions. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 14:52 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Алексей КArm79viton-zizu, Используйте доменную аутентификацию, и не парьтесь со строкой соединения Используя доменную аутентификацию пользователь будет: viton-zizu... подключиться к бд с менеджера допустим и прописать себе любые права в таблице Permissions. Осталось только понять, почему у какого-то там менеджера будут права на запись в таблицу permisions ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 14:56 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Arm79Осталось только понять, почему у какого-то там менеджера будут права на запись в таблицу permisions аккаунт один на всех. Кто автор той идет - топикстартер не признаётся ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 14:57 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
ИзопропилArm79Осталось только понять, почему у какого-то там менеджера будут права на запись в таблицу permisions аккаунт один на всех. Кто автор той идет - топикстартер не признаётся о том то и речь - не заниматься ерундой с одним аккаунтом, а каждому пользователю разрешить ходить под своей учеткой. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 14:59 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
viton-zizuРебят, такой вопрос, где хранить строку подключения к БД? я Храню в App.config. Но допустим установив это приложение пользователю, он сможет открыть этот файлик и посмотреть данные подключения, подключиться к бд с менеджера допустим и прописать себе любые права в таблице Permissions. Подскажите как было бы правильней организовать такой механизм работы? Пользователь на сервере работающий с БД заводится только один, новых заводить нельзя. Как вариант у меня пока добавлять к строке подключения поля User="";Password=""; программно, но может есть более элегантные решения) ёптить... шифровать App.config проще всего. 2 процедурки. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 21:30 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
А ключ для расшифровки где хранить? там же? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 21:42 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Shocker.ProА ключ для расшифровки где хранить? там же? Шифрование на уровне машины вроде как. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 21:43 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Короче, пока софт ходит под одной учеткой для пользователей с любыми ролями, все поползновения - это полумеры. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 22:32 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Shocker.ProА ключ для расшифровки где хранить? там же? да обычного xor на символы (char в string) хватит. злобный менегер зачпокается расшифровывать. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.11.2014, 23:30 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Изопропил, Ваших коментария по поводу глазами я не очень понял. Что вы имели ввиду? Передал я скомпилированый ехе пользователю. Дальше без ехидства поподробнее... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2014, 00:35 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Артем GДальше без ехидства поподробнее... переименованный app.config лежит рядом с exe файлом, пользователь модет открыть его текстовым редактором - это и есть "глазами" строку соединения (или только user/password, сервер и база пусть в конфиге останутся) можно поместить прямо в код, не в конфиг файл - в конфиге ещё масса полезного может лежать нехорошо конечно, но с одним аккаунтом в двузвенке ничего путного не получится, всякие xor создают иллюзию безопасности, хотя многие всю жизнь находятся в мире иллюзий, ничего страшного ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2014, 01:40 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Изопропил строку соединения (или только user/password, сервер и база пусть в конфиге останутся) можно поместить прямо в код, не в конфиг файл - в конфиге ещё масса полезного может лежать А дальше - пользователь копирует exe, относит его хакеру Васе, платит денежку - и получает user/password, который прятали в коде. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2014, 06:42 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Gluck_13, какая разница или екзешник отнести или паяльник в жопу, при такой архитектуре где все сидят под рутами гы гы ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2014, 08:31 |
|
Где хранить строку подключения к БД в проекте?
|
|||
---|---|---|---|
#18+
Gluck_13А дальше - пользователь копирует exe, относит его хакеру Васе, платит денежку - и получает user/password, который прятали в коде. меня то не уговаривайте, но мы все живём в реальном мире, а в нём подобных приложений - уйма. Топикстартер так и не объяснил. откуда взялось ограничение - один аккаунт на всех ... |
|||
:
Нравится:
Не нравится:
|
|||
20.11.2014, 09:32 |
|
|
start [/forum/topic.php?fid=20&msg=38810354&tid=1402227]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
others: | 351ms |
total: | 500ms |
0 / 0 |