Pokud jste vytvořili databázi ve verzi Accessu před verzí Accessu 2007 a použili jste u této databáze zabezpečení na úrovni uživatele, zůstanou tato nastavení zabezpečení při otevření tohoto souboru v Accessu 2007 nebo novějším zachována. Kromě toho můžete z novějších verzí Aplikace Access spustit nástroje zabezpečení poskytované aplikací Microsoft Office Access 2003 – Průvodce User-Level zabezpečením a různá dialogová okna oprávnění uživatelů a skupin. Tento článek vysvětluje, jak fungují funkce zabezpečení Accessu 2003, a vysvětluje, jak je spustit a používat v Accessu 2007 nebo novějším.
Poznámka: Informace v tomto článku platí jenom pro databázi vytvořenou v accessu 2003 nebo starších verzích (soubor .mdb). Zabezpečení na úrovni uživatele není k dispozici pro databáze vytvořené v Accessu 2007 nebo novějším (soubory .accdb). Pokud také převedete soubor .mdb do nového formátu (soubor .accdb), Access zahodí nastavení zabezpečení na úrovni uživatele.
V tomto článku
Jak se chová zabezpečení na úrovni uživatele v Accessu 2007 nebo novějším
Access 2007 a novější verze poskytují zabezpečení na úrovni uživatele jenom pro databáze, které používají formáty souborů Accessu 2003 a starších (.mdb a .mde). Pokud v novějších verzích otevřete databázi vytvořenou ve starší verzi Accessu a tato databáze má použité zabezpečení na úrovni uživatele, bude tato funkce zabezpečení fungovat tak, jak je pro tuto databázi navržená. Uživatelé například musí zadat heslo, aby mohli databázi používat.
Kromě toho můžete spustit a spustit různé nástroje zabezpečení poskytované accessem 2003 a staršími verzemi, jako je Průvodce User-Level zabezpečením a různá dialogová okna oprávnění uživatelů a skupin. Jak budete pokračovat, mějte na paměti, že tyto nástroje budou k dispozici pouze při otevření souboru .mdb nebo .mde. Pokud převedete soubory do formátu souboru .accdb, Access odebere všechny stávající funkce zabezpečení na úrovni uživatele.
Přehled zabezpečení na úrovni uživatele v Accessu 2003
Následující části obsahují základní informace o zabezpečení na úrovni uživatele v Accessu 2003 a starších verzích. Pokud už znáte předchozí model zabezpečení a zabezpečení na úrovni uživatele, můžete tyto části přeskočit a přejít přímo do části Nastavení zabezpečení na úrovni uživatele nebo Odebrání zabezpečení na úrovni uživatele dále v tomto článku.
Základy zabezpečení na úrovni uživatele
Zabezpečení na úrovni uživatele v Accessu se podobá mechanismům zabezpečení v serverových systémech – používá hesla a oprávnění k povolení nebo omezení přístupu jednotlivců nebo skupin jednotlivců k objektům v databázi. Když v Accessu 2003 nebo starších verzích implementujete zabezpečení na úrovni uživatele v accessové databázi, může správce databáze nebo vlastník objektu řídit akce, které můžou jednotliví uživatelé nebo skupiny uživatelů provádět s tabulkami, dotazy, formuláři, sestavami a makry v databázi. Například jedna skupina uživatelů může měnit objekty v databázi, jiná skupina může zadávat data jenom do určitých tabulek a třetí skupina může data zobrazit jenom v sadě sestav.
Zabezpečení na úrovni uživatele v Accessu 2003 a starších verzích používá kombinaci hesel a oprávnění – sady atributů, které určují typy přístupu uživatele k datům nebo objektům v databázi. Můžete nastavit hesla a oprávnění pro jednotlivce nebo skupiny jednotlivců a tyto kombinace hesel a oprávnění se stanou účty zabezpečení, které definují uživatele a skupiny uživatelů, kteří mají povolený přístup k objektům ve vaší databázi. Kombinace uživatelů a skupin se zase označuje jako pracovní skupina a Access ukládá informace do informačního souboru pracovní skupiny. Při spuštění access načte informační soubor pracovní skupiny a vynucuje oprávnění na základě dat v souboru.
Access ve výchozím nastavení poskytuje předdefinované ID uživatele a dvě předdefinované skupiny. Výchozí ID uživatele je Správa a výchozí skupiny jsou Uživatelé a Správci. Access ve výchozím nastavení přidá předdefinované ID uživatele do skupiny Users, protože všechna ID musí patřit alespoň do jedné skupiny. Skupina Uživatelé má naopak úplná oprávnění ke všem objektům v databázi. Id Správa je navíc také členem skupiny Admins. Skupina Admins musí obsahovat alespoň jedno ID uživatele (musí existovat správce databáze) a id Správa je výchozím správcem databáze, dokud ho nezměníte.
Při spuštění accessu 2003 nebo starších verzí vám Access přiřadí id uživatele Správa, a tím z vás udělá člena každé výchozí skupiny. Toto ID a tyto skupiny (Správa a Uživatelé) poskytují všem uživatelům úplná oprávnění ke všem objektům v databázi – to znamená, že každý uživatel může otevřít, zobrazit a změnit všechny objekty ve všech .mdb souborech, pokud neimplementujete zabezpečení na úrovni uživatele.
Jedním ze způsobů, jak implementovat zabezpečení na úrovni uživatele v Accessu 2003 nebo starších verzích, je změnit oprávnění pro skupinu Uživatelé a přidat nové správce do skupin Admins. Když to uděláte, Access automaticky přiřadí nové uživatele do skupiny Uživatelé. Při provedení těchto kroků se uživatelé musí při každém otevření chráněné databáze přihlásit pomocí hesla. Pokud ale potřebujete implementovat konkrétnější zabezpečení – například umožnit jedné skupině uživatelů zadávat data a jiné jen číst tato data – musíte vytvořit další uživatele a skupiny a udělit jim specifická oprávnění pro některé nebo všechny objekty v databázi. Implementace tohoto typu zabezpečení na úrovni uživatele se může stát složitým úkolem. Pro zjednodušení procesu access poskytuje Průvodce User-Level zabezpečením, který usnadňuje vytváření uživatelů a skupin v jednom kroku.
Průvodce zabezpečením User-Level vám pomůže přiřazovat oprávnění a vytvářet uživatelské a skupinové účty. Uživatelské účty obsahují uživatelská jména a jedinečná osobní ID (PID) potřebná ke správě uživatelských oprávnění k zobrazení, používání nebo změně databázových objektů v pracovní skupině Accessu. Skupinové účty jsou kolekce uživatelských účtů, které se zase nacházejí v pracovní skupině. Access používá název skupiny a PID k identifikaci každé pracovní skupiny a oprávnění přiřazená skupině platí pro všechny uživatele ve skupině. Další informace o použití průvodce najdete v části Nastavení zabezpečení na úrovni uživatele dále v tomto článku.
Po dokončení průvodce můžete ručně přiřadit, upravit nebo odebrat oprávnění uživatelským a skupinovým účtům ve vaší pracovní skupině pro databázi a její existující tabulky, dotazy, formuláře, sestavy a makra. Můžete také nastavit výchozí oprávnění, která Access přiřadí všem novým tabulkám, dotazům, formulářům, sestavám a makrům, které vy nebo jiný uživatel přidáte do databáze.
Pracovní skupiny a informační soubory pracovních skupin
V accessu 2003 a starších verzích je pracovní skupina skupinou uživatelů v prostředí s více uživateli, kteří sdílejí data. Informační soubor pracovní skupiny obsahuje uživatelské a skupinové účty, hesla a oprávnění nastavená pro každého jednotlivého uživatele nebo skupinu uživatelů. Když otevřete databázi, Access přečte data v informačním souboru pracovní skupiny a vynutí nastavení zabezpečení, která soubor obsahuje. Uživatelský účet je zase kombinací uživatelského jména a osobního ID (PID), kterou Access vytvoří ke správě oprávnění uživatele. Skupinové účty jsou kolekce uživatelských účtů a Access je také identifikuje podle názvu skupiny a osobního ID (PID). Oprávnění přiřazená skupině platí pro všechny uživatele ve skupině. Těmto účtům zabezpečení je pak možné přiřadit oprávnění k databázím a jejich tabulkám, dotazům, formulářům, sestavám a makrům. Samotná oprávnění jsou uložená v databázi s povoleným zabezpečením.
Když uživatel poprvé spustí Access 2003 nebo starší verze, Access automaticky vytvoří informační soubor pracovní skupiny Aplikace Access, který je identifikován názvem a informacemi o organizaci, které uživatel určí při instalaci Accessu. Pro Access 2003 instalační program přidá relativní umístění tohoto informačního souboru pracovní skupiny do následujících klíčů registru:
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Access\Jet\4.0\Engines\SystemDB
a
HKEY_USERS\.DEFAULT\Software\Microsoft\Office\11.0\Access\Jet\4.0\Engines\SystemDB
Další uživatelé zdědí výchozí cestu k souboru pracovní skupiny z hodnoty v klíči registru HKEY_USERS. Vzhledem k tomu, že tyto informace je často snadné zjistit, je možné, aby neautorizovaným uživatelům vytvořili jinou verzi tohoto informačního souboru pracovní skupiny. V důsledku toho by neoprávnění uživatelé mohli převzít neodvolatelná oprávnění účtu správce (člena skupiny Admins) v pracovní skupině definované informačním souborem pracovní skupiny. Chcete-li zabránit neoprávněným uživatelům v převzetí těchto oprávnění, vytvořte nový informační soubor pracovní skupiny a zadejte ID pracovní skupiny (WID), což je alfanumerický řetězec rozlišující velká a malá písmena dlouhý 4 až 20 znaků, který zadáte při vytváření nového informačního souboru pracovní skupiny. Vytvoření nové pracovní skupiny jednoznačně identifikuje skupinu Správa pro tento soubor pracovní skupiny. Kopii informačního souboru pracovní skupiny bude moct vytvořit jenom ten, kdo zná interní databázi WiD. K vytvoření nového souboru použijte Průvodce zabezpečením User-Level.
Důležité informace: Nezapomeňte si zapsat přesné jméno, organizaci a ID pracovní skupiny – včetně toho, jestli jsou velká nebo malá písmena (pro všechny tři položky) – a uchovávejte je na bezpečném místě. Pokud musíte znovu vytvořit informační soubor pracovní skupiny, musíte zadat stejný název, organizaci a ID pracovní skupiny. Pokud tyto položky zapomenete nebo ztratíte, můžete ztratit přístup k databázím.
Jak oprávnění fungují a kdo je může přiřadit
Zabezpečení na úrovni uživatele rozpoznává dva typy oprávnění: explicitní a implicitní. Explicitní oprávnění jsou oprávnění, která jsou udělena přímo uživatelskému účtu; nejsou ovlivněni žádní ostatní uživatelé. Implicitní oprávnění jsou oprávnění udělená skupinovému účtu. Přidání uživatele do této skupiny uděluje oprávnění skupiny danému uživateli. Odebrání uživatele ze skupiny odebere oprávnění skupiny od tohoto uživatele.
Když se uživatel pokusí provést operaci s databázovým objektem, který využívá funkce zabezpečení, je sada oprávnění tohoto uživatele založena na průniku explicitních a implicitních oprávnění daného uživatele. Úroveň zabezpečení uživatele je vždy nejméně omezující z explicitních oprávnění daného uživatele a oprávnění všech skupin, do kterých uživatel patří. Z tohoto důvodu je nejméně složitým způsobem správy pracovní skupiny vytvoření nových skupin a přiřazení oprávnění skupinám, nikoli jednotlivým uživatelům. Potom můžete změnit oprávnění jednotlivých uživatelů přidáním nebo odebráním těchto uživatelů ze skupin. Pokud potřebujete udělit nová oprávnění, můžete je udělit všem členům skupiny v rámci jedné operace.
Oprávnění pro databázový objekt je možné změnit:
-
Členové skupiny Admins informačního souboru pracovní skupiny, který se používá při vytváření databáze.
-
Vlastník objektu.
-
Každý uživatel, který má oprávnění ke správě objektu.
I když uživatelé nemusí být momentálně schopni provést akci, můžou sami sobě udělit oprávnění k provedení akce. To platí, pokud je uživatel členem skupiny Admins nebo pokud je uživatel vlastníkem objektu.
Vlastníkem tohoto objektu je uživatel, který vytváří tabulku, dotaz, formulář, sestavu nebo makro. Kromě toho může změnit vlastnictví těchto objektů také skupina uživatelů, kteří můžou měnit oprávnění v databázi, nebo mohou tyto objekty znovu vytvořit, což jsou oba způsoby, jak změnit vlastnictví objektů. Pokud chcete objekt znovu vytvořit, můžete vytvořit jeho kopii nebo ho můžete importovat z jiné databáze nebo ho exportovat do jiné databáze. Jedná se o nejjednodušší způsob, jak přenést vlastnictví objektů, včetně samotné databáze.
Poznámka: Kopírováním, importem nebo exportem se nezmění vlastnictví dotazu, který má vlastnost RunPermissions nastavenou na Hodnotu Vlastník. Vlastnictví dotazu můžete změnit jenom v případě, že je jeho vlastnost RunPermissionsnastavená na Hodnotu Uživatel.
Účty zabezpečení
Informační soubor pracovní skupiny aplikace Access 2003 obsahuje následující předdefinované účty.
Klient |
Funkce |
Admin |
Výchozí uživatelský účet. Tento účet je naprosto stejný pro každou kopii Accessu a dalších aplikací, které mohou používat databázový stroj Microsoft Jet, jako je například Visual Basic for Applications (VBA) a Microsoft Office Excel 2003. |
Správci |
Účet skupiny správce. Tento účet je jedinečný pro každý informační soubor pracovní skupiny. Ve výchozím nastavení je uživatel Správa členem skupiny Admins. Ve skupině Admins musí být vždy alespoň jeden uživatel. |
Uživatelé |
Účet skupiny, který se skládá ze všech uživatelských účtů. Access automaticky přidá uživatelské účty do skupiny Uživatelé, když je vytvoří člen skupiny Admins. Tento účet je stejný pro každý informační soubor pracovní skupiny, ale obsahuje pouze uživatelské účty vytvořené členy skupiny Admins této pracovní skupiny. Ve výchozím nastavení má tento účet úplná oprávnění ke všem nově vytvořeným objektům. Jediným způsobem, jak odebrat uživatelský účet ze skupiny Uživatelé, je, že ho odstraní člen skupiny Admins. |
Zabezpečení v Accessu 2003 a starších verzích je v podstatě vždy aktivní. Dokud neaktivujete postup přihlášení pro pracovní skupinu, Access neviditelně přihlásí všechny uživatele při spuštění pomocí výchozího Správa uživatelského účtu s prázdným heslem. Access na pozadí používá účet Správa jako účet správce pracovní skupiny. Access používá účet Správa kromě vlastníka (skupiny nebo uživatele) všech databází a tabulek, dotazů, formulářů, sestav a maker, které se vytvoří.
Správci a vlastníci jsou důležití, protože mají oprávnění, která se nedají odebrat:
-
Správci (členové skupiny Admins) můžou vždy získat úplná oprávnění k objektům vytvořeným v pracovní skupině.
-
Účet, který vlastní tabulku, dotaz, formulář, sestavu nebo makro, může vždy získat úplná oprávnění k danému objektu.
-
Účet, který vlastní databázi, může databázi vždy otevřít.
Vzhledem k tomu, že uživatelský účet Správa je pro každou kopii Accessu úplně stejný, je prvním postupem, jak databázi zabezpečit, definování uživatelských účtů správce a vlastníka (nebo použití jednoho uživatelského účtu jako účtu správce i vlastníka) a následné odebrání uživatelského účtu Správa ze skupiny Admins. Jinak se každý, kdo má kopii Accessu, může přihlásit k vaší pracovní skupině pomocí účtu Správa a mít úplná oprávnění k tabulkám, dotazům, formulářům, sestavám a makrům pracovní skupiny.
Skupině Admins můžete přiřadit libovolný počet uživatelských účtů, ale databázi může vlastnit pouze jeden uživatelský účet – vlastnící účet je uživatelský účet, který je aktivní při vytvoření databáze nebo při převodu vlastnictví vytvořením nové databáze a importem všech objektů databáze do ní. Skupinové účty ale můžou vlastnit tabulky, dotazy, formuláře, sestavy a makra v rámci databáze.
Důležité informace o uspořádání účtů zabezpečení
-
K Accessu se můžou přihlásit jenom uživatelské účty. nemůžete se přihlásit pomocí skupinového účtu.
-
Účty, které vytvoříte pro uživatele databáze, musí být uložené v informačním souboru pracovní skupiny, ke kterému se tito uživatelé při použití databáze připojí. Pokud k vytvoření databáze používáte jiný soubor, před vytvořením účtů ho změňte.
-
Nezapomeňte vytvořit jedinečné heslo pro účty správce a uživatele. Uživatel, který se může přihlásit pomocí účtu správce, může vždy získat úplná oprávnění pro všechny tabulky, dotazy, formuláře, sestavy a makra vytvořené v pracovní skupině. Uživatel, který se může přihlásit pomocí účtu vlastníka, může vždy získat úplná oprávnění pro objekty vlastněné tímto uživatelem.
Po vytvoření uživatelských a skupinových účtů můžete zobrazit a vytisknout vztahy mezi nimi. Access vytiskne sestavu účtů v pracovní skupině, která zobrazuje skupiny, do kterých každý uživatel patří, a uživatele, kteří patří do každé skupiny.
Poznámka: Pokud používáte informační soubor pracovní skupiny vytvořený pomocí aplikace Microsoft Access 2.0, musíte být přihlášeni jako člen skupiny Admins, abyste mohli tisknout informace o uživateli a skupině. Pokud byl informační soubor pracovní skupiny vytvořen pomocí aplikace Microsoft Access 97 nebo novější, mohou všichni uživatelé v pracovní skupině tisknout informace o uživatelích a skupinách.
Nastavení zabezpečení na úrovni uživatele
Postup v této části vysvětluje, jak spustit a spustit Průvodce zabezpečením User-Level. Mějte na paměti, že tento postup platí jenom pro databáze, které mají formát souborů Accessu 2003 nebo starších, které jsou otevřené v Accessu 2007 nebo novějších verzích.
Důležité informace: Pokud v Accessu 2007 nebo novějších verzích použijete průvodce User-Level Security k zadání výchozího informačního souboru pracovní skupiny, musíte při spuštění Aplikace Access také použít přepínač příkazového řádku /WRKGP, který odkazuje na informační soubor pracovní skupiny. Další informace o použití přepínače příkazového řádku v Accessu najdete v článku Přepínače příkazového řádku pro produkty Microsoft Office.
Spuštění Průvodce zabezpečením User-Level
-
Otevřete soubor .mdb nebo .mde, který chcete spravovat.
-
Na kartě Databázové nástroje klikněte ve skupině Spravovat na šipku pod položkou Uživatelé a oprávnění a potom klikněte na Průvodce zabezpečením na úrovni uživatele.
-
Průvodce dokončete podle pokynů na každé stránce.
Poznámky:
-
Průvodce User-Level zabezpečením vytvoří záložní kopii aktuální databáze aplikace Access se stejným názvem a příponou názvu souboru .bak a pak použije bezpečnostní opatření pro vybrané objekty v aktuální databázi.
-
Pokud vaše aktuální accessová databáze pomáhá chránit kód jazyka VBA pomocí hesla, průvodce vás vyzve k zadání hesla, které musíte zadat, aby průvodce úspěšně dokončil jeho operaci.
-
Všechna hesla, která vytvoříte prostřednictvím průvodce, se vytisknou v sestavě Průvodce zabezpečením User-Level, která se vytiskne po dokončení průvodce. Tuto sestavu byste měli uchovávat v zabezpečeném umístění. Tuto sestavu můžete použít k opětovnému vytvoření souboru pracovní skupiny, pokud je ztracený nebo poškozený.
-
Odebrání zabezpečení na úrovni uživatele
Pokud chcete při práci v Accessu 2007 nebo novějším odebrat zabezpečení na úrovni uživatele, uložte soubor .mdb jako soubor ACCDB.
Uložte kopii souboru do . Formát ACCDB
-
Klikněte na kartu Soubor. Otevře se zobrazení Backstage.
-
Na levé straně klikněte na Sdílet.
-
Na pravé straně klikněte na Uložit databázi jako a potom klikněte na Databáze Accessu (*.accdb).
Zobrazí se dialogové okno Uložit jako.
-
Pomocí seznamu Uložit do vyhledejte umístění, do kterého chcete převedenou databázi uložit.
-
V seznamu Uložit jako typ vyberte Databáze Accessu 2007–2016 (*.accdb).
-
Klikněte na Uložit.
Poznámka: Pokud používáte Access 2007, klikněte na tlačítko Microsoft Office a potom kliknutím na Převést otevřete dialogové okno Uložit do a uložte databázi do . Formát souboru ACCDB.
Referenční informace k oprávněním k objektům
Následující tabulka uvádí oprávnění, která můžete nastavit pro databázi a objekty v databázi, a popisuje účinek nebo výsledek použití jednotlivých nastavení oprávnění.
Oprávnění |
Platí pro tyto objekty. |
Výsledek |
Otevření/spuštění |
Celá databáze, formuláře, sestavy, makra |
Uživatelé můžou objekt otevřít nebo spustit, včetně procedur v modulech kódu. |
Otevřít s výhradním přístupem |
Celá databáze |
Uživatelé můžou otevřít databázi a uzamknout ostatní uživatele. |
Přečíst návrh |
Tabulky, dotazy, formuláře, makra, moduly kódu |
Uživatelé můžou uvedené objekty otevřít v návrhovém zobrazení. Poznámka: Kdykoli udělíte přístup k datům v tabulce nebo dotazu přiřazením jiného oprávnění, jako je čtení dat nebo aktualizace dat, udělíte také oprávnění ke čtení návrhu, protože návrh musí být viditelný, aby se data správně zobrazovala a zobrazovala. |
Upravit návrh |
Tabulky, dotazy, formuláře, makra, moduly kódu |
Uživatelé můžou změnit návrh uvedených objektů. |
Spravovat |
Celá databáze, tabulky, dotazy, formuláře, makra, moduly kódu |
Uživatelé můžou k uvedeným objektům přiřadit oprávnění, i když uživatel nebo skupina objekt nevlastní. |
Čtení dat |
Tabulky, dotazy |
Uživatelé můžou číst data v tabulce nebo dotazu. Pokud chcete uživatelům udělit oprávnění ke čtení dotazů, musíte jim také udělit oprávnění ke čtení nadřazených tabulek nebo dotazů. Toto nastavení znamená oprávnění Ke čtení návrhu, což znamená, že uživatelé můžou kromě dat číst i návrh tabulky nebo dotazu. |
Aktualizovat data |
Tabulky, dotazy |
Uživatelé můžou aktualizovat data v tabulce nebo dotazu. Uživatelé musí mít oprávnění k aktualizaci nadřazené tabulky nebo dotazů. Toto nastavení znamená oprávnění Číst návrh i Číst data. |
Vložit data |
Tabulky, dotazy |
Uživatelé můžou vkládat data do tabulky nebo dotazu. U dotazů musí mít uživatelé oprávnění vkládat data do nadřazených tabulek nebo dotazů. Toto nastavení znamená oprávnění Číst data i Číst návrh. |
Odstranit data |
Tabulky, dotazy |
Uživatelé můžou odstranit data z tabulky nebo dotazu. U dotazů musí mít uživatelé oprávnění k odstranění dat z nadřazených tabulek nebo dotazů. Toto nastavení znamená oprávnění Číst data i Číst návrh. |