Azure Data Studio verbinden met SQL Server met behulp van Kerberos
Azure Data Studio biedt ondersteuning voor het maken van verbinding met SQL Server met behulp van Kerberos.
Als u geïntegreerde verificatie (Windows-verificatie) wilt gebruiken in macOS of Linux, moet u een Kerberos-ticket instellen dat uw huidige gebruiker koppelt aan een Windows-domeinaccount.
Vereisten
Om aan de slag te gaan, hebt u het volgende nodig:
Toegang tot een Windows-computer die lid is van een domein om een query uit te voeren op uw Kerberos-domeincontroller.
SQL Server moet worden geconfigureerd om Kerberos-verificatie toe te staan. Voor het clientstuurprogramma dat wordt uitgevoerd op Unix, wordt geïntegreerde verificatie alleen ondersteund door Kerberos te gebruiken. Zie Geïntegreerde Kerberos-verificatie gebruiken om verbinding te maken met SQL Server voor meer informatie. Er moeten SPN's (Service Principal Names) zijn geregistreerd voor elk exemplaar van SQL Server waarmee u verbinding wilt maken. Zie Een service-principalnaam registreren voor Kerberos-verbindingen voor meer informatie.
Controleren of SQL Server een Kerberos-installatie heeft
Meld u aan bij de hostcomputer van SQL Server. Gebruik setspn -L %COMPUTERNAME%
vanaf de Windows-opdrachtprompt alle SPN's voor de host. Controleer of er vermeldingen zijn die beginnen met MSSQLSvc/HostName.contoso.com
. Deze vermeldingen betekenen dat SQL Server een SPN heeft geregistreerd en gereed is om Kerberos-verificatie te accepteren.
Als u geen toegang hebt tot de host van het SQL Server-exemplaar, kunt u vanuit een ander Windows-besturingssysteem dat is gekoppeld aan dezelfde Active Directory, de opdracht setspn -L <SQLSERVER_NETBIOS>
gebruiken, waarbij <SQLSERVER_NETBIOS> de computernaam is van de host van het SQL Server-exemplaar.
Het Kerberos-sleuteldistributiecentrum ophalen
Zoek de KDC-configuratiewaarde (Kerberos Key Distribution Center). Voer de volgende opdracht uit op een Windows-computer die is gekoppeld aan uw Active Directory-domein.
Voer nltest
deze uit vanaf de opdrachtregel en vervang 'DOMAIN.CONTOSO.COM' door de naam van uw domein.
nltest /dsgetdc:DOMAIN.CONTOSO.COM
Uitvoer is vergelijkbaar met het volgende voorbeeld:
DC: \\dc-33.domain.contoso.com
Address: \\2111:4444:2111:33:1111:ecff:ffff:3333
...
The command completed successfully
Kopieer de DC-naam die de vereiste KDC-configuratiewaarde is. In dit geval is het dc-33.domain.contoso.com.
Uw besturingssysteem toevoegen aan de Active Directory-domeincontroller
sudo apt-get install realmd krb5-user software-properties-common python-software-properties packagekit
Bewerk het /etc/network/interfaces
bestand zodat het IP-adres van uw Active Directory-domeincontroller wordt vermeld als dns-nameserver
. Bijvoorbeeld:
<...>
# The primary network interface
auto eth0
iface eth0 inet dhcp
dns-nameservers **<AD domain controller IP address>**
dns-search **<AD domain name>**
Notitie
De netwerkinterface (eth0) kan verschillen voor verschillende computers. Als u wilt achterhalen welke u gebruikt, voert u ifconfig uit en kopieert u de interface met een IP-adres en verzonden en ontvangen bytes.
Nadat u dit bestand hebt bewerkt, start u de netwerkservice opnieuw op:
sudo ifdown eth0 && sudo ifup eth0
Controleer nu of het /etc/resolv.conf
bestand een regel bevat zoals de volgende:
nameserver **<AD domain controller IP address>**
Deelnemen aan het Active Directory-domein:
sudo realm join contoso.com -U 'user@CONTOSO.COM' -v
Dit is de verwachte uitvoer:
<...>
* Success
Het ophalen van het ticket testen
Haal een Ticket Granting Ticket (TGT) op van KDC.
kinit username@DOMAIN.CONTOSO.COM
Bekijk de beschikbare tickets met behulp van klist
. Als het kinit
lukt, ziet u een ticket.
klist
Dit is de verwachte uitvoer:
krbtgt/DOMAIN.CONTOSO.COM@ DOMAIN.CONTOSO.COM.
Verbinding maken met behulp van Azure Data Studio
Maak een nieuw verbindingsprofiel.
Selecteer Windows-verificatie als verificatietype.
Voer voor de server een volledig gekwalificeerde hostnaam in, in de indeling
hostname.DOMAIN.CONTOSO.COM
.Voltooi het verbindingsprofiel en selecteer Verbinding maken.
Nadat u verbinding hebt gemaakt, wordt uw server weergegeven in de zijbalk SERVERS .