SQL Server on Linux – Biztonsági és engedély-útmutató

Ez a cikk az SQL Server on Linux szükséges szolgáltatásfiókokat és fájlrendszer-engedélyeket ismerteti. A Windows engedélyekkel kapcsolatos információkat az SQL Serverrel kapcsolatban a Windows szolgáltatásfiókok és -engedélyek konfigurálása című témakörben talál.

Beépített Windows alapelvek

Annak ellenére, hogy SQL Server on Linux az mssql operációsrendszer-fiók alatt fut, a kompatibilitás érdekében a következő Windows tagok találhatók a SQL Server rétegben. Ne távolítsa el vagy tiltsa le őket, hacsak nem ismeri teljes mértékben a kockázatokat.

Vezető Alapértelmezett SQL Server szerepkör Részletek
BUILTIN\Administrators sysadmin Leképezi a gazdagép gyökérszintű rendszergazdáját. Bizonyos rendszerobjektumok ennek a fióknak a kontextusában futnak.
NT AUTHORITY\SYSTEM public A Windows SYSTEM fiókhoz fenntartott szolgáltatásazonosító (SID). Továbbra is úgy lett létrehozva, hogy a platformfüggetlen szkriptek sikeresek lehessenek.
NT AUTHORITY\NETWORK SERVICE Nincs (csak kompatibilitás) Korábban a Windows több SQL Server szolgáltatásához az alapértelmezett indítási fiók volt. Csak a visszamenőleges kompatibilitás érdekében jelenik meg. A SQL Server on Linux Database Engine nem használja.

Fájl- és címtártulajdon

A mappában /var/opt/mssql lévő összes fájlnak a mssql felhasználó tulajdonában kell lennie, és mssql a csoportnak (mssql:mssql) olvasási és írási hozzáféréssel kell rendelkeznie mindkettőhöz. Ha módosítja az alapértelmezett umaskot (0022), vagy alternatív csatlakoztatási pontokat használ, manuálisan kell újból alkalmaznia ezeket az engedélyeket.

A mappa alapértelmezett engedélyei a mssql következők:

drwxr-xr-x  3 root  root  4096 May 14 17:17 ./
drwxr-xr-x 13 root  root  4096 Jan  7  2025 ../
drwxrwx---  7 mssql mssql 4096 May 14 17:17 mssql/

A mssql mappa tartalmának alapértelmezett engedélyei a következők:

drwxrwx--- 7 mssql mssql 4096 May 14 17:17 ./
drwxr-xr-x 3 root  root  4096 May 14 17:17 ../
drwxr-xr-x 5 mssql mssql 4096 May 14 17:17 .system/
drwxr-xr-x 2 mssql mssql 4096 May 14 17:17 data/
drwxr-xr-x 3 mssql mssql 4096 Sep 16 22:57 log/
-rw-r--r-- 1 root  root    85 May 14 17:17 mssql.conf
drwxrwxr-x 2 mssql mssql 4096 May 14 17:17 secrets/
drwxr-xr-x 2 mssql mssql 4096 May 14 17:17 security/

A felhasználói adatok helyének, a naplófájl helyének, a rendszeradatbázisnak és a naplóhelyeknek a módosításáról a Configure SQL Server on Linux az mssql-conf eszközzel című témakörben talál további információt.

Tipikus SQL Server könyvtárak

Cél Alapértelmezett elérési út Részletek
Rendszer- és felhasználói adatbázisok /var/opt/mssql/data Ide tartoznak a master, a model, a tempdb, valamint az új adatbázisok, kivéve, ha mssql-conf átirányítja őket. További információ: A rendszeradatbázisok alapértelmezett helyének módosítása.
Tranzakciónaplók (ha külön van) /var/opt/mssql/data, vagy a megadott mssql-conf set filelocation.defaultlogdir elérési út. A tranzakciónaplók áthelyezésekor tartsa meg ugyanazt a tulajdonjogot. További információ: Az alapértelmezett adatok vagy naplókönyvtár helyének módosítása.
Biztonsági másolatok /var/opt/mssql/data Hozzon létre és állítsa be a chown első biztonsági mentés előtt, vagy kötet vagy könyvtár térképezésekor. További információ: Az alapértelmezett biztonsági mentési könyvtár helyének módosítása.
Hibanaplók és kiterjesztett eseménynaplók (XE) /var/opt/mssql/log Emellett az alapértelmezett system-health XE munkamenetet is üzemelteti. További információ: Az alapértelmezett hibanapló-fájlkönyvtár helyének módosítása.
Memóriaképek /var/opt/mssql/log Magos memóriaképekhez és DBCC CHECK* memóriaképekhez használatos. További információért lásd: Az alapértelmezett hibakeresési fájl könyvtár helyének módosítása.
Biztonsági titkos kódok /var/opt/mssql/secrets TLS-tanúsítványokat, oszlop főkulcsokat stb. tárol.

Az egyes ügynökök minimális SQL Server szerepkörei

Ügynök Fut Linuxként Csatlakozik ehhez Szükséges adatbázis-szerepkörök/jogosultságok
Snapshot ügynök mssql (SQL Agent feladatán keresztül) Distributor db_owner a terjesztési adatbázisban; olvasás/írás pillanatkép mappában
Naplóolvasó ügynök mssql Kiadó & Forgalmazó db_owner kiadványadatbázisban és -terjesztésben. Szükség lehet a sysadminra a biztonsági másolatból történő inicializálás használatakor
Terjesztési ügynök (push) mssql Terjesztő az előfizetőnek db_owner eloszlásban; db_owner az előfizetési adatbázisban. Pillanatkép mappa olvasása. PAL-tag.
Terjesztési ügynök (lekérés) mssql (előfizetőn) Előfizető a terjesztő számára
Terjesztő az előfizetőnek
Ugyanaz, mint a Distribution Agent (leküldés), de a pillanatképmegosztási jogosultságok az előfizetői gazdagépre vonatkoznak.
Egyesítő ügynök mssql Publisher, forgalmazó, előfizető db_owner eloszlásban. PAL-tag. Pillanatkép mappa olvasása. Olvasás és írás kiadványi és előfizetési adatbázisokban.
Várólista-olvasó ügynök mssql Distributor db_owner eloszlásban. Csatlakozik a Publisherhez a kiadványadatbázisban db_owner jogosultsággal.

Ajánlott eljárások

A SQL Server által használt mssql felhasználó és csoport alapértelmezés szerint nem bejelentkezési fiók, és így kell tartani. Biztonsági okokból használja a Windows-hitelesítést az SQL Server Linuxon, ahol lehetséges. További információt arról, hogyan konfigurálhatja a Windows-hitelesítést SQL Server a Linuxon, a következő útmutatóban talál: Útmutató: Az adutil használatával konfigurálhat Active Directory-hitelesítést SQL Server a Linuxon.

A fájlengedélyek további korlátozása (a parancs chmod 700használatával), ha a címtárnak nincs szüksége csoporthozzáférésre.

Amikor gazdagépkönyvtárakat vagy NFS-megosztásokat tárolókba vagy virtuális gépekre csatol, először hozza létre őket, majd rendelje hozzá a felhasználói azonosítót (UID) 10001 (alapértelmezés szerint mssql).

Kerülje a sysadmin szerepkör hozzáadását az alkalmazás-bejelentkezésekhez. Ehelyett használjon részletes szerepköröket és EXECUTE AS burkolókat. Egy másik sa létrehozása után tiltsa le vagy nevezze át a fiókot. További információ: Az SA-fiók letiltása ajánlott eljárásként.