Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Разработка информационных систем Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Хранение пароля  [new]
guest12347
Guest
Есть двухзвенка в LAN предприятия. WinForms + SQL Server
Пользователи логинятся по windows authentication.

Есть два требования заказчика:
1) В сети должна быть папка в которую программа сохраняет файлы, при этом у пользователей доступа к этой папке быть не должно.
Сейчас это сделано так: создан специальный пользователь с правами доступа к нужной папке, программа в нужный момент подменяет реального пользователя на этого, сохраняет файл и возвращает реального пользователя.
Но проблема как в таком случае безопасно хранить пароль?
Или как это реализовать правильно?
Сейчас пароль зашифрован AES и хранится в ДБ, а ключ зашит в коде.

2) Есть коннекшен стринг к сторонней ДБ с явными логином и паролем.
Он хранится так же - коннекшен зашифрован, хранится в ДБ, а ключ - зашит в коде.
Вопрос как безопасно хранить эти данные?
18 окт 16, 18:01    [19796073]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
guest12347
Guest
В догонку...

Если бы приложением пользовался только один юзер можно было бы использовать DPAPI для шифрования пароля(и других данных), но с разными пользователями так не получится.
С другой стороны все пользователи сидят в одной группе в Active Directory, может есть что то аналогичное DPAPI для групп пользователей? Подскажите если кто в курсе?
Спасибо.
18 окт 16, 18:41    [19796304]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
guest12347,
"У семи нянек дитя без глаза"
У вас вин аутентификация.
Значит защита от АД.
Какие пароли?
Любой кто вошел в комп на работе считается Ивановым или Петровым.
По поводу файлов, приведите пример зачем они.
Можно писать в бд и забирать оттуда туда куда юзверь не дотянется.
Можно веб сервер развернуть который заберет файлы и никому не покажет. Забирать может вообще без пароля)
19 окт 16, 08:52    [19797700]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Вариант 3 - на каждой машине системный сервис в трее. Он раз в минуту проверяет папку юзверя и перекидывает доки от него в свою или на шару.
19 окт 16, 08:56    [19797714]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
У фтп вроде можно писать файлы, а читать структуру папок нельзя.
19 окт 16, 08:59    [19797730]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
guest12347
Guest
Petro123
guest12347,
"У семи нянек дитя без глаза"
У вас вин аутентификация.
Значит защита от АД.
Какие пароли?
Любой кто вошел в комп на работе считается Ивановым или Петровым.

Не совсем понял... или может я не четко объяснил ситуацию.
В сети есть папка к которой доступа не должно быть ни у Иванова, ни у Петрова. Но программа должна в нее сохранять файлы. Для этого создали специального пользователя с доступом в эту папку, пароль от пользователя знает только программа.
Программа бежит от имени того пользователя который залогинился на компе, но в момент когда нужно сохранить файл, программа подменяет текущего пользователя Иванова, на этого специального, тем самым получает доступ к папке, сохраняет файл и возвращает обратно Иванова.
Вопрос теперь как хранить пароль от этого специального пользователя?

Petro123
По поводу файлов, приведите пример зачем они.
Можно писать в бд и забирать оттуда туда куда юзверь не дотянется.

Хранить файлы БД нельзя. Эти файлы дальше использует стороннее приложение. Оно умеет читать только из папки.
Сохранять их помощью ХП из БД в файловую систему вроде требует каких то дополнительных полномочий для сервера, заказчик скорей всего не согласится на это изменение.
19 окт 16, 11:23    [19798679]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
guest12347
Guest
Petro123
Вариант 3 - на каждой машине системный сервис в трее. Он раз в минуту проверяет папку юзверя и перекидывает доки от него в свою или на шару.


Пока файлы у пользователя - он их может изменить.
Не подходит.

Petro123
У фтп вроде можно писать файлы, а читать структуру папок нельзя..


Пользователь сможет переписать файлы в папке в обход программы, тоже не подходит.

Только программа должна создавать файлы в этой папке.
19 окт 16, 11:28    [19798714]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
guest12347
Хранить файлы БД нельзя.

OK
но в принципе, БД умеет сохранять из себя в файлы на диске. А также отправлять на ФТП(шару). Это если у вас есть Разработчик БД в штате.
guest12347
заказчик скорей всего не согласится на это изменение.

надо с ним разговаривать убедительно и смотерть что правильнее по безопасности
guest12347
Пока файлы у пользователя - он их может изменить.
Не подходит.

не понял.
Приведите пример из жизни ПОХОЖИХ юз-кейсов.
Мне кажется вы там изобретаете квадратные колёса.
Внятное ТЗ!
19 окт 16, 12:46    [19799279]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
guest12347
Petro123
Вариант 3 - на каждой машине системный сервис в трее. Он раз в минуту проверяет папку юзверя и перекидывает доки от него в свою или на шару.


Пока файлы у пользователя - он их может изменить.
Не подходит.

?
- Юзверь нажал на Сохранить у себя в прогеА.
- После попадания в папку (он её не знает) файла, СРАЗУ файл ПЕРЕМЕЩЁН на новое место прогойБ с правами SYSTEM.
19 окт 16, 12:52    [19799309]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
А вообще, делайте одно ТЗ с разными правами на ОДНУ информ.систему.
19 окт 16, 12:53    [19799317]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Итого, по прежнему решения:
- БД
- ВебСервер
- ФТП
- локальный доп.сервис
19 окт 16, 12:59    [19799362]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
guest12347
Guest
Petro123
guest12347
Пока файлы у пользователя - он их может изменить.
Не подходит.

