A cikk részletes útmutatóval szolgál az SQL Server
rendszergazdai jelszavának módosításához.
A Microsoft SQL Server 2005 Express, Microsoft SQL Server Desktop Engine (MSDE) 2000 program, illetve a Microsoft SQL Server korábbi változatai beállíthatók úgy, hogy vegyes hitelesítési módban fussanak. A rendszergazdai (
sa) fiók a telepítési folyamat alatt jön létre, és
teljes jogokkal bír az SQL Server környezetében. Alapértelmezés szerint a rendszergazdai (
sa) jelszó üres, de az MSDE telepítőjének futtatásakor ez megváltoztatható. A biztonság érdekében az első adandó alkalommal módosítsa a
rendszergazdai jelszót erős jelszóra.
Annak ellenőrzése, hogy üres-e a rendszergazdai jelszó
- Nyisson meg egy parancssorablakot azon a számítógépen, amelyen az az MSDE példány található, amelyhez csatlakozik.
- Írja be a parancssorba a következő parancsot, majd nyomja meg az ENTER billentyűt:
osql -U sa
Ezzel csatlakozik az MSDE helyi, alapértelmezett példányához a rendszergazdai (sa) fiók használatával. Ha kapcsolódni szeretne egy névvel rendelkező, a számítógépre telepített példányhoz, írja be a következőt:
osql -U sa -S kiszolgálónév\példánynév
Ekkor a számítógép a következő megadását kéri:
Jelszó: - Nyomja meg újra az ENTER billentyűt. Ez üres jelszót küld el rendszergazdai (sa) jelszóként.
Ha az ENTER billentyű lenyomása után a számítógép a következő üzenetet jeleníti meg, nincs megadva jelszó a rendszergazdai (sa) fiókhoz:
1>
A legnagyobb biztonság érdekében ajánlatos nem üres, erős jelszót megadni.
Ha a következőhöz hasonló hibaüzenetet kap, hibás jelszót adott meg. Az üzenet azt jelzi, hogy létrehoztak egy jelszót az sa (rendszergazdai) fiókhoz: „A felhasználó (SA) bejelentkezése sikertelen.”
Ha a következőhöz hasonló üzenet jelenik meg, az azt jelzi, hogy az SQL Server programot futtató számítógép kizárólag Windows-hitelesítésre van beállítva: A felhasználó (SA) bejelentkezése sikertelen. Ok: Nincs hozzárendelve megbízható SQL Server-kapcsolathoz.
Windows-hitelesítés módban a rendszergazdai (sa) jelszó nem ellenőrizhető. Az sa fiók biztonsága érdekében létrehozhat rendszergazdai (sa) jelszót arra az esetre, ha a hitelesítési mód a jövőben vegyes módra változna.
Ha a következőhöz hasonló hibaüzenet kap, elképzelhető, hogy az SQL Server nem fut, vagy rossz nevet adott meg az SQL Server telepített, névvel ellátott példányához:
[Megosztott memória]Az SQL Server nem létezik, vagy a hozzáférés megtagadva.
[Megosztott memória]ConnectionOpen (Connect()).
A rendszergazdai (SA) jelszó módosítása
- Nyisson meg egy parancssorablakot azon a számítógépen, amelyen az az MSDE példány található, amelyhez csatlakozik.
- Írja be a következő parancsot, majd nyomja meg az ENTER billentyűt:
osql -U sa
Amikor a számítógép a jelszó megadását kéri, üres jelszó esetén nyomja meg az ENTER billentyűt, vagy adja meg előtte az aktuális jelszót. Ezzel csatlakozik az MSDE helyi, alapértelmezett példányához a rendszergazdai (sa) fiók használatával. Ha Windows-hitelesítéssel szeretne kapcsolódni, írja be a következő parancsot: use osql -E
Megjegyzés: Az SQL Server 2005 Express használata esetén kerülje az Osql segédprogram használatát, és fontolja meg a jelenleg az Osql szolgáltatást használó alkalmazások módosítását. Az Osql helyett használja az Sqlcmd segédprogramot.
Az Sqlcmd segédprogramról további tudnivalókat a Microsoft Developer Network (MSDN) következő webhelyén talál:
http://msdn2.microsoft.com/en-us/library/ms165702.aspx
(http://msdn2.microsoft.com/en-us/library/ms165702.aspx)
- Írja be a következő parancsokat a parancssorba külön sorokban, majd nyomja meg az ENTER billentyűt:
sp_password @old = null, @new = 'osszetett_jelszo', @loginame ='sa'
go
Megjegyzés: Az „osszetett_jelszo” kifejezés helyére az új, erős jelszót kell beírnia. Az erős jelszavak alfanumerikus és speciális, valamint kis- és nagybetűs karakterek kombinációjából állnak.
Ekkor a következő tájékoztató üzenetet kapja a jelszó megváltoztatásáról:
A hitelesítési módszer meghatározása és módosítása
Fontos: A cikk a beállításjegyzék (korábbi nevén rendszerleíró adatbázis) módosításával is foglalkozik. A beállításjegyzékről módosítása előtt készítsen biztonsági másolatot, illetve győződjön meg arról, hogy szükség esetén helyre tudja állítani a beállításjegyzéket. A beállításjegyzék biztonsági mentéséről, visszaállításáról és módosításáról a Microsoft Tudásbázis alábbi cikkében tájékozódhat:
256986
(http://support.microsoft.com/kb/256986/
)
A Microsoft Windows rendszerleíró adatbázisának ismertetése
Figyelmeztetés: A beállításszerkesztővel (Rendszerleíróadatbázis-szerkesztő) vagy más eszközzel helytelenül módosított beállításjegyzék komoly problémákat okozhat, amelyek akár az operációs rendszer újratelepítését is szükségessé tehetik. A Microsoft nem garantálja az ilyen jellegű problémák megoldhatóságát, ezért a beállításjegyzéket csak saját felelősségére módosíthatja.
Ha nem biztos benne, hogyan ellenőrizheti a telepített MSDE példány hitelesítési módszerét, ellenőrizze a megfelelő rendszerbeállítási bejegyzést. Alapértelmezés szerint a Windows
LoginMode beállításkulcsának (korábbi nevén rendszerleíró kulcs) értéke „1”, amely Windows-hitelesítést jelent. Vegyes módú hitelesítés esetén az alkulcs értéke „2”.
- A LoginMode alkulcs helye attól függ, hogy az MSDE példányt alapértelmezettként vagy névvel ellátott példányként telepítette-e. Ha az MSDE példányt alapértelmezettként telepítette, a LoginMode alkulcs a következő beállításkulcsban található:
HKLM\Software\Microsoft\MSSqlserver\MSSqlServer\LoginModeMegjegyzés: SQL Server 2005 használata esetén keresse meg az alábbi beállításkulcsot függetlenül attól, hogy alapértelmezett vagy névvel ellátott példányt telepített-e. Az
MSSQL.x helyőrző a rendszerének megfelelő érték:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLServer
- Ha az MSDE példányt névvel ellátva telepítette, a LoginMode alkulcs a következő beállításkulcsban található:
HKLM\Software\Microsoft\Microsoft SQL Server\%InstanceName%\MSSQLServer\LoginMode
Megjegyzés: A hitelesítési módok közötti váltás előtt az esetleges biztonsági rések elkerülése végett állítson be egy rendszergazdai (
sa) jelszót.
Ha vegyes módúról integrált (Windows-) hitelesítésre szeretne váltani, az alábbi lépéseket kell követnie:
- Az MSSQLSERVER és minden kapcsolódó szolgáltatás (például az SQLSERVERAgent) leállításához nyissa meg a Vezérlőpult Szolgáltatások kisalkalmazását.
- Nyissa meg a Beállításszerkesztőt. A Beállításszerkesztő megnyitásához kattintson a Start menü Futtatás parancsára, majd írja be a következőt: „regedt32” (idézőjelek nélkül)
Kattintson az OK gombra. - Keresse meg az alábbi alkulcsok egyikét (attól függően, hogy az MSDE példányt alapértelmezettként vagy névvel ellátva telepítette-e):
HKEY_LOCAL_MACHINE\Software\Microsoft\MSSqlserver\MSSqlServer
vagyHKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\<Instance Name>\MSSQLServer\
- A jobb oldali ablaktáblában kattintson duplán a LoginMode alkulcsra.
- A duplaszó szerkesztésére szolgáló párbeszédpanelben állítsa az alkulcsot „1” értékre. Győződjön meg arról, hogy be van jelölve a Hexadecimális beállítás, majd kattintson az OK gombra.
- A módosítás érvénybe léptetéséhez indítsa újra az MSSQLSERVER és az SQLSERVERAgent szolgáltatást.
Biztonsággal kapcsolatos gyakorlati tanácsok az SQL Server telepítéséhez
Az alábbi tanácsok mindegyike biztonságosabbá teszi a rendszert, és részét képezi az SQL Server bármely telepítésekor követendő általános biztonsági intézkedéseknek.
- Tegye biztonságossá a rendszergazdai (sa) bejelentkezési fiókot egy nem üres jelszó használatával. Egyes férgek csak akkor működnek, ha a rendszergazdai (sa) bejelentkezési fiók nem biztonságos. Ha meg szeretne győződni arról, hogy a beépített rendszergazdai (sa) fiók erős jelszóval rendelkezik, kövesse az SQL Server Books Online „System Administrator (SA) Login” (Rendszergazdai (SA) bejelentkezés) című témakörében ajánlottakat akkor is, ha soha nem használja közvetlenül a rendszergazdai (sa) fiókot.
- Blokkolja az internetes átjárók 1433-as portját, és rendelje hozzá az SQL Server példányát egy másik porthoz.
- Ha az internetes átjárókon szükség van az 1433-as portra, engedélyezze a kimenő és a bejövő adatok szűrését a port helytelen használatának megelőzése érdekében.
- Futtassa az SQLServer szolgáltatást és az SQL Server Agent összetevőt a Microsoft Windows NT fiókkal a helyi rendszerfiók helyett.
- Engedélyezze a Microsoft Windows NT hitelesítési módot, majd engedélyezze mind a sikeres, mind a sikertelen bejelentkezések naplózását. Ezután állítsa le, majd indítsa újra az MSSQLServer szolgáltatást. Állítsa be az ügyfeleken a Windows NT hitelesítési mód használatát.
Az üres rendszergazdai (sa) jelszavak kihasználásának lehetőségeiről a Microsoft Tudásbázis alábbi cikkében tájékozódhat:
313418
(http://support.microsoft.com/kb/313418/
)
Probléma: Az üres rendszergazdai (SA) jelszóval rendelkező, nem biztonságos SQL Server ki van téve a férgek általi támadásoknak (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
A hitelesítési mód módosítása után az SQL Server 2000 Service Pack 1 szervizcsomagját követő változataiban tapasztalható működésbeli változásról a Microsoft Tudásbázis alábbi cikkében tájékozódhat:
274773
(http://support.microsoft.com/kb/274773/
)
Javítás: Ha Windows-biztonságról Windows/SQL-biztonságra vált, a rendszergazdai (SA) jelszó üres (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)