Cvičení: Konfigurace oprávnění v MySQL
V těchto cvičeních v testovacím prostředí přiřadíte role RBAC pro řízení přístupu k prostředkům Azure Database for MySQL a MySQL GRANT k řízení přístupu k databázovým operacím.
Důležité
K dokončení tohoto cvičení potřebujete vlastní předplatné Azure. Pokud nemáte předplatné Azure, vytvořte bezplatnou zkušební verzi Azure.
K dokončení těchto cvičení musíte mít:
- Vytvořili jste skupinu prostředků (viz modul 1, lekce 5).
- Vytvořili jsme flexibilní server Azure Database for MySQL (viz modul 1, lekce 5).
- Stažení a instalace aplikace MySQL Workbench (viz modul 2, lekce 5).
- Vytvořili jste databázi zoodb (viz modul 2, lekce 5).
Tip
Pokud jste po dokončení posledního testovacího prostředí zastavili server Azure Database for MySQL, restartujte ho.
Vytvoření nového uživatelského účtu v Microsoft Entra ID
Na webu Azure Portal se přihlaste pomocí účtu vlastníka a přejděte na své ID Microsoft Entra.
V části Spravovat vyberte Uživatelé.
V levém horním rohu vyberte Nový uživatel a pak vyberte Vytvořit nového uživatele.
Na stránce Nový uživatel zadejte tyto podrobnosti a pak vyberte Vytvořit:
- Uživatelské jméno: Holly
- Název: Holly Rees
- Heslo: Vyberte Možnost Umožnit mi vytvořit heslo a zadejte Pa$$w 0rd.
Tip
Po vytvoření uživatele si poznamenejte úplný hlavní název uživatele, abyste ho mohli později použít k přihlášení.
Přiřazení role Čtenář
- Na webu Azure Portal vyberte Všechny prostředky a pak vyberte prostředek Azure Database for MySQL.
- Vyberte Řízení přístupu (IAM) a pak vyberte Přiřazení rolí. Holly Rees se v seznamu nezobrazuje.
- Vyberte + Přidat a pak vyberte Přidat přiřazení role.
- Vyberte roli Čtenář a pak vyberte Další.
- Přidejte Holly Rees do seznamu členů a pak vyberte Další.
- Vyberte Zkontrolovat a přiřadit.
Otestování role Čtenář
- V pravém horním rohu webu Azure Portal vyberte svůj uživatelský účet a pak vyberte Odhlásit se.
- Přihlaste se jako nový uživatel s hlavním názvem uživatele, který jste si poznamenali, a heslem Pa$$w 0rd. Pokud se zobrazí výzva, nahraďte výchozí heslo a poznamenejte si nové heslo.
- Na domovské stránce portálu vyberte Všechny prostředky a pak vyberte prostředek Azure Database for MySQL.
- Vyberte Zastavit. Zobrazí se chyba, protože role Čtenář umožňuje zobrazit prostředek, ale ne změnit ho.
Přiřazení role Přispěvatel
- V pravém horním rohu webu Azure Portal vyberte uživatelský účet Holly a pak vyberte Odhlásit se.
- Přihlaste se pomocí původního účtu vlastníka.
- Přejděte k prostředku Azure Database for MySQL a pak vyberte Řízení přístupu (IAM).
- Vyberte + Přidat a pak vyberte Přidat přiřazení role.
- Vyberte roli Přispěvatel a pak vyberte Další.
- Přidejte Holly Rees do seznamu členů a pak vyberte Další.
- Vyberte Zkontrolovat a přiřadit.
- Vyberte přiřazení rolí. Holly Rees teď má přiřazení pro role čtenáře i přispěvatele.
Otestování role Přispěvatel
- V pravém horním rohu webu Azure Portal vyberte svůj uživatelský účet a pak vyberte Odhlásit se.
- Přihlaste se jako Holly Rees s hlavním názvem uživatele a heslem, které jste si poznamenali.
- Na domovské stránce portálu vyberte Všechny prostředky a pak vyberte prostředek Azure Database for MySQL.
- Vyberte Zastavit a pak vyberte Ano. Tentokrát se server zastaví bez chyb, protože Holly má přiřazenou potřebnou roli.
- Výběrem možnosti Start se ujistěte, že je prostředek MySQL připravený na další kroky.
- V pravém horním rohu webu Azure Portal vyberte uživatelský účet Holly a pak vyberte Odhlásit se.
- Přihlaste se pomocí původního účtu vlastníka.
UDĚLENÍ přístupu ke službě Azure Database for MySQL
Otevřete Aplikaci MySQL Workbench a připojte se k serveru Azure Database for MySQL.
V podokně dotazu spusťte tento kód. Mělo by se vrátit šest uživatelských účtů, včetně ukázkového účtu, který používáte pro připojení:
SELECT user, host FROM mysql.user;
Pokud chcete vytvořit nového uživatele, spusťte tento kód.
CREATE USER 'dbuser'@'%' IDENTIFIED BY 'Pa$$w0rd';
Pokud chcete zobrazit seznam nového uživatele, spusťte výše uvedený dotaz SELECT znovu. Měl by se zobrazit seznam dbuser@ % uživatelů.
Pokud chcete novému uživateli povolit dotazování a úpravu dat ve všech tabulkách v databázi zoodb , spusťte tento kód:
GRANT SELECT, INSERT, UPDATE, DELETE ON zoodb.* TO 'dbuser'@'%'; FLUSH PRIVILEGES;
Otestování nového uživatele
V aplikaci MySQL Workbench v nabídce Databáze vyberte Spravovat Připojení ions.
Vyberte existující připojení ke službě Azure Database for MySQL a pak vyberte Duplikovat.
V duplicitním připojení zadejte do textového pole uživatelské jméno dbuser.
Vedle hesla vyberte Uložit v trezoru.
Do textového pole Heslo zadejte Pa$$w 0rd a pak vyberte OK.
Vyberte Testovat připojení. Pokud je připojení úspěšné, vyberte OK a pak vyberte Zavřít.
V nabídce Databáze vyberte Připojení do databáze.
V dialogovém okně Připojení do databáze vyberte nové připojení a pak vyberte Připojení.
Pokud chcete otestovat, jestli máte oprávnění SELECT, spusťte v okně dotazu tento kód:
SELECT * FROM animal;
Pokud chcete otestovat, jestli máte oprávnění UPDATE, spusťte tento kód:
UPDATE animal SET Name = "Linda Lioness" WHERE AnimalID = "6"; SELECT * FROM animal;
Pokud chcete otestovat, jestli máte oprávnění DROP, spusťte tento kód. Pokud dojde k chybě, zkontrolujte kód chyby:
DROP TABLE animal;
Pokud chcete otestovat, jestli máte oprávnění UDĚLIT, spusťte tento kód:
GRANT ALL PRIVILEGES ON zoodb.* TO 'dbuser'@'%';
Tyto testy ukazují, že nový uživatel může spouštět příkazy jazyka DML (Data Manipulat Language) k dotazování a úpravě dat, ale nemůže ke změně schématu použít příkazy DDL (Data Definition Language). Nový uživatel také nemůže udělit žádná nová oprávnění k obcházení oprávnění.