Friday, September 18, 2015

VPN and login to server in local domain

Возникала проблема коннекта на SQL Server в местном домене в тот время когда поднят VPN для выхода во внешнюю сетку. Проблема в том, что если UserId во внутреннем домене и в VPN разные, то для логин на ресурсы локального домена всё равно используются credentials VPN - он их подставляет. Обнаружены ряд способов преодоления проблемы:


  1. Использовать команду RunAS с параметрами
    /savecred /user:<userId>@<localDomain> /env

    При первом запуске спрашивается пароль и при этом создается запись в Windows Credential Manager. Формат <userId>@<localDomain> обеспечивает, как ни странно перманентное хранение credentials, тогда как более общий формат
    <localDomain>\<userId> хранит их только до reboot.
  2. Создать запись в Credential Manager вручную, указав адрес куда надо заходить под местным юзером. Особенно это актуально для Windows 8 где из-за повышенной security с командой RunAs не всё проходит так гладко.

    Пробовал создать credentials вручную и раньше для логин на локальный SQL Server, но не получалось. Оказалось, что для успешного его использования надо указывать строку коннекта более полно, т.е. включить и connection port. Например, для коннекта к локальному серверу Aptafund в BTG:

    Address: aptafund.btg.lv:1433
    Username: <userId>@<localDomain>
    Pasword:

    Опять важно, чтоб имя юзера было в таком формате и по той же причине: иначе после при перегрузке эта запись в Credential Manager удаляется.


No comments:

Post a Comment