Contained database a její využití na SQL Serveru 2012

SQL Server 2012 přináší mnoho novinek v oblasti administrace, vývoje i business intelligence.

Pro administrátory je určitě zajímavá nová technologie pro vysokou dostupnost AlwaysOn i mnohé možnosti pro zabezpečení SQL Serveru 2012. Na pomezí těchto dvou oblastí stojí contained databáze. Databáze ve full contained režimu obsahuje veškerá metadata a nastavení, a díky tomu je zcela nezávislá na SQL instanci. V aktuální verzi je k dispozici nižší containment model a to partial.

Klepněte pro větší obrázek

Mezi základní výhody contained databáze patří

  • Snadná přenositelnost mezi servery při migraci
  • Jednoduché nastavení AlwaysOn pro dostupnost databáze
  • Vývoj db nezávislý na instanci SQL Serveru

V těchto případech je využito speciálního ověřování, při kterém není vytvořen SQL server login, který je následně mapován na databázového uživatele, ale pouze databázový uživatel, kterému je rovnou nastaveno heslo. Protože je tento uživatel a jeho přihlašovací údaje uložen rovnou v samotné databázi, je tato databáze nezávislá na instanci SQL serveru a je možné tuto databázi přesunout a obnovit na jakýkoli jiný SQL Server 2012, bez nutnosti přenášení SQL loginů. Více o AlwaysOn v předchozím článku o vysoké dostupnosti http://www.zive.cz/clanky/sql-server-a-vysoka-dostupnost--ii/sc-3-a-165769/default.aspx

Pro zapnutí containment režimu je nutné nejprve povolit autentizaci přímo proti contained databázi pomocí procedury sp_configure. Tuto autentizaci je nutné povolit na všech serverech v případě AlwaysOn vysoké dostupnosti, pokud bychom chtěli v rámci Database Availability Groups mít i contained databázi. Díky možnosti multi-server dotazům je možné tuto konfiguraci povolit na několika serverech zároveň pomocí Registered Servers, nebo případně pomocí Policy Based Managementu, kdy ve facet Server Configuration je nastavitelná volba ContainmentEnabled. U samotné instance SQL Serveru je nutné mít povoleno ověřování „SQL Server and Windows Authentication Mode“.

Klepněte pro větší obrázek Klepněte pro větší obrázek

Jakmile máme vytvořenou databázi, u které je nastaven containment model na partial, je možné začít v této databázi vytvářet uživatele. Uživatelé mohou být v zásadě dvou druhů – a to uživatel, který má svůj login a heslo uloženy přímo v samotné databázi nebo uživatel, který využívá Windows login a integrované ověřování. S integrovaným ověřováním je situace složitější tím, že se může a nemusí jednat o contained uživatele v závislosti na konfiguraci samotného serveru.

V případě, kdy na serveru nebude vytvořen login pro doménového uživatele, bude tento uživatel považován za contained uživatele, který má povoleno přihlášení pouze do samotné databáze. V takovém případě po přihlášení nevidí žádné server-level objekty a může pracovat jen v databázi samotné. V opačném případě, kdy existuje SQL Login pro doménového uživatele, který je zároveň vytvořen jako uživatel v databázi je tento uživatel zpět mapován na SQL Login a může v závislosti na svých oprávněních pracovat i s jinými databázemi a server-level objekty.

Klepněte pro větší obrázek

Pro přihlášení ke contained databází je nutné v connection string uvádět i databázi samotnou, případně v SQL Server Management Studiu v dialogu pro přihlášení vybrat i danou databázi ke které se chceme přihlásit. Pokud bude využit uživatel s heslem, tak je nutné zvolit přihlášení pomocí SQL Server ověřování.

Klepněte pro větší obrázek

Protože contained databáze snižuje závislost na instanci SQL Serveru a jiných databázích, není kompatibilní s několika funkcemi SQL Serveru a to zejména

  • Jakékoli replikace
  • Change Data Capture
  • Change Tracking

Navíc nemůže být pro přihlášení contained uživatele využit protokol Kerberos, a hesla pro tyto uživatele nebudou využívat politik systému Windows.

Marek Chmel, WBI

Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.

Témata článku: Jimi, Login, Change, Kerberos, Metadata

Určitě si přečtěte

Kde nejlevněji uložit 1 TB dat: Srovnali jsme aktuální ceny cloudových úložišť

Kde nejlevněji uložit 1 TB dat: Srovnali jsme aktuální ceny cloudových úložišť

** Srovnali jsme známá cloudová úložiště podle toho, kolik měsíčně zaplatíte za 1TB ** Ceny se pohybují od dvou stovek až po tisíc korun ** Google umožní uložit až 30 TB dat

18.  3.  2017 | Stanislav Janů | 115

Špičkoví hackeři útočili na prohlížeče. Chrome odolal, ale Edge je tragédie

Špičkoví hackeři útočili na prohlížeče. Chrome odolal, ale Edge je tragédie

** Do Vancouveru se sjeli hackeři ** Soutěžili v útocích na prohlížeče ** Chrome odolal, ale Edge to projel na celé čáře

22.  3.  2017 | Jakub Čížek | 78

Pojďme programovat elektroniku: Meteostanice, která bude díky Sigfoxu posílat stav počasí třeba z vrcholu Sněžky

Pojďme programovat elektroniku: Meteostanice, která bude díky Sigfoxu posílat stav počasí třeba z vrcholu Sněžky

** Příští roky budou ve znamení internetu věcí ** Podívali jsme se podrobně na síť Sigfox ** Takhle s ní komunikují krabičky z celé Evropy

19.  3.  2017 | Jakub Čížek | 18

Obří Mechroboti jsou realitou, měří čtyři metry a mají hmotnost přes 1,5 tuny

Obří Mechroboti jsou realitou, měří čtyři metry a mají hmotnost přes 1,5 tuny

** Jihokorejská společnost Hankook Mirae Technology vyrábí obří Mechroboty ** Jsou určené pro ovládání člověkem uvnitř ** V prodeji se objeví koncem tohoto roku za 200 milionů korun

20.  3.  2017 | Karel Javůrek | 18


Aktuální číslo časopisu Computer

Supertéma o počítačové bezpečnosti

AMD Ryzen přichází

Velké testy kinoprojektorů a levných sluchátek

Příslušenství do USB-C