Имя: Пароль:
1C
1С v8
Хранение паролей в базе 8.2
0 Юрий Лазаренко
 
30.03.12
13:32
1. Ни в коем случае не хранить в 1С, лучше в... 77% (10)
2. Хранить пароли в 1С рулез 23% (3)
Всего мнений: 13

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

Голосовалку в тему прикручу.
1 Grusswelle
 
30.03.12
13:33
XORь их что ли...

Хранить пароли в 1С рулез
2 rs_trade
 
30.03.12
13:34
лучше в спец софте

Ни в коем случае не хранить в 1С, лучше в...
3 Vladal
 
30.03.12
13:36
Кодируй несколькими способами - в Base64, сдвиг, XOR - всё средствами 1С и притом только ты знаешь порядок этих действий.
4 ptiz
 
30.03.12
13:36
Хранить в специализированной программе для паролей.

Ни в коем случае не хранить в 1С, лучше в...
5 Ненавижу 1С
 
гуру
30.03.12
13:37
нигде не хранить

Ни в коем случае не хранить в 1С, лучше в...
6 DMLangepas
 
30.03.12
13:38
не стоит

Ни в коем случае не хранить в 1С, лучше в...
7 PR
 
30.03.12
13:38
(0) Используй хеш 1С.
На тебе для затравки v8: Проверить пароль пользователя ИБ
8 drumandbass
 
30.03.12
13:39
можно addin написать, чтобы он шифровал в aes и пиши шифр. строку в 1с.

Хранить пароли в 1С рулез
9 Vladal
 
30.03.12
13:44
Функция Из_Число_В_16(Знач Значение)
   Результат = "";
   Пока Значение > 0 Цикл
       Остат = Значение % 16;
       Значение = (Значение - Остат) / 16;
       Результат = Сред("0123456789ABCDEF", Остат + 1, 1) + Результат
   КонецЦикла;
   
   Возврат Результат
КонецФункции

Функция ХэшБлоками(Строка, ДлинаБлока = 10, hash = 0, M = 31, TABLE_SIZE = 18446744073709551616)
   
   НачПозиция = 1;
   ДлинаСтроки = СтрДлина(Строка);
   Пока НачПозиция <= ДлинаСтроки Цикл
       СтрокаБлока = Сред(Строка, НачПозиция, ДлинаБлока);
       Для к = 1 По СтрДлина(СтрокаБлока) Цикл
           hash = M * hash + КодСимвола(СтрокаБлока, к)
       КонецЦикла;
       hash = hash % TABLE_SIZE;
       НачПозиция = НачПозиция + ДлинаБлока
   КонецЦикла;
   
   Возврат hash
КонецФункции

Функция ПолучитьХешТаблицы (ТЗ) Экспорт
   Результат = "";
   // работаем с копией
   _ТЗ = ТЗ.Скопировать();
   // приведем порядок ТЗ к единообразию
   // это исключит проблеммы с разным порядком элементов
   _ТЗ.Колонки.Добавить("СтрокаДляХеш");
   Для каждого эл Из _ТЗ Цикл
       эл.СтрокаДляХеш = СокрЛП(эл.Объект.УникальныйИдентификатор());
   КонецЦикла;    
   _ТЗ.Сортировать ("СтрокаДляХеш");
   // теперь строим строку для хеширования
   СтрокаСпискаДаных = "";
   Для каждого эл Из _ТЗ Цикл
       СтрокаСпискаДаных = СтрокаСпискаДаных + эл.СтрокаДляХеш + ";";
   КонецЦикла;    
   //ВнешняяКомпонента = Новый COMОбъект("CAPICOM.HashedData");
   //ВнешняяКомпонента.Algorithm = 3;
   //ВнешняяКомпонента.Hash(СтрокаСпискаДаных);
   //Результат = ВнешняяКомпонента.Value;
   //ВнешняяКомпонента = Неопределено;
   //
   // на 64х сервере работать не будет, нужно что-то придумать другое
   // типа:
   //
   //Dim sha As New SHA1CryptoServiceProvider()
   //Dim result As Byte() = sha.ComputeHash(dataArray)
   //
   // Пока сделал встроеным языком
   //
   Результат = Из_Число_В_16(ХэшБлоками(СтрокаСпискаДаных, 5381, 33));
   Возврат Результат;
КонецФункции

v8: Помогите с хеш функцией MD5
10 Lama12
 
30.03.12
13:47
(0)А чем KeePass не устраивает?

Ни в коем случае не хранить в 1С, лучше в...
11 Vladal
 
