Delen via


Bevoegdheden en beveiligbare objecten in de Hive-metastore

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

Een bevoegdheid is een recht dat aan een principal wordt verleend om te werken op een beveiligbaar object in de metastore.

Het bevoegdheidsmodel en beveiligbare objecten verschillen, afhankelijk van of u een Unity Catalog-metastore of de verouderde Hive-metastore gebruikt. In dit artikel wordt het bevoegdheidsmodel voor de verouderde Hive-metastore beschreven. Als u Unity Catalog gebruikt, raadpleegt u Bevoegdheden en beveiligbare objecten in Unity Catalog.

Beveiligbare objecten in de Hive-metastore

Een beveiligbaar object is een object dat is gedefinieerd in de metastore waarop bevoegdheden kunnen worden verleend aan een principal.

Als u bevoegdheden voor een object wilt beheren, moet u de eigenaar of beheerder zijn.

Syntaxis

  securable_object
    { ANY FILE |
      CATALOG [ catalog_name ] |
      { SCHEMA | DATABASE } schema_name |
      FUNCTION function_name |
      [ TABLE ] table_name |
      VIEW view_name
      }

Parameters

  • ANY FILE

    Hiermee bepaalt u de toegang tot het onderliggende bestandssysteem.

  • CATALOGcatalog_name

    Hiermee bepaalt u de toegang tot de volledige gegevenscatalogus.

  • { SCHEMA | DATABASE }schema_name

    Hiermee beheert u de toegang tot een schema.

  • FUNCTIONfunction_name

    Hiermee bepaalt u de toegang tot een benoemde functie.

  • [ TABLE ]table_name

    Hiermee bepaalt u de toegang tot een beheerde of externe tabel.

  • VIEWview_name

    Hiermee beheert u de toegang tot SQL-weergaven.

Overnamemodel

Beveiligbare objecten in de Hive-metastore zijn hiƫrarchisch en bevoegdheden worden naar beneden overgenomen. Dit betekent dat het verlenen of weigeren van een bevoegdheid voor de CATALOG automatisch verlenen of weigeren van de bevoegdheid voor alle schema's in de catalogus. Op dezelfde manier worden bevoegdheden die zijn verleend voor een schemaobject overgenomen door alle objecten in dat schema. Dit patroon geldt voor alle beveiligbare objecten.

Als u gebruikersbevoegdheden voor een tabel weigert, kan de gebruiker de tabel niet zien door alle tabellen in het schema weer te geven. Als u gebruikersbevoegdheden voor een schema weigert, kan de gebruiker niet zien dat het schema bestaat door alle schema's in de catalogus weer te geven.

Typen bevoegdheden

In de volgende tabel ziet u welke bevoegdheden zijn gekoppeld aan welke beveiligbare objecten.

Type bevoegdheid ANONIEME FUNCTIE ELK BESTAND CATALOGUS SCHEMA FUNCTIE TABEL WEERGAVE
CREATE Ja Ja
MODIFICEREN Ja Ja Ja Ja
READ_METADATA Ja Ja Ja Ja
SELECTEREN Ja Ja Ja Ja Ja Ja Ja
GEBRUIK Ja Ja
  • ALL PRIVILEGES

    Wordt gebruikt om alle bevoegdheden toe te kennen of in te trekken die van toepassing zijn op de beveiligbare en onderliggende objecten zonder deze expliciet op te geven. Dit wordt uitgebreid naar alle beschikbare bevoegdheden op het moment dat machtigingen worden gecontroleerd.

  • CREATE

    Objecten maken in de catalogus of het schema.

  • MODIFY

    COPY INTO, UPDATE DELETE, INSERT of MERGE INTO the table.

    Als de securable_object het hive_metastore of een schema hierin is, verleent MODIFY de toekenning MODIFY alle huidige en toekomstige tabellen en weergaven binnen het beveiligbare object.

  • READ_METADATA

    Ontdek het beveiligbare object in SHOW en onderschrijf het object in DESCRIBE

    Als het beveiligbare object de hive_metastore catalogus of een schema hierin is, wordt de toekenning READ_METADATA verleend READ_METADATA aan alle huidige en toekomstige tabellen en weergaven binnen het beveiligbare object.

  • READ FILES

    Query's uitvoeren op bestanden rechtstreeks met behulp van de opslagreferentie of externe locatie.

  • SELECT

    Een query uitvoeren op een tabel of weergave, een door de gebruiker gedefinieerde of anonieme functie aanroepen of selecteren ANY FILE. De gebruiker heeft SELECT de tabel, weergave of functie nodig, evenals USAGE het schema en de catalogus van het object.

    Als het beveiligbare object het hive_metastore of een schema hierin is, wordt de toekenning SELECT verleend SELECT aan alle huidige en toekomstige tabellen en weergaven binnen het beveiligbare object.

  • USAGE

    Vereist, maar niet voldoende om naar objecten in een catalogus of schema te verwijzen. De principal moet ook bevoegdheden hebben voor de afzonderlijke beveiligbare objecten.

  • WRITE FILES

    Rechtstreeks COPY INTO-bestanden die worden beheerd door de opslagreferentie of externe locatie.

Voorbeelden

-- Grant a privilege to the user alf@melmak.et
> GRANT SELECT ON TABLE t TO `alf@melmak.et`;

-- Revoke a privilege from the general public group.
> REVOKE USAGE ON SCHEMA some_schema FROM `alf@melmak.et`;