Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit artikel worden de vereiste serviceaccounts en bestandssysteemmachtigingen voor SQL Server in Linux beschreven. Zie Windows-serviceaccounts en -machtigingen configureren voor meer informatie over SQL Server voor Windows-machtigingen.
Ingebouwde Windows-principes
Hoewel SQL Server op Linux wordt uitgevoerd onder het mssql besturingssysteemaccount, bestaan de volgende Windows-principals op de SQL Server-laag voor compatibiliteit. Verwijder ze niet of weiger ze alleen als u de risico's volledig begrijpt.
| Schoolleider | Standaard SQL Server-functie | Details |
|---|---|---|
BUILTIN\Administrators |
sysadmin | Wordt toegewezen aan de root-level beheerders van de host. Bepaalde systeemobjecten worden uitgevoerd in de context van dit account. |
NT AUTHORITY\SYSTEM |
public | Beveiligingsidentificatie (SID) gereserveerd voor het Windows-accountSYSTEM. Nog steeds gemaakt zodat cross-platform scripts die verwachten dat het slaagt. |
NT AUTHORITY\NETWORK SERVICE |
Geen (alleen compatibiliteit) | Historisch gezien het standaard opstartaccount voor verschillende SQL Server-services in Windows. Alleen aanwezig voor compatibiliteit met eerdere versies. Niet gebruikt door de SQL Server on Linux Database Engine zelf. |
Eigendom van bestanden en mappen
De gebruiker en mssql groep mssql (mssql:mssql) moeten alle bestanden onder de /var/opt/mssql map bezitten, met lees- en schrijftoegang voor beide. Als je de standaard umask (0022) verandert of alternatieve mountpoints gebruikt, moet je deze rechten handmatig opnieuw toepassen.
De standaardmachtigingen voor de mssql map zijn als volgt:
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/
De standaardmachtigingen voor de inhoud van de mssql map zijn als volgt:
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/
Zie SQL Server configureren in Linux met het hulpprogramma mssql-conf voor meer informatie over het wijzigen van de locatie van gebruikersgegevens, de locatie van het logboekbestand of de systeemdatabase en logboeklocaties.
Typische SQL Server mappen
| Purpose | Standaardpad | Details |
|---|---|---|
| Systeem- en gebruikersdatabases | /var/opt/mssql/data |
Omvat master, model, tempdb en eventuele nieuwe databases, tenzij ze door mssql-conf worden omgeleid. Zie De standaardlocatie voor systeemdatabases wijzigen voor meer informatie. |
| Transactielogboeken (indien gescheiden) |
/var/opt/mssql/dataof het pad dat is ingesteld via mssql-conf set filelocation.defaultlogdir. |
Houd hetzelfde eigendom als u transactielogboeken verplaatst. Zie De standaardgegevens- of logboekmaplocatie wijzigen voor meer informatie. |
| Backups | /var/opt/mssql/data |
Maak en stel deze in met chown vóór de eerste back-up, of wanneer u een volume of map toewijst. Zie De standaardlocatie van de back-upmap wijzigen voor meer informatie. |
| Foutlogboeken en Extended Event (XE)-logboeken | /var/opt/mssql/log |
Host ook de standaard system-health XE-sessie. Zie De standaardlocatie van de map voor foutenlogboekbestanden wijzigen voor meer informatie. |
| Geheugendumps | /var/opt/mssql/log |
Slaat kerndumps en DBCC CHECK* dumps op. Zie De standaardlocatie van de dumpmap wijzigen voor meer informatie. |
| Beveiligingsgeheimen | /var/opt/mssql/secrets |
Slaat items op zoals TLS-certificaten en kolomhoofdsleutels. |
Minimale SQL Server-functies voor elke agent
| Agent | Wordt uitgevoerd als (Linux) | Verbinding maken met | Vereiste databaserollen/-rechten |
|---|---|---|---|
| Agent voor Momentopname |
mssql (via SQL Agent-taak) |
Distributor | db_owner in database voor distributie; lezen/schrijven in momentopnamenmap |
| Logboekleesagent | mssql |
Uitgever en Distributeur | db_owner in de publicatiedatabase en distributie. Misschien heb je sysadmin nodig als je initialize from backup gebruikt |
| Distributieagent (push) | mssql |
Distributeur naar abonnee | db_owner in distributie; db_owner in abonnementsdatabase. Lees de map met momentopnames. PAL-lid. |
| Distributieagent ("pull") |
mssql (bij abonnee) |
Abonnee bij Distributeur Distributeur naar abonnee |
Hetzelfde als Distribution Agent (push), maar sharemachtigingen voor momentopnamen zijn van toepassing op abonneehost |
| Samenvoegingsagent | mssql |
Uitgever, distributeur, abonnee | db_owner in distributienetwerk. PAL-lid. Lees de map met momentopnames. Lezen/schrijven in publicatie- en abonnementsdatabases. |
| Agent voor wachtrijlezer | mssql |
Distributor | db_owner in distributienetwerk. Maakt verbinding met Publisher met db_owner in de publicatiedatabase. |
Aanbevolen procedures
De gebruiker en groep mssql die SQL Server gebruikt, is standaard een niet-inlogaccount. Houd het zo voor de veiligheid. Gebruik Windows authentication voor SQL Server on Linux waar mogelijk. Zie zelfstudie: Adutil gebruiken om Active Directory-verificatie te configureren met SQL Server op Linux voor meer informatie over het configureren van Windows-verificatie voor SQL Server in Linux.
Beperk bestandsmachtigingen verder (met behulp van de opdracht chmod 700) wanneer de map geen groepstoegang nodig heeft.
Wanneer hostdirectories of NFS-shares worden gekoppeld aan containers of virtuele machines, maak deze eerst aan en map vervolgens UID 10001 (standaard voor mssql).
Vermijd het verlenen van sysadmin aan toepassingsaanmelding. Gebruik in plaats daarvan gedetailleerde rollen en EXECUTE AS wrappers. Schakel het account uit of hernoem het sa zodra je een nieuw systeembeheerderaccount hebt aangemaakt. Zie Het SA-account uitschakelen als aanbevolen procedure voor meer informatie.