[KB8406] Přidání oprávnění k získání umístění databázových dat pro generování automatických vyloučení pro Microsoft SQL Server v produktech ESET Windows server

POZNÁMKA:

Tato stránka byla přeložena počítačem. Chcete-li zobrazit originální text, klikněte v části Jazyky na této stránce na Angličtina. Pokud vám něco není jasné, obraťte se na místní podporu.

Obsah

Řešení

Při získávání vlastního umístění dat databáze se objeví chyba

Automatická vyloučení pro Microsoft SQL Server se skládají především z výchozích umístění databázových souborů. Skládá se však také z cest, kde jsou databázové soubory uloženy ve vlastních umístěních. V tomto případě je NT AUTHORITY\SYSTEM musí mít účet příslušná práva, aby mohl tyto informace získat z hlavní databáze.

V Microsoft SQL Serveru 2016 a novějších verzích společnost Microsoft odstranila serverovou roli sysadmin pro účet NT AUTHORITY\SYSTEM, což způsobilo, že serverové produkty ESET Windows ztratily přístup k datům v hlavní databázi, která obsahuje umístění databázových dat instance Microsoft SQL Serveru.

Serverové produkty ESET Windows o tomto problému informují prostřednictvím chybového hlášení. Klikněte na položku Soubory protokolu, z rozevírací nabídky vyberte možnost Události a zobrazte chybovou zprávu:

"Při načítání databázových souborů z databází Microsoft SQL Server došlo k chybě. Zkontrolujte, zda má účet 'NT AUTHORITY\SYSTEM' dostatečná oprávnění ke čtení dat ze systémových pohledů hlavních databází."

Obrázek 1-1
Kliknutím na obrázek se zobrazí větší v novém okně
Pokud z bezpečnostních důvodů nemůžete provést žádné změny
  • Pokud nemůžete provést žádné změny, budou automatická vyloučení obsahovat pouze výchozí umístění.
  • Pokud se některé databázové soubory nacházejí v určitém umístění nebo umístěních (nikoli ve výchozí cestě), přidejte tuto cestu nebo cesty ručně nebo do vyloučení.
  • Pokud jsou všechny databázové soubory umístěny pouze ve výchozích umístěních, tuto chybu ignorujte.


Povolení služby ESET pro získání vlastního umístění dat databáze

Chcete-li naší službě umožnit získat vlastní umístění dat databáze, postupujte podle jednoho ze tří níže uvedených postupů pomocí aplikace Microsoft SQL Server Management Studio:

  1. Udělte oprávnění "Zobrazit libovolnou definici" účtu NT AUTHORITY\SYSTEM (doporučeno)
  2. Přidělení role serveru 'sysadmin' účtu NT AUTHORITY\SYSTEM
  3. Přiřazení role 'db_owner' databázi 'master' v účtu NT AUTHORITY\SYSTEM
A. Udělte oprávnění "Zobrazit libovolnou definici" účtu NT AUTHORITY\SYSTEM (doporučeno)
Doporučený postup

Tento postup uděluje pouze práva ke čtení, takže má minimální dopad na zabezpečení systému.

  1. Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybrané instanci serveru Microsoft SQL Server.

  2. Klikněte na položku Securables. Ve sloupci Grant zaškrtněte políčko vedle možnosti Zobrazit libovolnou definici. Klikněte na OK.

    Obrázek 2-1
B. Přidělte serverovou roli "sysadmin" účtu NT AUTHORITY\SYSTEM
  1. Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybrané instanci serveru Microsoft SQL Server.

  2. Klikněte na položku Role serveru, zaškrtněte políčko vedle položky sysadmin a klikněte na tlačítko OK.

    Obrázek 2-2
C. Přiřaďte databázovou roli "db_owner" databázi "master" v účtu NT AUTHORITY\SYSTEM
  1. Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybrané instanci serveru Microsoft SQL Server.

  2. Klikněte na možnost Mapování uživatelů. V části Uživatelé namapovaní na toto přihlášení zaškrtněte políčko vedle položky master. V části Členství v databázové roli pro zaškrtněte políčko vedle db_owner. Klikněte na OK.

    Obrázek 2-3
Postupy, které mají být provedeny pro každou instanci serveru Microsoft SQL Server

Zvolený postup je třeba provést pro každou instanci serveru Microsoft SQL Server nainstalovanou na serveru.

Získat seznam instancí serveru Microsoft SQL Server nainstalovaných na serveru.

Pokud používáte více instancí serveru Microsoft SQL Server na jednom serveru, připojte se ke konkrétní instanci serveru Microsoft SQL Server.


Více instancí serveru MS SQL Server na jednom serveru

Ke konkrétní instanci serveru Microsoft SQL Server se můžete připojit pomocí dialogového okna připojení, které se zobrazí po spuštění aplikace Microsoft SQL Server Management Studio:

  1. Přejděte do aplikace Microsoft SQL Server Management Studio a připojte se k vybranému serveru.

  2. Do pole Název serveru zadejte instanci v níže uvedeném formátu a klikněte na tlačítko Připojit.

    <server_name>\<instance_name>

    Obrázek 3-1
Microsoft SQL Server Express 

Některá složitá prostředí nebo instalace služeb nabízejí bezplatnou edici serveru Microsoft SQL Server nazvanou Microsoft SQL Server Express.

Tato edice serveru SQL je k dispozici zdarma. Má omezenou velikost a výkon a je vhodný spíše pro malé podniky.

Pokud například při instalaci ESET PROTECT On-Prem neposkytnete vlastní Microsoft SQL server, je standardně nainstalován Microsoft SQL Server Express.

Nastavení oprávnění pro každou instanci serveru Microsoft SQL Server Express

Pokud se chybová zpráva stále zobrazuje, ověřte, zda nemáte nainstalovanou instanci serveru Microsoft SQL Server Express. Pokud existuje instance serveru Microsoft SQL Server Express, aktualizujte oprávnění popsaná v první části.

Získání seznamu instancí serveru Microsoft SQL Server

Existuje několik způsobů, jak získat seznam instancí serveru Microsoft SQL Server nainstalovaných na serveru:

  • Při instalaci nové instance serveru Microsoft SQL Server se v kroku zadávání názvu nové instance zobrazí seznam aktuálně nainstalovaných instancí.

  • Seznam nainstalovaných instancí se nachází v následující cestě registru systému Windows:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names 

    Chcete-li získat seznam, použijte následující příkaz prostředí PowerShell:

    Get-Item "HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL" | % {$_.Property}
  • Každá instance serveru Microsoft SQL Server instaluje do systému odpovídající službu. Název této služby má následující formát:

    SQL Server (<instance_name>)

    Tyto služby můžete v systému filtrovat a získat seznam nainstalovaných instancí Microsoft Server SQL pomocí následujícího příkazu prostředí PowerShell:

    Get-Service | ?{ $_.DisplayName -like "SQL Server (*" }