In eerste instantie hebben gebruikers geen toegang tot gegevens in een metastore. Azure Databricks-accountbeheerders, werkruimtebeheerders en metastore-beheerders hebben standaardbevoegdheden voor het beheren van Unity Catalog. Zie Beheerdersbevoegdheden in Unity Catalog.
Alle beveiligbare objecten in Unity Catalog hebben een eigenaar. Objecteigenaren hebben alle bevoegdheden voor dat object, met inbegrip van de mogelijkheid om bevoegdheden te verlenen aan andere principals. Eigenaren kunnen andere gebruikers de MANAGE bevoegdheid voor het object verlenen, zodat gebruikers bevoegdheden voor het object kunnen beheren. Zie Eigendom van Unity Catalog-objecten beheren.
Er kunnen op een van de volgende manieren bevoegdheden worden verleend:
Een metastore-beheerder.
Een gebruiker met de MANAGE bevoegdheid voor het object.
De eigenaar van het object.
De eigenaar van de catalogus of het schema dat het object bevat.
Accountbeheerders kunnen ook rechtstreeks bevoegdheden verlenen in een metastore.
Bevoegdheden voor werkruimtecatalogus
Als uw werkruimte automatisch is ingeschakeld voor Unity Catalog, wordt de werkruimte standaard gekoppeld aan een metastore en wordt er een werkruimtecatalogus gemaakt voor uw werkruimte in de metastore. Werkruimtebeheerders zijn de standaardeigenaren van de werkruimtecatalogus. Als eigenaren kunnen ze bevoegdheden voor de werkruimtecatalogus en alle onderliggende objecten beheren.
Alle werkruimtegebruikers ontvangen de USE CATALOG bevoegdheid in de werkruimtecatalogus. Werkruimtegebruikers ontvangen ook de USE SCHEMAbevoegdheden , , CREATE TABLECREATE VOLUMEen CREATE MODELCREATE FUNCTIONCREATE MATERIALIZED VIEW bevoegdheden voor het default schema in de catalogus.
Beveiligbare objecten in Unity Catalog zijn hiërarchisch en bevoegdheden worden naar beneden overgenomen. Het object op het hoogste niveau waaruit bevoegdheden worden overgenomen, is de catalogus. Dit betekent dat het verlenen van een bevoegdheid voor een catalogus of schema automatisch de bevoegdheid verleent aan alle huidige en toekomstige objecten in de catalogus of het schema. Als u bijvoorbeeld een gebruiker de SELECT bevoegdheid geeft voor een catalogus, kan die gebruiker alle tabellen en weergaven in die catalogus selecteren (lezen). Bevoegdheden die worden verleend aan een Unity Catalog-metastore, worden niet overgenomen.
Eigenaren van een object krijgen automatisch alle bevoegdheden voor dat object. Bovendien kunnen objecteigenaren bevoegdheden verlenen voor het object zelf en op alle onderliggende objecten. Dit betekent dat eigenaren van een schema niet automatisch alle bevoegdheden voor de tabellen in het schema hebben, maar dat ze zichzelf bevoegdheden kunnen verlenen voor de tabellen in het schema.
Notitie
Als u uw Unity Catalog-metastore hebt gemaakt tijdens de openbare preview (vóór 25 augustus 2022), bevindt u zich mogelijk in een eerder privilegemodel dat het huidige overnamemodel niet ondersteunt. U kunt upgraden naar Privilege Model versie 1.0 om overname van bevoegdheden op te halen. Zie Upgraden naar overname van bevoegdheden.
Vervang deze tijdelijke aanduidingen in de VOLGENDE SQL-opdrachten:
<privilege-type> is een machtigingstype unity-catalogus. Zie Bevoegdheidstypen.
<securable-type>: Het type beveiligbaar object, zoals CATALOG of TABLE. Beveiligbare objecten weergeven
<securable-name>: De naam van het beveiligbare. Als het beveiligbare type is METASTORE, geeft u de beveiligbare naam niet op. Hierbij wordt ervan uitgegaan dat het de metastore is die is gekoppeld aan de werkruimte.
<principal> is een gebruiker, service-principal (vertegenwoordigd door de waarde applicationId) of groep. U moet gebruikers, service-principals en groepsnamen insluiten die speciale tekens bevatten in backticks (` `). Zie Principal.
Subsidies weergeven voor objecten in een Unity Catalog-metastore
Notitie
Momenteel kunnen gebruikers met de bevoegdheid MANAGE voor een object niet alle subsidies voor dat object weergeven in de INFORMATION_SCHEMA. In plaats daarvan geeft de INFORMATION_SCHEMA alleen hun eigen subsidies voor het object weer. Dit gedrag wordt in de toekomst gecorrigeerd.
Gebruikers met MANAGE bevoegdheid kunnen alle subsidies voor een object bekijken met behulp van SQL-opdrachten of Catalog Explorer. Zie Bevoegdheden beheren in Unity Catalog.
Vereiste machtigingen:
Metastore-beheerders, gebruikers met de MANAGE rechten voor het object, de eigenaar van het object, of de eigenaar van de catalogus of het schema dat het object bevat, kunnen alle machtigingen voor het object zien.
Als u niet over de bovenstaande machtigingen beschikt, kunt u alleen uw eigen subsidies voor het object bekijken.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op Catalogus.
Selecteer het object, zoals een catalogus, schema, tabel of weergave.
Ga naar het tabblad Machtigingen .
SQL
Voer de volgende SQL-opdracht uit in een notebook of SQL-queryeditor. U kunt subsidies voor een specifieke principal weergeven of u kunt alle subsidies voor een beveiligbaar object weergeven.
SQL
SHOWGRANTS [principal] ON <securable-type> <securable-name>
Met de volgende opdracht ziet u bijvoorbeeld alle subsidies voor een schema met de naam Standaard in de bovenliggende catalogus met de naam Main:
Machtigingen verlenen voor objecten in een Unity Catalog-metastore
machtigingen vereist: Metastore-beheerder, de MANAGE-bevoegdheid voor het object, de eigenaar van het object of de eigenaar van de catalogus of het schema dat het object bevat.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op Catalogus.
Selecteer het object, zoals een catalogus, schema, tabel of weergave.
Ga naar het tabblad Machtigingen .
Klik op Verlenen.
Voer het e-mailadres in voor een gebruiker of de naam van een groep.
Selecteer de machtigingen die u wilt verlenen.
Klik op OK.
SQL
Voer de volgende SQL-opdracht uit in een notebook of SQL-queryeditor.
SQL
GRANT <privilege-type> ON <securable-type> <securable-name> TO <principal>
Met de volgende opdracht verleent u bijvoorbeeld een groep met de naam finance-team toegang om tabellen te maken in een schema met de naam standaard met de bovenliggende catalogus met de naam main:
Geregistreerde modellen zijn een type functie. Als u een bevoegdheid voor een model wilt verlenen, moet u gebruiken GRANT ON FUNCTION. Als u bijvoorbeeld de groep ml-team-acme de EXECUTE bevoegdheid voor het model prod.ml_team.iris_modelwilt verlenen, gebruikt u:
Machtigingen intrekken voor objecten in een Unity Catalog-metastore
machtigingen vereist: Metastore-beheerder, de MANAGE-bevoegdheid voor het object, de eigenaar van het object of de eigenaar van de catalogus of het schema dat het object bevat.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op Catalogus.
Selecteer het object, zoals een catalogus, schema, tabel of weergave.
Ga naar het tabblad Machtigingen .
Selecteer een bevoegdheid die is verleend aan een gebruiker, service-principal of groep.
Klik op Intrekken.
Klik op Intrekken om te bevestigen.
SQL
Voer de volgende SQL-opdracht uit in een notebook of SQL-queryeditor.
SQL
REVOKE <privilege-type> ON <securable-type> <securable-name> TO <principal>
Met de volgende opdracht wordt bijvoorbeeld de toegang van een groep met de naam finance-team ingetrokken om tabellen te maken in een schema met de naam Standaard met de bovenliggende catalogus met de naam Main:
Vereiste machtigingen: Metastore-beheerder of accountbeheerder. U kunt ook uw eigen subsidies bekijken op een metastore.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op Catalogus.
Klik naast het paginalabel Catalogusverkenner op het pictogram naast de naam van de metastore.
Ga naar het tabblad Machtigingen .
SQL
Voer de volgende SQL-opdracht uit in een notebook of SQL-queryeditor. U kunt subsidies voor een specifieke principal weergeven of u kunt alle subsidies in een metastore weergeven.
SQL
SHOWGRANTS [principal] ON METASTORE
Machtigingen verlenen voor een metastore
Vereiste machtigingen: Metastore-beheerder of accountbeheerder.
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op Catalogus.
Klik naast het paginalabel Catalogusverkenner op het pictogram naast de naam van de metastore.
Klik op het tabblad Machtigingen op Verlenen.
Voer het e-mailadres in voor een gebruiker of de naam van een groep.
Selecteer de machtigingen die u wilt verlenen.
Klik op OK.
SQL
Voer de volgende SQL-opdracht uit in een notebook of SQL-queryeditor.
SQL
GRANT <privilege-type> ON METASTORE TO <principal>;
Wanneer u bevoegdheden verleent voor een metastore, neemt u de naam van de metastore niet op, omdat de metastore die aan uw werkruimte is gekoppeld, wordt aangenomen.
Machtigingen voor een metastore intrekken
Vereiste machtigingen: Metastore-beheerder of accountbeheerder..
Catalogusverkenner
Klik in uw Azure Databricks-werkruimte op Catalogus.
Klik naast het paginalabel Catalogusverkenner op het pictogram naast de naam van de metastore.
Selecteer op het tabblad Machtigingen een gebruiker of groep en klik op Intrekken.
Klik op Intrekken om te bevestigen.
SQL
Voer de volgende SQL-opdracht uit in een notebook of SQL-queryeditor.
SQL
REVOKE <privilege-type> ON METASTORE FROM <principal>;
Wanneer u bevoegdheden voor een metastore intrekt, neemt u de naam van de metastore niet op, omdat de metastore die aan uw werkruimte is gekoppeld, wordt aangenomen.
Beheer een SQL Server-databaseinfrastructuur voor cloud-, on-premises en hybride relationele databases met behulp van de relationele Microsoft PaaS-databaseaanbiedingen.
Meer informatie over de beheerbevoegdheden van de Unity Catalog-metastore, de beheerdersrol metastore en de beheerbevoegdheden van Unity Catalog die eigendom zijn van account- en werkruimtebeheerders.
Meer informatie over aanbevolen procedures voor het instellen van gegevensbeheer en gegevensisolatie in Azure Databricks met behulp van Unity Catalog en Delta Sharing.