Som nævnt i min spørgsmålsopdatering ændrer du tjenestekontoen til at være i Domain2 løst problemet. Så hvad foregik der?
Problemet – forklaret
Efter hvad jeg kan se (også med hjælp fra en Microsoft-repræsentant), fordi tjenestekontoen oprindeligt var et Domain1 bruger, kunne den ikke bestemme, hvilke lokale domænegrupper den forbindende bruger er medlem af, når brugeren godkender via Kerberos. Den primære ledning til, at dette var et Kerberos-problem, var, da jeg oprettede forbindelse ved hjælp af "Named Pipes", da dette bruger NTLM-godkendelse.
Samlet løsning
For at bringe det hele sammen, at tilføje brugere fra Domain1 og Domain3 som medlemmer af grupper i Domain2 så grupperne kan bruges som SQL Server-login med Windows-godkendelse, er her en liste over krav (eller i det mindste stærkt opfordret):
- Etablerede tillidsforhold mellem domænerne
- Mindst 1-vejs-trusts skal konfigureres, så
Domain2har tillid tilDomain1ogDomain3
- Mindst 1-vejs-trusts skal konfigureres, så
- Grupper i
Domain2skal have omfanget "Lokalt domæne"- Dette er, så du kan tilføje brugere og grupper fra
Domain1ogDomain3 - Se her for mere information
- Dette er, så du kan tilføje brugere og grupper fra
- Brug SQL Server Configuration Manager til at udpege en ikke-administrativ
Domain2bruger som tjenestekontoidentitet- MSDN dokumenterer, hvorfor det kan være at foretrække at bruge en domænebrugerkonto
- Selvom det er meningen, at konfigurationsmanageren skal tilføje brugere til lokale SQL Server 2005-specifikke grupper for dig (dvs. SQLServer2005MSSQLUser$MY_MACHINE$MY_INSTANCE), stødte jeg på nogle få tilfælde, hvor dette ikke var tilfældet. Så tjek bare dine lokale grupper for at sikre, at de er blevet opdateret korrekt med dit
Domain2brugerkonto. - Selvom SQL Server-konfigurationen automatisk skulle tildele passende tilladelser til deres lokale grupper, stødte jeg igen på et par tilfælde, hvor dette ikke var tilfældet. Hvis dette sker for dig, kan du henvise til denne MSDN-artikel sammen med den tidligere nævnte artikel for tilladelseskrav.
- Konfigurer et Service Principal Name (SPN) for SQL Server-instansværten (inklusive eventuelle aliaser) og
Domain2servicekonto- SPN er påkrævet for gensidig godkendelse mellem klienten og serverværten
- Se denne TechNet-artikel for mere information
- Afhængigt af hvordan du har tænkt dig at bruge personefterligning, vil du måske aktivere
Domain2servicekonto, der skal have tillid til delegering- Se denne TechNet-artikel for mere information
- Aktiver fjernforbindelser for SQL Service-instansen
- Til sidst skal du oprette logins for det ønskede
Domain2grupper og enhverDomain1ellerDomain3medlemmer skal kunne oprette forbindelse eksternt!
Bemærk
Som altid med enhver ekstern netværksaktivitet, skal du kontrollere dine firewalls for at sikre, at dine SQL Server-porte ikke er blokeret. Selvom standardporten er 1433, skal du kontrollere, at din port er fri.