Шаблоны Joomla 2.5 здесь: http://joomla25.ru/shablony/

Проверка пароля внутри 1С УНФ

Из за специфики работы компании (работают под одним логином в 1С УНФ несколько человек) понадобилось сделать так, чтобы некоторые действия с документом мог совершать только тот, кто создал документ.   Т.е. потребовалось проверять пароль пользователя сотрудника, создавшего документ. Гугление в конечном итоге привело к созданию нижеприведенной функции. Поиск ПользователяИБ  осуществляется по идентификатору пользователя. Идентификатор пользователя можно получить в справочнике пользователей.  Собственно код функции:

&НаСервере
Функция ПроверкаПароляПоИдентификаторуПользователя(ПользовательИдентификатор, ПарольДляПроверки) Экспорт   // Функция проверки пароля пользователя

    УстановитьПривилегированныйРежим(Истина);   // использование МенеджерПользователейИнформационнойБазы разрешено только администратору
    
    ИдентификаторПользователяИБ = Новый УникальныйИдентификатор(ПользовательИдентификатор);
    ПользовательИнформационнойБазы = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(ИдентификаторПользователяИБ);  
    Если ПользовательИнформационнойБазы = Неопределено Тогда                                              
        РезультатПроверки = Новый Структура("Результат,Сообщение", Ложь, "Пользователь с таким именем не найден.");
        УстановитьПривилегированныйРежим(Ложь);
        Возврат РезультатПроверки;
    Иначе
        ХэшНастоящегоПароля = ПользовательИнформационнойБазы.СохраняемоеЗначениеПароля;

        НачатьТранзакцию();

        ПользовательИнформационнойБазы.Пароль = ПарольДляПроверки;
        ПользовательИнформационнойБазы.Записать();
        ХешВведенногоПароля = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(ИдентификаторПользователяИБ).СохраняемоеЗначениеПароля;

        ОтменитьТранзакцию();
            
        Если ХешВведенногоПароля = ХэшНастоящегоПароля Тогда
            РезультатПроверки = Новый Структура("Результат,Сообщение", Истина, "Пароль верный.");
        Иначе
            РезультатПроверки = Новый Структура("Результат,Сообщение", Ложь, "Пароль неверный!");
        КонецЕсли;
    КонецЕсли;
    УстановитьПривилегированныйРежим(Ложь);    
    Возврат РезультатПроверки;
КонецФункции

Функция возвращает структуру с сообщениями о результате проверки и булевым признаком проверки. Код рабочий, используется в расширении для 1С УНФ. Т.к. в документах в качестве ответсвенного используется сотрудник (из справочника сотрудников) то для определения пользователя сотрудника используется функция из статьи "Получить пользователя по сотруднику в 1С УНФ".