не понял.
Приведите пример из жизни ПОХОЖИХ юз-кейсов.
Мне кажется вы там изобретаете квадратные колёса.
Внятное ТЗ!


Пользователь нажал сохранить, создался файл в его папке, теперь у него есть минута чтоб открыть файл и изменить.
И после этого системный сервис утащит уже измененный файл.

Кроме этого такой способ потребует установки системного сервиса на все компы, и отслеживание того что он бежит.
А если упал?
Дальше надо как то согласовывать что именно сервис должен утаскивать. А то пользователь ему накидает чего нить своего)
Как то сложно и главное что файл может быть отредактирован до оправки в секретную папку.
19 окт 16, 13:53    [19799790]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
ВМоисеев
Member

Откуда: Редкино
Сообщений: 1970
>guest12347, вчера, 18:01 [19796073]
>...Сейчас пароль зашифрован AES и хранится в ДБ, а ключ зашит в коде ...

Можно попытаться так:
1. научиться писать хранимые процедуры на C#,
2. использовать как симметричное, так и асимметричное шифрование,
3. в теле пользовательской программы хранить открытый ключ асимметричного шифрования,
4. для получения пароля использовать запрос хранимой процедуры с примерно таким параметром - <временный симметричный ключ, логин (если нужно)> зашифрованным открытым ключом,
5. хранимая процедура возвратит пароль, зашифрованный временным симметричным ключом.

С уважением,
Владимир.

p.s. а может быть лучше всего воспользоваться советом Petro123 - локальный доп.сервис на базе WCF
19 окт 16, 14:03    [19799845]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 47655
guest12347
как безопасно хранить эти данные?

Никак, обломись. Твоя задача решения не имеет.
19 окт 16, 14:11    [19799877]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
guest12347
теперь у него есть минута чтоб открыть файл и изменить.

У вас вредители на работе?
Тогда зачем вам ФАЙЛЫ?
Работайте без файлов.
19 окт 16, 14:14    [19799895]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Dimitry Sibiryakov
guest12347
как безопасно хранить эти данные?

Никак, обломись. Твоя задача решения не имеет.

+1
Юзверь может испортить свою работу просто плюнув в монитор и в своей программе написав - КОЗЁЛ.
19 окт 16, 14:16    [19799901]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
ВМоисеев
Member

Откуда: Редкино
Сообщений: 1970
>Dimitry Sibiryakov, сегодня, 14:11 [19799877]
>Никак, обломись. Твоя задача решения не имеет.
Ну почему же, подобные данные достаточно безопасно хранятся в зашифрованном виде.

С уважением,
Владимир.
19 окт 16, 16:56    [19800923]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
ВМоисеев
Member

Откуда: Редкино
Сообщений: 1970
>Petro123, сегодня, 14:16 [19799901]
>Юзверь может испортить ...

Если в файле хранится информация о том, кто крайний ввел информацию, то для Юзверь это бкдет последний день на данной работе.

С уважением,
Владимир.
19 окт 16, 17:00    [19800944]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
guest12347
Guest
Dimitry Sibiryakov
guest12347
как безопасно хранить эти данные?

Никак, обломись. Твоя задача решения не имеет.


Нет ничего аналогичного DPAPI только для групп пользователей в AD?
19 окт 16, 17:12    [19800996]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Addx
Member

Откуда:
Сообщений: 957
1. WCF
2. Храните файлы в базе
3. А может эти файлы вообще не нужны? Раз их туда программа сохраняет? Сгенерите на ходу при запросе.
19 окт 16, 17:53    [19801275]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
ВМоисеев
>Petro123, сегодня, 14:16 [19799901]
>Юзверь может испортить ...

Если в файле хранится информация о том, кто крайний ввел информацию, то для Юзверь это бкдет последний день на данной работе.

С уважением,
Владимир.

конечно.
Но до ТС это не доходит.
19 окт 16, 18:15    [19801411]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
guest12347
Guest
Ребят, спасибо всем за ответы.
Не все предложения приемлемы, я не сам требования придумываю и не могу их менять как хочу.


Addx
1. WCF
2. Храните файлы в базе
3. А может эти файлы вообще не нужны? Раз их туда программа сохраняет? Сгенерите на ходу при запросе.


1. WCF - Это всмысле сервер делать который будет создавать нужный файл? Я правильно понял - это переход к трехзвенке?
2. и 3. Файлы необходимы, их использует другое приложение. Оно умеет читать только из папки.
19 окт 16, 21:36    [19801913]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Мимо ходил
Guest
Программа пишет в базу.
На сервере работает под нужными правами отдельный сервис, который на основании этих данных создает требуемые файлы.
19 окт 16, 22:51    [19802115]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
guest12347
Не все предложения приемлемы, я не сам требования придумываю и не могу их менять как хочу.

тогда описывать нужно всё честно, шифровальщик)
19 окт 16, 23:54    [19802316]     Ответить | Цитировать Сообщить модератору
 Re: Хранение пароля  [new]
Изопропил
Member

Откуда:
Сообщений: 31154
guest12347
Только программа должна создавать файлы в этой папке

а если это программу чуток хакнуть?
guest12347
Я правильно понял - это переход к трехзвенке?

паранойя и двузвенка плохо совместимы.
20 окт 16, 00:19    [19802359]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Разработка информационных систем Ответить