Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Tip
Microsoft Fabric Data Warehouse egy nagyvállalati szintű relációs raktár egy Data Lake-alaprendszeren, jövőre kész architektúrával, beépített AI-vel és új funkciókkal. Ha még nem ismerkedik adattárházzal, kezdje a Fabric Data Warehouse. A meglévő dedikált SQL-készlet számítási feladatai frissíthetők Fabric az adatelemzés, a valós idejű elemzés és a jelentéskészítés új képességeinek eléréséhez.
Az Azure Synapse Analytics két SQL-űrlaptényezőt használ, amelyek lehetővé teszik az erőforrás-felhasználás szabályozását. Ez a cikk azt ismerteti, hogy a két űrlaptényező hogyan szabályozza a felhasználói hitelesítést.
A Synapse SQL-ben való hitelesítéshez két lehetőség közül választhat:
- Microsoft Entra hitelesítés
- SQL-hitelesítés
Az SQL-hitelesítés lehetővé teszi az örökölt alkalmazások számára, hogy ismerős módon, felhasználónévvel és jelszóval csatlakozzanak az Azure Synapse SQL-hez. A Microsoft Entra-hitelesítéssel azonban központilag kezelheti az Azure Synapse-erőforrásokhoz, például az SQL-készletekhez való hozzáférést. Az Azure Synapse Analytics támogatja a helyi hitelesítés, például az SQL-hitelesítés letiltását a munkaterület létrehozása során és után is. A letiltás után a helyi hitelesítést a jogosult felhasználók bármikor engedélyezhetik. A csak Microsoft Entra-hitelesítéssel kapcsolatos további információkért lásd: A helyi hitelesítés letiltása az Azure Synapse Analyticsben.
Felügyeleti fiókok
Két rendszergazdai fiók (SQL-rendszergazdai felhasználónév és Microsoft Entra-rendszergazda) működik rendszergazdaként. Az SQL-készletekhez tartozó rendszergazdai fiókok azonosításához nyissa meg az Azure Portalt, és lépjen a Synapse-munkaterület Tulajdonságok lapjára.
SQL-rendszergazdai felhasználónév
Az Azure Synapse Analytics létrehozásakor meg kell adnia egy kiszolgálói rendszergazdai bejelentkezést. Az SQL Server bejelentkezésként hozza létre ezt a fiókot az
masteradatbázisban. Ez a fiók SQL Server-hitelesítéssel csatlakozik (felhasználónévvel és jelszóval). Ilyen fiókból csak egy létezhet.Microsoft Entra-rendszergazda
Egy Microsoft Entra-fiók, akár egyéni, akár biztonsági csoportfiók, rendszergazdaként is konfigurálható. Nem kötelező Microsoft Entra-rendszergazdat konfigurálni, de microsoft entra-rendszergazdát kell konfigurálni, ha Microsoft Entra-fiókokat szeretne használni a Synapse SQL-hez való csatlakozáshoz.
- A Microsoft Entra rendszergazdai fiókja szabályozza a dedikált SQL-készletekhez való hozzáférést, a Synapse RBAC-szerepkörök pedig a kiszolgáló nélküli készletekhez való hozzáférés szabályozására használhatók, például a Synapse rendszergazdai és a Synapse SQL-rendszergazdai szerepkörrel.
Az SQL-rendszergazdai felhasználónév és a Microsoft Entra rendszergazdai fiókok a következő jellemzőkkel rendelkeznek:
- Csak azok a fiókok csatlakozhatnak automatikusan a kiszolgálón található SQL Database-hez. (Felhasználói adatbázishoz történő csatlakozáshoz a többi fióknak vagy az adatbázis tulajdonosának kell lennie, vagy felhasználói fiókkal kell rendelkeznie az adatbázisban.)
- Ezek a fiókok
dbo-felhasználóként lépnek be a felhasználói adatbázisokba, és minden engedéllyel rendelkeznek az adatbázison belül. (A felhasználói adatbázis tulajdonosa szinténdbo-felhasználóként jelentkezik be.) - Ne lépjen be az
masteradatbázisba, ne jelentkezzen be adbofelhasználóként, és rendelkezzen korlátozott engedélyekkel azmasteradatbázisban. - Nem tagjai a standard SQL Server rögzített kiszolgálói szerepkörnek, amely nem érhető el az SQL Database-ben.
- Létrehozhat, módosíthat és elvethet adatbázisokat, bejelentkezéseket, az
masteradatbázis felhasználóit és kiszolgálószintű IP-tűzfalszabályokat. - Tagokat adhat hozzá és távolíthat el a
dbmanagerloginmanagerszerepkörökhöz. - Megtekintheti a rendszertáblát
sys.sql_logins.
Note
Ha egy felhasználó Microsoft Entra-rendszergazdaként és Synapse-rendszergazdaként van konfigurálva, majd eltávolítja a Microsoft Entra rendszergazdai szerepköréből, akkor a felhasználó elveszíti a hozzáférést a Synapse dedikált SQL-készleteihez. Ezeket el kell távolítani, majd hozzá kell adni a Synapse-rendszergazdai szerepkörhöz a dedikált SQL-készletekhez való hozzáférés visszanyeréséhez.
A kiszolgáló nélküli SQL-készlethez hozzáféréssel rendelkező felhasználók kezeléséhez használja az alábbi utasításokat.
A kiszolgáló nélküli SQL-készletbe való bejelentkezéshez használja az alábbi szintaxist:
CREATE LOGIN Mary WITH PASSWORD = '<strong_password>';
-- or
CREATE LOGIN [Mary@domainname.net] FROM EXTERNAL PROVIDER;
Ha a bejelentkezés létezik, létrehozhat felhasználókat az egyes adatbázisokban a kiszolgáló nélküli SQL-készlet végpontjában, és megadhatja a szükséges engedélyeket ezeknek a felhasználóknak. Felhasználó létrehozásához a következő szintaxist használhatja:
CREATE USER Mary FROM LOGIN Mary;
-- or
CREATE USER Mary FROM LOGIN Mary@domainname.net;
-- or
CREATE USER [mike@contoso.com] FROM EXTERNAL PROVIDER;
A bejelentkezés és a felhasználó létrehozása után a szokásos SQL Server-szintaxist használhatja a jogosultságok megadásához.
Nem rendszergazdai felhasználók
A nem rendszergazdai fiókoknak általában nincs szükségük az master adatbázishoz való hozzáférésre. Hozzon létre tartalmazott adatbázis-felhasználókat az adatbázis szintjén a CREATE USER (Transact-SQL) utasítással.
A felhasználó lehet egy Microsoft Entra-hitelesítéssel rendelkező adatbázis-felhasználó (ha a környezetet a Microsoft Entra-hitelesítéshez konfigurálta), vagy sql serveres hitelesítéssel rendelkező adatbázis-felhasználó, vagy SQL Server-hitelesítéssel rendelkező felhasználó (amelyet az előző lépésben hoztak létre).)
Felhasználók létrehozásához csatlakozzon az adatbázishoz, és hajtson végre a következő példákhoz hasonló utasításokat:
CREATE USER Mary FROM LOGIN Mary;
CREATE USER [mike@contoso.com] FROM EXTERNAL PROVIDER;
A kezdetekben csak a rendszergazdák vagy az adatbázis tulajdonosa hozhat létre felhasználókat. Ha további felhasználókat szeretne felhatalmazni új felhasználók létrehozására, adja a kiválasztott felhasználónak az ALTER ANY USER engedélyt egy, a következőhöz hasonló utasítással:
GRANT ALTER ANY USER TO Mary;
Ha további felhasználókat szeretne felruházni az adatbázis teljes szabályozási jogával, tegye őket a db_owner fix adatbázis-szerepkör tagjává.
Az Azure SQL Database-ben vagy a synapse kiszolgáló nélküli verziójában használja az utasítást ALTER ROLE .
ALTER ROLE db_owner ADD MEMBER Mary;
Dedikált SQL-készletben használja az EXEC sp_addrolemember.
EXEC sp_addrolemember 'db_owner', 'Mary';
Note
Az adatbázis-felhasználó kiszolgálói bejelentkezés alapján történő létrehozásának egyik gyakori oka az, hogy a felhasználók több adatbázishoz is hozzáférnek. Mivel a tartalmazott adatbázis-felhasználók egyéni entitások, minden adatbázis fenntartja a saját felhasználóját és a saját jelszavát. Ez többletterhelést okozhat, mivel a felhasználónak ezután minden egyes adatbázishoz meg kell jegyeznie az egyes jelszavakat, és több adatbázis több jelszavának módosításakor az is elérhetetlenné válhat.
Csoportok és szerepkörök
A hatékony hozzáférés-kezelés egyéni bejelentkezési adatok helyett csoportokhoz és szerepkörökhöz rendelt engedélyeket használ.
A Microsoft Entra-hitelesítés használatakor helyezze a Microsoft Entra-felhasználókat egy Microsoft Entra-csoportba. Hozzon létre korlátozott adatbázis-felhasználót a csoport számára. Helyezzen egy vagy több adatbázis-felhasználót egy adatbázis-szerepkörbe, majd rendeljen engedélyeket az adatbázis-szerepkörhöz.
SQL Server-hitelesítés használata esetén hozzon létre tartalmazott adatbázis-felhasználókat az adatbázisban. Helyezzen egy vagy több adatbázis-felhasználót egy adatbázis-szerepkörbe, majd rendeljen engedélyeket az adatbázis-szerepkörhöz.
Az adatbázis-szerepkörök lehetnek beépített szerepkörök, mint például a db_owner, a db_ddladmin, a db_datawriter, a db_datareader, a db_denydatawriter vagy a db_denydatareader. A db_owner általában teljes körű engedélyek biztosítására szolgál néhány felhasználó számára. A többi rögzített adatbázis-szerepkör hasznos az egyszerű adatbázisok fejlesztésének gyors elkezdéséhez, de a legtöbb éles környezetbeli adatbázishoz nem ajánlott.
A db_datareader rögzített adatbázis-szerepkör csak olvasási hozzáférést biztosít az adatbázis minden táblájához, ami általában több a feltétlenül szükségesnél.
Sokkal jobb, ha a CREATE ROLE utasítást használja saját, felhasználó által definiált adatbázis-szerepkörök létrehozására, és gondosan adja meg az egyes szerepkörök számára az üzleti igényhez szükséges legkevésbé szükséges engedélyeket. Ha a felhasználó egyszerre több szerepkörnek is tagja, akkor a rendszer összesíti az engedélyeket.
Engedélyek
Az SQL Database-ben több mint 100 engedély adható vagy tagadható meg külön-külön. Ezek közül számos engedély hierarchikusan van elrendezve. Egy sémában található UPDATE engedély például a séma minden táblájára vonatkozó UPDATE engedélyt tartalmazza. A legtöbb engedélyrendszerhez hasonlóan az engedély megtagadása felülírja a megadását.
Az engedélyek beágyazott jellege és száma miatt lehetséges, hogy alapos tervezés szükséges az adatbázis megfelelő védelmét biztosító engedélyrendszer kialakításához.
Kezdje az Engedélyek (Adatbázismotor) engedélylistával, és tekintse át az adatbázismotor engedélyeinek plakátméret-ábráját.
Megfontolandó szempontok és korlátozások
A bejelentkezések és a felhasználók SQL Database-ben való kezelésekor vegye figyelembe a következő szempontokat:
- Az utasítások végrehajtásakor csatlakoznia kell az
masterCREATE/ALTER/DROP DATABASEadatbázishoz. - A kiszolgálói rendszergazdai bejelentkezésnek megfelelő adatbázis-felhasználót nem lehet módosítani vagy elvetni.
- A szerveradminisztrátor le lesz tiltva, ha engedélyezve van a Microsoft Entra-only hitelesítés.
- A kiszolgáló-rendszergazdai bejelentkezés alapértelmezett nyelve az amerikai angol (US-English).
- Csak a rendszergazdák (Kiszolgáló rendszergazda bejelentkezés vagy Microsoft Entra-rendszergazda) és a dbmanager adatbázis-szerepkör tagjai rendelkeznek engedéllyel az
masterésCREATE DATABASEutasításokDROP DATABASEvégrehajtásához. - Az utasítások végrehajtásakor csatlakoznia kell az
masterCREATE/ALTER/DROP LOGINadatbázishoz. A bejelentkezések használata azonban nem ajánlott. Helyette használja a tartalmazott adatbázis felhasználóit. További információkért lásd A konténer adattár-felhasználók - Az Adatbázis Hordozhatósága cikket. - A felhasználói adatbázishoz történő csatlakozáshoz adja meg a kapcsolati sztringben szereplő adatbázis nevét.
- Csak a kiszolgálószintű egyszerű bejelentkezés és a loginmanager adatbázis-szerepkör
mastertagjai rendelkeznek engedéllyel aCREATE LOGIN,ALTER LOGINésDROP LOGINutasítások végrehajtására. - Ha ADO.NET alkalmazásban hajtja végre az
CREATE/ALTER/DROP LOGINésCREATE/ALTER/DROP DATABASEaz utasításokat, a paraméteres parancsok használata nem engedélyezett. További információkért lásd: Parancsok és paraméterek. - A
CREATE USERutasításFOR/FROM LOGINbeállítással történő futtatásakor ez lehet a Transact-SQL kötegben szereplő egyetlen utasítás. - A
ALTER USERutasításWITH LOGINbeállítással történő futtatásakor ez lehet a Transact-SQL kötegben szereplő egyetlen utasítás. -
CREATE/ALTER/DROP LOGINésCREATE/ALTER/DROP USERaz utasítások nem támogatottak, ha a Microsoft Entra-only hitelesítés engedélyezve van az Azure Synapse-munkaterületen. - A
CREATE/ALTER/DROPutasítás használatához a felhasználónakALTER ANY USERengedéllyel kell rendelkeznie az adatbázisban. - Amikor egy adatbázis-szerepkör tulajdonosa megpróbál hozzáadni vagy eltávolítani egy másik adatbázis-felhasználót az adatbázis-szerepkörhöz vagy onnan, a következő hiba fordulhat elő: A felhasználó vagy a szerepkör neve nem létezik ebben az adatbázisban. Ez a hiba azért fordul elő, mert a felhasználó nem látható a tulajdonos számára. A probléma megoldása érdekében adjon meg a szerepkör tulajdonosának a
VIEW DEFINITIONengedélyt a felhasználón.
Kapcsolódó tartalom
További információkért lásd A konténer adattár-felhasználók - Az Adatbázis Hordozhatósága cikket.