30.03.12
13:48
12 fisher
 
30.03.12
13:48
Не вижу ни одной причины, чтобы хранить в 1С. Есть нормальные сторонние продукты специально для этих целей. А базу паролей просто ложишь в дропбокс с доступом для всех заинтересованных. Даже если уплывет - она ж криптованная.

Ни в коем случае не хранить в 1С, лучше в...
13 Reset
 
30.03.12
13:50
Есть же куча разнообразных программ специально для этого

Ни в коем случае не хранить в 1С, лучше в...
14 fisher
 
30.03.12
13:50
Давно и с большим удовольствием пользуюсь 1password. Очень удобная штука с клиентами под мобильные платформы и т.п. Платная, правда (мне на халяву достался). Особенно удобно работать с паролями на всякие сайты и т.п.
Но я там и вообще всю приватную инфу храню.
15 Чел
 
30.03.12
13:53
защита от случайных запросов - rls. Обилие внешних программ усложняет работу имхо

Хранить пароли в 1С рулез
16 Vladal
 
30.03.12
14:02
(14) Удовольствие от халявы на платную программу?
Или акцент на функциональности?
17 BayoNet
 
30.03.12
14:06
Храню в Екселевском документе есть несколько ячеек где фон и шрифт одного цвета ))
18 pumbaEO
 
30.03.12
14:19
keepass
для домашнего пользования
keepass + http://keepass.info/plugins.html (passifox для firefox расширение и ChromeIPass).

Ни в коем случае не хранить в 1С, лучше в...
19 Ant1773
 
30.03.12
14:49
(0) Хочу написать учетную программу. На чем посоветуете делать? На 1С или на Perl? Или что-то из хранителей пароля попробовать?
Зачем изобретать велосипед?

Ни в коем случае не хранить в 1С, лучше в...
20 Юрий Лазаренко
 
30.03.12
14:57
(15) Вот и я про обилие лишних программ. Сейчас все (почта, планировщик задач и т.д) в одной базе, и это очень радует.

(19) Может подскажешь тогда велосипед, в котором я смогу завести несколько записей "Клиент - Компьютер(программа) - Логин - Пароль", в котором можно будет дать доступ различным группам пользователей к одним записям и запретить к другим?
21 andrewks
 
30.03.12
14:57
крипто-тоимк от TrueCrypt

Ни в коем случае не хранить в 1С, лучше в...
22 andrewks
 
30.03.12
14:58
*крипто-томик
23 Юрий Лазаренко
 
30.03.12
15:11
Давайте я что-ли с требованиями к продукту определюсь.

1. Хранение в едином источнике, поддерживающем одновременный доступ на чтение и изменение разных пользователей.
2. Доступ через интернет
3. Хранение как минимум следующих данных (полей):
    - Наименование клиента
    - Объект доступа (компьютер, программа и т.д)
    - Имя пользователя клиента
    - Логин пользователя клиента
    - Пароль пользователя клиента
    - Описание, комментарий (не обязательно)
4. Возможность отбора, сортировки, группировки по полям
5. Желательна возможность хранения клиентов, объектов доступа и пользователей в виде дерева (аналог справочника с группировками в 1С)
6. Настройка прав доступа к данным:
    - Право на чтение/изменение для наших пользователей
    - Право на чтение/изменение для групп наших пользователей
7. Логирование (как минимум - кто, когда, что и на что изменил). Разделение прав доступа к информации в логе (кто-то видит всю информацию, кто-то только "Кто, Когда и Что", но без указания значений)
8. Формирования отчетов (права наших пользователей, список паролей которые давно не менялись и т.д.)


Сторонние продукты, отвечающие данным требованиям, существуют? В 1С я такой блок напишу легко за 3-4 дня, решив проблему шифрования.
24 Юрий Лазаренко
 
30.03.12
15:42
Эй, где все? Пятницу отмечать еще рано!
25 fisher
 
30.03.12
16:38
(16) И то и другое. Я думал, это очевидно.
(23) Те средства, которые я знаю, ориентированы на персональное использование. Т.е. не имеют расширенного функционала совместного использования с правами и т.п. Так что если это критично и не лень - ваяй, конечно. Продавать потом сможешь :) Правда, рынок узковат.
26 Юрий Лазаренко
 
30.03.12
16:43
(25) Мне проще сваять. Ясно что тратится время, но зато получаю то, что хотел, с возможностью доработки и т.д. Насчет продавать - хорошая идея, кстати )) Как отдельный продукт не пойдет, но как маленькая примочка к другой конфе - вполне.