Při pokusu o připojení k databázi SQL Server, která je v jiném systému v síti, jsou obě v pracovní skupině, při pokusu o připojení k instanci SQL Server 2008 pomocí SQL Server Management Studio s ověřením Windows se připojím.
Při pokusu o připojení z mé aplikace se však zobrazí následující chyba
(Přihlášení se nezdařilo. Přihlášení je z nedůvěryhodné domény a nelze jej použít při ověřování systému Windows.) Nativní = 18452).
Pokud se SQL Server Management Studio může připojit, co by bylo nutné pro připojení mé aplikace?
Protože pracujete v pracovní skupině, jediná možná autentizace je taková, která používá 'zrcadlené NT účty' , což znamená, že proces, který se pokouší autentizovat , musí být spuštěn pod identitou, která je „zrcadlena“ na hostiteli, který ověřuje proces. 'Mirrored' accounts jsou odlišné lokální účty se stejným jménem a heslem na obou hostitelích provádějících autentizaci.
Musí tedy následovat, že používáte SSMS z účtu, který je je zrcadlený na hostiteli serveru SQL (např. <computername>\Administrator
, které je zrcadleno <sqlhost>\Administrator
a má stejné heslo). UAC zde nemá co dělat (tj. running as administrator
nepomůže).
Vaše aplikace je pravděpodobně spuštěna pod jiným lokálním účtem (výchozí IIS appool snad?)) A účet, pod kterým je spuštěna aplikace, není na hostiteli serveru SQL zrcadlen.
Nejlepším řešením je prolomení provizorní sítě a nasazení správné AD (domény). Jako prozatímní se ujistěte, že spustíte aplikaci pod účtem, který je zrcadlený na hostitelském počítači serveru SQL.
Pokud používáte Windows 7, možná budete muset "spustit jako správce". To umožní aplikaci znovu použít pověření systému Windows a předat je serveru SQL. Jinak předáte pověření hosta serveru SQL.