Авторизация от пользователя Windows

В данной статье речь пойдет об авторизации от пользователя Windows на сервере БД. Необходимо учитывать, что у пользователя, от имени которого запущен сервер Elma, должны быть права администратора Windows и MS SQL (или FireBird).

В случае если сервер располагается на базе Cassini, Вам необходимо нажать клавишу с логотипом Windows (флажок Microsoft) + R и ввести следующую команду в диалоговое окно: "services.msc" (без кавычек), после чего появится окно служб Windows. В нем Вы сможете найти строчку "Веб-сервер ELMA", кликнуть правой кнопкой мыши и выбрать пункт "Свойства", в котором и располагается искомая вкладка "Вход в систему". Укажите учетную запись LocalSystem либо реальную учетную запись с правами администратора, после чего следует перезапустить веб-сервер.

Если сервер располагается на базе IIS, необходимо зайти в "диспетчер служб IIS" (стандартно на сервере в пуск-администрирование). В нем на вкладке "Пулы приложений" открыть "Дополнительные параметры" у пула "ELMA3-Standart" (в выпадающем списке есть такой пункт). В нем, в таблице "Модель процесса", в поле "Удостоверение" указать учетную запись LocalSystem либо реальную учетную запись с правами администратора, после чего следует перезапустить веб-сервер.

 

Создание учетных данных в среде SQL Server Management Studio 

  1. В обозревателе объектов раскройте папку Безопасность. 
  2. Щелкните правой кнопкой мыши папку Учетные данные и выберите команду «Создать учетные данные» 
  3. В диалоговом окне «Создание учетных данных», в поле «Учетное имя» введите имя для учетных данных. 
  4. В поле «Удостоверение» введите имя учетной записи, используемой для исходящих соединений (при выходе из контекста SQL Server). Как правило, это будет учетная запись пользователя Windows, но удостоверение может быть и учетной записью другого типа. Либо нажмите кнопку с многоточием (...), чтобы открыть диалоговое окно «Выбор пользователя или группы». 
  5. В полях «Пароль» и «Подтверждение пароля» введите пароль учетной записи, указанной в поле «Удостоверение». Если в поле «Удостоверение» указана учетная запись пользователя Windows, то это будет пароль Windows. Поле «Пароль» может быть пустым, если пароль не требуется. 
  6. Установите флажок использовать поставщика услуг шифрования, чтобы учетные данные проверялись поставщиком расширенного управления ключами. 
  7. Нажмите кнопку ОК.

 

Аутентификация в SQL Server

Как известно в SQL Server можно выбрать один из двух типов аутинтификации - Windows Authentication (Аутентификация Windows) или SQL Server Authentication (Аутентификация SQL Server). Сменить режим аутентификации на сервере с помощью SSMS (SQL Server Management Studio) либо с помощью EM (Entreprise Manager) достаточно легко, достаточно в свойствах сервера перейти на закладку Security и установить флаг в нужное поле.

После этого обязательно необходимо перезапустить службу MSSQLSERVER.

Если установлена бесплатная редакция MSDE(2000) или Express (2005/2008) без установленных клиентских утилит, то необходимо знать, что настройки аутентификации хранятся в реестре. 

С помощью недокументированной процедуры T-SQL xp_instance_regwrite, через утилиты OSQL/SQLCMD, меняем значение ( Windows Authentication mode; SQL Server and Windows Authentication mode) EXEC xp_instance_regwrite N’HKEY_LOCAL_MACHINE’, N’Software\Microsoft\MSSQLServer\MSSQLServer’, N’LoginMode’, REG_DWORD, 1 Далее  после смены типа аутентификации, необходимо перезапустить службу. Остановить её можно так же с помощью T-SQL (процедура xp_servicecontrol также недокументированная): EXEC master..xp_servicecontrol ’stop’, ’MSSQLSERVER’ А вот запустить службу через T-SQL не выйдет, т.к. она остановлена, но если у вас установлен второй инстанс, тогда через него достаточно выполнить: EXEC master..xp_servicecontrol ’start’, ’MSSQLSERVER’ Службу лучше перезапускать с помощью команд: net stop MSSQLSERVER/net start MSSQLSERVER 

Конечный вариант для смены аутентификации на сервере будет выглядеть так (достаточно вставить этот код в bat-файл и использовать, когда вам это потребуется):

SQLCMD -E -q "EXEC xp_instance_regwrite N’HKEY_LOCAL_MACHINE’, N’Software\Microsoft\MSSQLServer\MSSQLServer’, N’LoginMode’, REG_DWORD, 1"
net stop MSSQLSERVER
net start MSSQLSERVER

Создание учетных данных FireBird 

Только пользователь «SYSDBA» может отображать, удалять, изменять и создавать любое количество учетных записей для различных категорий пользователей.

Структура учетных записей пользователей: 

•  UserName -   Имя пользователя. Максимальная длина 31 символ. Имя не чувствительно к регистру.

•  Password -  Пароль пользователя чувствителен к регистру. Максимальное количество символов 32, однако, только первые восемь имеют значение.

•  UID -   Целое число, задающее идентификатор пользователя.

•  GID -   Целое число, задающее идентификатор группы.

•  FirstName   -   Имя. Может занимать до 17 символов.

•  MiddleName  -   Второе имя. Можем использовать в качестве отчества. До 17 символов.

•  LastName    -   Фамилия. До 17 символов.

 

Обязательными являются только имя пользователя и пароль.

 

Внимание! Ни в каком поле учетной записи не используйте буквы кириллицы. Такая запись не будет создана или изменена.

Запустите программу IBExpert. Щелкните мышью по элементу меню Tools и в списке выберите User Manager. Появится окно User Manager. В выпадающем списке Server выберите ( local ).

Щелкните по кнопке Connect справа от выпадающего списка Server. Появится окно Server Login.

В поле Login уже будет задано имя пользователя SYSDBA. Вам нужно в поле Password ввести пароль masterkey (или другой, если вы изменили значение пароля) и щелкнуть по кнопке ОК. Появится список учетных записей, который будет содержать только одного пользователя SYSDBA.

Щелкните по кнопке Add, в появившемся окне New User введите имя пользователя (имя пользователя вы можете вводить в любом регистре, символы все равно будут появляться в верхнем регистре) и дважды введите пароль в поля Password и в Confirm Password. Щелкните по ОК. В список будет добавлена новая учетная запись пользователя.

Для изменения существующей записи (изменять можно любое поле кроме имени пользователя) нужно щелкнуть по кнопке Edit или дважды щелкнуть мышью по нужной строке и в появившемся окне изменить желаемые поля.

Для удаления существующей записи щелкните по кнопке Delete и в диалоговом окне подтвердите удаление.

Чтобы изменить имя пользователя, вам нужно удалить старую запись и ввести новую, с другим именем и теми же или другими характеристиками.

Если вы одновременно работаете в IBExpert и используете утилиту gsec или другую программу для добавления или изменения учетных записей, то для того, чтобы увидеть в списке IBExpert новое состояние списка, нужно щелкнуть по кнопке Refresh.