SQL Server-databassäkerhet för SAP i Azure
Den här artikeln är en del av artikelserien "SAP extend and innovate security: Best practices".
- SQL Server-databassäkerhet för SAP i Azure
- Microsoft Sentinel för SAP på Azure
- Säkerhetsåtgärder för SAP på Azure
Den här artikeln innehåller säkerhetsöverväganden och rekommendationer för SAP på Azure som körs på en SQL Server-databas.
Skydda vilande data
SQL Server transparent datakryptering (TDE) krypterar data och loggfiler för användardatabaser och SQL Server-systemdatabaser. När den har krypterats kan kopior av data och loggfiler eller säkerhetskopieringsfiler inte återställas och användas utan de associerade certifikaten. Den här processen kallas för att skydda vilande data. Det är en transparent teknik för SAP-systemet som stöds av SAP Note 1380493 – SQL Server TDE. Information om TDE-proceduren finns i SQL Server-kryptering.
Alla datasidor som läs- eller skrivs till disken måste krypteras eller dekrypteras, så TDE har en CPU-påföljd. När TDE tillämpas på en användardatabas ökar CPU-användningen mellan 3 % och 8 %. Program som använder TempDB för SQL Server eller utför stora genomsökningar på stora tabeller påverkas mer. När minst en användardatabas på SQL Server-instansen krypteras med TDE krypteras även systemdatabaserna, till exempel TempDB. SAP Business Warehouse (SAP BW) är ett exempel på den här typen av program.
Kommentar
Om krypteringsnycklarna eller certifikaten går förlorade går data i den krypterade databasen förlorade. Det är viktigt att upprätta omfattande processer och steg för att skydda certifikatsäkerhetskopiorna.
En lyckad TDE-implementering kräver bra och grundlig testning och väl utformade processer för att hantera certifikat och säkerhetskopior av certifikat.
SQL Server-funktioner som inte stöds
SQL Server erbjuder även andra funktioner för dataskydd. Dessa metoder tillåter partiell kryptering eller maskering på databaskolumnens kornighet:
Baserat på begränsningarna för dessa tre metoder och de ändringar som krävs på många områden av SAP NetWeaver-komponenterna stöds inte dessa funktioner av SAP.
Realtidsreplikering mellan en TDE-aktiverad databas på SQL Server och SAP HANA stöds inte. Mer information finns i SAP OSS-anmärkning 2812637 – Realtidsreplikering stöds inte för TDE-aktiverad MSSQL Server-databas.
Kryptering av säkerhetskopiering
Säkerhetskopieringskryptering är när du krypterar säkerhetskopieringsfilen medan säkerhetskopieringen görs. Den krypterar alla datasidor i säkerhetskopian och skapar ett certifikat eller ett asymmetriskt nyckelkrav för att återställa säkerhetskopian, vilket förhindrar en obehörig återställning.
Om databasen inte krypteras med TDE innan den krypterade säkerhetskopieringen tas krypteras den fortfarande inte efter återställningen. Endast säkerhetskopieringsfilerna krypteras. Databasfilen och dess innehåll ändras inte.
Du kan använda kryptering för säkerhetskopiering med TDE, men det är inte fördelaktigt eftersom data redan är krypterade i databasfilerna och i säkerhetskopieringsfilerna. När du använder kryptering för säkerhetskopiering och TDE tillsammans krypteras den krypterade databasen med TDE-certifikatet eller nyckelkrypterade datasidor igen med säkerhetskopieringscertifikatet eller nyckeln. Den här metoden förlänger säkerhetskopieringsprocessen och lägger till extra CPU-belastning i systemet medan säkerhetskopieringsprocessen körs.
Skydda SQL Server- och SAP-system
Härdning på server- och operativsystemnivå är viktiga för ett säkert system som körs.
Följ följande rekommendationer för att skydda SQL Server och ditt SAP-system. Mer information finns i SAP OSS-2417205.
SQL Server baseras på Windows-implementeringen av TLS-protokollet (Transport Layer Security) och SSL-protokollet (Secure Sockets Layer) via SCHANNEL Security Support Provider (SSP).
Du kan inaktivera SSL-protokollet eftersom TLS används i stor utsträckning och stöds. Merparten av SQL Server- och SAP-produktsupporten använder TLS 1.2-protokollet .
Du kan styra de flesta säkerhetsinställningarna för SCHANNEL SSP via registerändringar i motsvarande SCHANNEL-gren. Med de här inställningarna kan du styra:
- Vilka protokoll, som SSL och TLS, är aktiverade för klient- och serverdelen av dialogrutan.
- Chiffer, till exempel RC2, RC4, Triple DES och AES, som är aktiverade och den ordning som de är aktiverade.
- Hash-algoritmerna, till exempel MD5 och SHA.
- Algoritmerna för nyckelutbyte, till exempel Diffie-Hellman och ECDH.
De olika kombinationerna av dessa delar, till exempel protokollet, chiffer- och hash- och nyckelutbytesalgoritmen, representeras i chiffersviter. När du inaktiverar en av dessa delar, till exempel protokoll-SSL 2.0, är alla chiffersviter som innehåller den här delen oanvändbara för systemet.
Kommentar
När du kombinerar flera ändringar kanske klienten, till exempel SAP-systemet, och servern, till exempel SQL Server, inte kan använda en chiffersvit för att kommunicera, och SAP-systemet kanske inte startar.
Du kan också styra prioriteten och tillgängligheten för chiffersviter i systemet i den lokala grupprincipredigeraren.
- Gå till Datorkonfiguration för lokal datorKonfiguration > > Administrativa mallar Nätverks-SSL-konfigurationsinställningar > > .
- Definiera en anpassad SSL-chiffersvitordning.
Den här listordningen definierar den prioritet som systemet använder chiffersviter. Om du tar bort en chiffersvit från listan kan den inte längre användas i systemet. Grupprincipinställningen har prioritet framför registerinställningen SCHANNEL. Säkerhetsavdelningen styr vanligtvis den här inställningen baserat på grupprinciper. Men sap-bas- eller SQL Server-databasadministrationsgruppen hanterar de resulterande anslutningsproblemen.
Överväg att använda SAP-verktyget SCoTT för att analysera problem med inaktiverade protokoll eller chiffersviter. Verktyget kan analysera anslutningsproblem mellan SAP-systemet, till exempel ABAP och Java, och SQL Server som körs på Linux eller Windows. Mer information finns i SAP-2846170.
Autentisering
Här följer några överväganden för autentisering med SAP i Azure.
SAP NetWeaver på SQL Server har specifika krav för SAP- och SQL Server-startkontona, autentisering till SQL Server-instansen, SAP-databasen och DBA-åtkomsten. Mer information finns i SAP Note 1645041 – SQL Server-inloggningar och deras användning i SAP-miljöer.
SAP ABAP NetWeaver-systemet kräver inte SQL Server-inloggningar eftersom alla anslutningar använder Windows-autentisering. För användaren
SAPService<SID>
eller<SID>administrator
kan du till exempel inaktivera SQL Server-autentiseringsfunktionen.SAP JAVA NetWeaver-systemet kräver SQL Server-autentiseringsfunktionen eftersom den använder en SQL Server-inloggning, till exempel
SAP<SID>DB
, för anslutningen.För SAP på SQL Server kan du inaktivera SQL Server-systemadministratörskontot eftersom SAP-systemen på SQL Server inte använder kontot. Se till att en annan användare med systemadministratörsbehörighet kan komma åt servern innan du inaktiverar det ursprungliga systemadministratörskontot.
Ett system med hög tillgänglighet som använder SQL Server AlwaysOn har specifika krav för inloggningar, användare och jobb. Alla servrar som är anslutna till systemet måste ha exakt samma inloggningar och användare, så ATT SAP-systemet kan ansluta även om en redundansväxling sker till en annan nod. Alla SAP-relaterade SQL Server-jobb måste ha samma ägare på alla AlwaysOn-noder. Mer information finns i Synkronisera SAP-inloggningar, jobb och objekt.
SQL-inmatning är när skadlig kod slås samman med SQL-instruktioner som körs på SQL Server. När en rapport körs i SAP-systemet genererar den allmänna SQL-instruktioner från RAPPORTENs ABAP-kod. -instruktionerna skickas till och transformeras av SAP-databaslagret för SQL Server.
Det här databasskiktet är integrerat i SAP-arbetsprocessen och är inte tillgängligt utifrån. Efter omvandlingen till SQL Server-specifika instruktioner skickas de till databasen och körs. Resultatet returneras till den anropande rapporten. Dessa instruktioner kan bara ändras mellan databasskiktet i SAP-systemet och SQL Server-instansen, som kallas för en man-in-the-middle-attack.
I SAP-systemet använder du krypterade anslutningar mellan arbetsprocessen och SQL Server-databasen för att förhindra dessa attacker. Transaktionen
DBACockpit
har ett rudimentärt SQL-kommandofönster för att köra grundläggande SQL-instruktioner. Mer information finns i SAP Note 1027512 – MSSQL: DBA-cockpit för basversion 7.00 och senare.
Audit
Inaktivera
xp_cmdshell
. Sql Server-funktionenxp_cmdshell
aktiverar ett internt kommandogränssnitt för SQL Server-operativsystemet. Det är en potentiell risk i säkerhetsgranskningar.Den här funktionen är aktiverad när du installerar SAP. Den samlar in och visar operativsystemdata i transaktionen
DBACockpit
. Om du inaktiverar inställningen är vissa övervakningsdata inte tillgängliga i transaktionenDBACockpit
och ett varningsmeddelande visas iDBACockpit
meddelandefönstret. Mer information finns i SAP-3019299 – Frågor om säkerhetsgranskning eller säkerhetsanpassning i NetWeaver- och SQL Server-system.Konfigurera virusskannrar korrekt. SAP stöder virusskannrar för att skydda mot virus och annan skadlig kod, men en dåligt konfigurerad virusskanner kan orsaka prestandaproblem eller till och med skada databasen. Information om hur du konfigurerar en virusskanner på operativsystemet för ett SAP NetWeaver-system finns i SAP Note 106267 – Programvara för virusskanner i Windows. För en SQL Server-databas anger du rätt konfigurationer för att undvika prestanda- och skadade problem. Detaljerade konfigurationer finns i Så här väljer du antivirusprogram som ska köras på datorer som kör SQL Server.