Azure Data Catalog-ontwikkelaarsconcepten

Belangrijk

Azure Data Catalog wordt op 15 mei 2024 buiten gebruik gesteld.

Er kunnen geen nieuwe Azure Data Catalog-accounts meer worden gemaakt.

Voor functies van de gegevenscatalogus gebruikt u de Microsoft Purview-service , die geïntegreerde gegevensbeheer biedt voor uw hele gegevensdomein.

Als u Azure Data Catalog al gebruikt, moet u een migratieplan maken voor uw organisatie om uiterlijk 15 mei 2024 over te stappen naar Microsoft Purview .

Microsoft Azure Data Catalog is een volledig beheerde cloudservice die mogelijkheden biedt voor gegevensbrondetectie en metagegevens van crowdsourcinggegevensbronnen. Ontwikkelaars kunnen de service gebruiken via de REST API's. Informatie over de concepten die in de service zijn geïmplementeerd, is belangrijk voor ontwikkelaars om succesvol te integreren met Azure Data Catalog.

Belangrijke concepten

Het conceptuele model van Azure Data Catalog is gebaseerd op vier belangrijke concepten: De catalogus, gebruikers, assets en aantekeningen.

Conceptueel model met Azure-account en Azure-abonnement bovenaan, dat naar Catalogus stroomt. Catalogus stroomt over naar gebruikers en assets en assets stromen naar aantekeningen.

Catalogus

Een catalogus is de container op het hoogste niveau voor alle metagegevens die een organisatie opslaat. Er is één catalogus toegestaan per Azure-account. Catalogi zijn gekoppeld aan een Azure-abonnement, maar er kan slechts één catalogus worden gemaakt voor een bepaald Azure-account, ook al kan een account meerdere abonnementen hebben.

Een catalogus bevat gebruikers en assets.

Gebruikers

Gebruikers zijn beveiligingsprinciplen die machtigingen hebben om acties uit te voeren (zoeken in de catalogus, items toevoegen, bewerken of verwijderen, enzovoort) in de catalogus.

Er zijn verschillende rollen die een gebruiker kan hebben. Zie de sectie Rollen en autorisatie voor meer informatie over rollen.

Afzonderlijke gebruikers en beveiligingsgroepen kunnen worden toegevoegd.

Azure Data Catalog maakt gebruik van Microsoft Entra ID voor identiteits- en toegangsbeheer. Elke catalogusgebruiker moet lid zijn van de Active Directory voor het account.

Activa

Een catalogus bevat gegevensassets. Assets zijn de eenheid van granulariteit die wordt beheerd door de catalogus.

De granulariteit van een asset verschilt per gegevensbron. Voor SQL Server of Oracle Database kan een asset een tabel of weergave zijn. Voor SQL Server Analysis Services kan een asset een meting, een dimensie of een KPI (Key Performance Indicator) zijn. Voor SQL Server Reporting Services is een asset een rapport.

Een asset is het item dat u aan een catalogus toevoegt of verwijdert. Dit is de eenheid van het resultaat dat u terugkrijgt van Search.

Een asset bestaat uit de naam, locatie en het type en aantekeningen die deze verder beschrijven.

Aantekeningen

Aantekeningen zijn items die metagegevens over assets vertegenwoordigen .

Voorbeelden van aantekeningen zijn beschrijving, tags, schema, documentatie, enzovoort. Zie de sectie Asset Object model voor een volledige lijst van de assettypen en annotatietypen.

Crowdsourcing annotaties en gebruikersperspectief (multipliciteit van mening)

Een belangrijk aspect van Azure Data Catalog is hoe het ondersteuning biedt voor de crowdsourcing van metagegevens in het systeem. In tegenstelling tot een wikibenadering, waarbij er slechts één mening is en de laatste schrijver wint, kan het Azure Data Catalog-model meerdere meningen naast elkaar in het systeem leven.

Deze benadering weerspiegelt de echte wereld van zakelijke gegevens, waarbij verschillende gebruikers verschillende perspectieven op een bepaalde asset kunnen hebben:

  • Een databasebeheerder kan informatie geven over serviceovereenkomsten of het beschikbare verwerkingsvenster voor bulk-ETL-bewerkingen
  • Een gegevenssteward kan informatie geven over de bedrijfsprocessen waarop de asset van toepassing is, of de classificaties die het bedrijf erop heeft toegepast
  • Een financiële analist kan informatie geven over hoe de gegevens worden gebruikt tijdens rapportagetaken aan het einde van de periode

Ter ondersteuning van dit voorbeeld kan elke gebruiker, de DBA, de gegevenssteward en de analist, een beschrijving toevoegen aan één tabel die is geregistreerd in de catalogus. Alle beschrijvingen worden onderhouden in het systeem en in de Azure Data Catalog-portal worden alle beschrijvingen weergegeven.

Dit patroon wordt toegepast op de meeste items in het objectmodel, dus objecttypen in de JSON-nettolading zijn vaak matrices voor eigenschappen waarvan u een singleton kunt verwachten.

Onder de hoofdmap van de asset is bijvoorbeeld een matrix met beschrijvingsobjecten. De matrixeigenschap heet beschrijvingen. Een beschrijvingsobject heeft één eigenschap: beschrijving. Het patroon is dat elke gebruiker die een beschrijving typt, een beschrijvingsobject krijgt dat is gemaakt voor de waarde die door de gebruiker is opgegeven.

De UX kan vervolgens kiezen hoe de combinatie moet worden weergegeven. Er zijn drie verschillende patronen voor weergave.

  • Het eenvoudigste patroon is 'Alles weergeven'. In dit patroon worden alle objecten weergegeven in een lijstweergave. De Azure Data Catalog-portal UX gebruikt dit patroon voor beschrijving.
  • Een ander patroon is 'Samenvoegen'. In dit patroon worden alle waarden van de verschillende gebruikers samengevoegd, waarbij dubbele waarden worden verwijderd. Voorbeelden van dit patroon in de UX van de Azure Data Catalog-portal zijn de eigenschappen van tags en experts.
  • Een derde patroon is 'last writer wins'. In dit patroon wordt alleen de meest recente waarde weergegeven die is getypt. friendlyName is een voorbeeld van dit patroon.

Assetobjectmodel

Zoals geïntroduceerd in de sectie Belangrijke concepten, bevat het Azure Data Catalog-objectmodel items, die assets of aantekeningen kunnen zijn. Items hebben eigenschappen, die optioneel of vereist kunnen zijn. Sommige eigenschappen zijn van toepassing op alle items. Sommige eigenschappen zijn van toepassing op alle assets. Sommige eigenschappen zijn alleen van toepassing op specifieke assettypen.

Systeemeigenschappen

Naam van de eigenschap Gegevenstype Opmerkingen
timestamp Datum en tijd De laatste keer dat het item is gewijzigd. Dit veld wordt gegenereerd door de server wanneer een item wordt ingevoegd en telkens wanneer een item wordt bijgewerkt. De waarde van deze eigenschap wordt genegeerd bij invoer van publicatiebewerkingen.
Id URI Absolute URL van het item (alleen-lezen). Dit is de unieke adresseerbare URI voor het item. De waarde van deze eigenschap wordt genegeerd bij invoer van publicatiebewerkingen.
type String Het type asset (alleen-lezen).
etag String Een tekenreeks die overeenkomt met de versie van het item dat kan worden gebruikt voor optimistisch gelijktijdigheidsbeheer bij het uitvoeren van bewerkingen die items in de catalogus bijwerken. *kan worden gebruikt om elke waarde te vinden.

Gemeenschappelijke eigenschappen

Deze eigenschappen zijn van toepassing op alle hoofdassettypen en alle aantekeningstypen.

Naam van de eigenschap Gegevenstype Opmerkingen
fromSourceSystem Booleaanse waarde Hiermee wordt aangegeven of de gegevens van een item zijn afgeleid van een bronsysteem (zoals SQL Server Database, Oracle Database) of zijn geschreven door een gebruiker.

Algemene hoofdeigenschappen

Deze eigenschappen zijn van toepassing op alle hoofdassettypen.

Naam van de eigenschap Gegevenstype Opmerkingen
naam String Een naam die is afgeleid van de locatiegegevens van de gegevensbron
Dsl DataSourceLocation Beschrijft de gegevensbron uniek en is een van de id's voor de asset. (Zie de sectie dubbele identiteit). De structuur van de dsl varieert per protocol en brontype.
Datasource DataSourceInfo Meer informatie over het type asset.
lastRegisteredBy SecurityPrincipal Beschrijft de gebruiker die deze asset het laatst heeft geregistreerd. Bevat zowel de unieke id voor de gebruiker (de upn) als een weergavenaam (achternaam en voornaam).
containerID String Id van de containerasset voor de gegevensbron. Deze eigenschap wordt niet ondersteund voor het containertype.

Algemene niet-singleton-aantekeningseigenschappen

Deze eigenschappen zijn van toepassing op alle niet-singleton annotatietypen (aantekeningen, die meerdere per asset mogen zijn).

Naam van de eigenschap Gegevenstype Opmerkingen
sleutel String Een door de gebruiker opgegeven sleutel, waarmee de aantekening in de huidige verzameling uniek wordt geïdentificeerd. De sleutellengte mag niet langer zijn dan 256 tekens.

Hoofdassettypen

Hoofdassettypen zijn typen die de verschillende typen gegevensassets vertegenwoordigen die in de catalogus kunnen worden geregistreerd. Voor elk hoofdtype is er een weergave die asset en aantekeningen in de weergave beschrijft. Weergavenaam moet worden gebruikt in het bijbehorende URL-segment {view_name} bij het publiceren van een asset met behulp van REST API.

Assettype (weergavenaam) Meer eigenschappen Gegevenstype Toegestane aantekeningen Opmerkingen
Tabel ("tabellen") Beschrijving Een tabel vertegenwoordigt alle tabelgegevens. Bijvoorbeeld: SQL Table, SQL View, Analysis Services Tabular Table, Analysis Services Multidimensional Dimension, Oracle Table, enzovoort.
FriendlyName
Tag
Schema
ColumnDescription
ColumnTag
Expert
Preview uitvoeren
AccessInstruction
TableDataProfile
ColumnDataProfile
ColumnDataClassification
Documentatie
Meting ('metingen') Beschrijving Dit type vertegenwoordigt een Analysis Services-meting.
FriendlyName
Tag
Expert
AccessInstruction
Documentatie
meting Kolom Metagegevens die de meting beschrijven.
is berekend Booleaanse waarde Hiermee geeft u op of de meting al dan niet wordt berekend.
measureGroup String Hiermee geeft u op of de meting al dan niet wordt berekend.
KPI 'KPI's') Beschrijving
FriendlyName
Tag
Expert
AccessInstruction
Documentatie
measureGroup String Fysieke container voor meting.
goalExpression String Een MDX-numerieke expressie of een berekening die de doelwaarde van de KPI retourneert.
valueExpression String Een MDX-numerieke expressie die de werkelijke waarde van de KPI retourneert.
statusExpression String Een MDX-expressie die de status van de KPI op een opgegeven tijdstip vertegenwoordigt.
trendExpression String Een MDX-expressie waarmee de waarde van de KPI in de loop van de tijd wordt geëvalueerd. De trend kan elk tijdcriterium zijn dat nuttig is in een specifieke bedrijfscontext.
Rapport ('rapporten') Beschrijving Dit type vertegenwoordigt een SQL Server Reporting Services-rapport.
FriendlyName
Tag
Expert
AccessInstruction
Documentatie
assetCreatedDate String
assetCreatedDate String
assetModifiedDate String
assetModifiedBy String
Rapport ('rapporten') Beschrijving Dit type vertegenwoordigt een container met andere assets, zoals een SQL-database, een Azure Blobs-container of een Analysis Services-model.
Tag
Expert
AccessInstruction
Documentatie

Aantekeningstypen

Aantekeningstypen vertegenwoordigen typen metagegevens die kunnen worden toegewezen aan andere typen in de catalogus.

Aantekeningstype (geneste weergavenaam) Meer eigenschappen Gegevenstype Opmerkingen
Beschrijving ("beschrijvingen") Deze eigenschap bevat een beschrijving voor een asset. Elke gebruiker van het systeem kan een eigen beschrijving toevoegen. Alleen die gebruiker kan het object Beschrijving bewerken. (Beheer s en eigenaren van activa kunnen het beschrijvingsobject verwijderen, maar het niet bewerken). Het systeem onderhoudt de beschrijvingen van gebruikers afzonderlijk. Er is dus een matrix met beschrijvingen voor elke asset (één voor elke gebruiker die hun kennis over de asset heeft bijgedragen, naast mogelijk één die informatie bevat die is afgeleid van de gegevensbron).
beschrijving tekenreeks Een korte beschrijving (2-3 regels) van de asset.
Tag ("tags") Deze eigenschap definieert een tag voor een asset. Elke gebruiker van het systeem kan meerdere tags voor een asset toevoegen. Alleen de gebruiker die tagobjecten heeft gemaakt, kan deze bewerken. (Beheer s en eigenaren van activa kunnen het tagobject verwijderen, maar het niet bewerken). Het systeem onderhoudt de tags van gebruikers afzonderlijk. Er is dus een matrix van Tag-objecten op elke asset.
tag tekenreeks Een tag die de asset beschrijft.
FriendlyName ('friendlyName') Deze eigenschap bevat een beschrijvende naam voor een asset. FriendlyName is een singleton-aantekening. Er kan slechts één FriendlyName worden toegevoegd aan een asset. Alleen de gebruiker die het FriendlyName-object heeft gemaakt, kan het bewerken. (Beheer s en asseteigenaren kunnen het FriendlyName-object verwijderen, maar niet bewerken). Het systeem onderhoudt de beschrijvende namen van gebruikers afzonderlijk.
Friendlyname tekenreeks Een beschrijvende naam van de asset.
FriendlyName ('friendlyName') Deze eigenschap bevat een beschrijvende naam voor een asset. FriendlyName is een singleton-aantekening. Er kan slechts één FriendlyName worden toegevoegd aan een asset. Alleen de gebruiker die het FriendlyName-object heeft gemaakt, kan het bewerken. (Beheer s en asseteigenaren kunnen het FriendlyName-object verwijderen, maar niet bewerken). Het systeem onderhoudt de beschrijvende namen van gebruikers afzonderlijk.
Friendlyname tekenreeks Een beschrijvende naam van de asset.
Schema ("schema") In het schema wordt de structuur van de gegevens beschreven. Het bevat de namen van het kenmerk (kolom, kenmerk, veld, enzovoort), typen en andere metagegevens. Deze informatie is allemaal afgeleid van de gegevensbron. Schema is een singletonaantekening. Er kan slechts één schema worden toegevoegd voor een asset.
kolommen Kolom[] Een matrix met kolomobjecten. Ze beschrijven de kolom met informatie die is afgeleid van de gegevensbron.
ColumnDescription ('columnDescriptions') Deze eigenschap bevat een beschrijving voor een kolom. Elke gebruiker van het systeem kan zijn eigen beschrijvingen toevoegen voor meerdere kolommen (maximaal één per kolom). Alleen de gebruiker die ColumnDescription-objecten heeft gemaakt, kan deze bewerken. (Beheer s en asseteigenaren kunnen het ColumnDescription-object verwijderen, maar niet bewerken). Het systeem onderhoudt de kolombeschrijvingen van deze gebruiker afzonderlijk. Er is dus een matrix van ColumnDescription-objecten op elke asset (één per kolom voor elke gebruiker die hun kennis over de kolom heeft bijgedragen, naast mogelijk een die informatie bevat die is afgeleid van de gegevensbron). De ColumnDescription is losjes gebonden aan het schema, zodat deze niet meer kan worden gesynchroniseerd. De ColumnDescription kan een kolom beschrijven die niet meer in het schema bestaat. Het is aan de schrijver om de beschrijving en het schema gesynchroniseerd te houden. De gegevensbron bevat mogelijk ook informatie over de beschrijving van kolommen en zijn andere ColumnDescription-objecten die worden gemaakt bij het uitvoeren van het hulpprogramma.
Kolomnaam String De naam van de kolom waarnaar deze beschrijving verwijst.
beschrijving String Een korte beschrijving (2-3 regels) van de kolom.
ColumnTag ('columnTags') Deze eigenschap bevat een tag voor een kolom. Elke gebruiker van het systeem kan meerdere tags toevoegen voor een bepaalde kolom en kan tags toevoegen voor meerdere kolommen. Alleen de gebruiker die ColumnTag-objecten heeft gemaakt, kan deze bewerken. (Beheer s en asseteigenaren kunnen het ColumnTag-object verwijderen, maar niet bewerken). Het systeem onderhoudt de kolomtags van deze gebruikers afzonderlijk. Er is dus een matrix van ColumnTag-objecten op elke asset. De ColumnTag is losjes gebonden aan het schema, zodat het niet meer kan worden gesynchroniseerd. De ColumnTag kan een kolom beschrijven die niet meer in het schema bestaat. Het is aan de schrijver om de kolomtag en het schema gesynchroniseerd te houden.
Kolomnaam String De naam van de kolom waarnaar deze tag verwijst.
tag String Een tag die de kolom beschrijft.
Expert ("experts") Deze eigenschap bevat een gebruiker die wordt beschouwd als een expert in de gegevensset. De meningen van de experts (beschrijvingen) bellen naar de bovenkant van de UX bij het vermelden van beschrijvingen. Elke gebruiker kan hun eigen experts opgeven. Alleen die gebruiker kan het object van de experts bewerken. (Beheer s en eigenaren van activa kunnen de Expert-objecten verwijderen, maar deze niet bewerken.)
Expert SecurityPrincipal
Preview (previews) Het voorbeeld bevat een momentopname van de bovenste 20 rijen met gegevens voor de asset. Voorbeeld is alleen zinvol voor sommige typen assets (dit is logisch voor Tabel, maar niet voor Meting).
preview object[] Matrix van objecten die een kolom vertegenwoordigen. Elk object heeft een eigenschapstoewijzing aan een kolom met een waarde voor die kolom voor de rij.
AccessInstruction ('accessInstructions')
Mimetype tekenreeks Het mime-type van de inhoud.
content tekenreeks De instructies voor het verkrijgen van toegang tot deze gegevensasset. De inhoud kan een URL, een e-mailadres of een set instructies zijn.
TableDataProfile ("tableDataProfiles")
numberOfRows int Het aantal rijen in de gegevensset.
size long De grootte in bytes van de gegevensset.
schemaModifiedTime tekenreeks De laatste keer dat het schema is gewijzigd.
dataModifiedTime tekenreeks De laatste keer dat de gegevensset is gewijzigd (gegevens zijn toegevoegd, gewijzigd of verwijderd).
ColumnsDataProfile ("columnsDataProfiles")
kolommen ColumnDataProfile[] Een matrix met kolomgegevensprofielen.
ColumnDataClassification (columnDataClassifications)
Kolomnaam String De naam van de kolom waarnaar deze classificatie verwijst.
Indeling String De classificatie van de gegevens in deze kolom.
Documentatie ('documentatie') Aan een bepaalde asset kan slechts één documentatie zijn gekoppeld.
Mimetype tekenreeks Het mime-type van de inhoud.
content tekenreeks De documentatie-inhoud.

Algemene typen

Algemene typen kunnen worden gebruikt als de typen voor eigenschappen, maar zijn geen items.

Algemeen type Eigenschappen Gegevenstype Opmerkingen
DataSourceInfo Sourcetype tekenreeks Beschrijft het type gegevensbron. Bijvoorbeeld: SQL Server, Oracle Database, enzovoort.
objectType tekenreeks Beschrijft het type object in de gegevensbron. Bijvoorbeeld: Tabel, Weergave voor SQL Server.
DataSourceLocation protocol tekenreeks Vereist. Beschrijft een protocol dat wordt gebruikt om te communiceren met de gegevensbron. Bijvoorbeeld: tds voor SQL Server, oracle voor Oracle, enzovoort raadpleegt u de referentiespecificatie van de gegevensbron - DSL-structuur voor de lijst met momenteel ondersteunde protocollen.
Adres Woordenlijsttekenreeks<, object> Vereist. Adres is een set gegevens die specifiek is voor het protocol dat wordt gebruikt om de gegevensbron te identificeren waarnaar wordt verwezen. De adresgegevens die zijn gericht op een bepaald protocol, wat betekent dat het betekenisloos is zonder het protocol te kennen.
verificatie tekenreeks Optioneel. Het verificatieschema dat wordt gebruikt om te communiceren met de gegevensbron. Bijvoorbeeld: windows, oauth, enzovoort.
connectionProperties Woordenlijsttekenreeks<, object> Optioneel. Aanvullende informatie over het maken van verbinding met een gegevensbron.
DataSourceLocation De back-end voert tijdens het publiceren geen validatie uit van de opgegeven eigenschappen op basis van De Microsoft Entra-id.
upn tekenreeks Vereist. Uniek e-mailadres van gebruiker. Moet worden opgegeven als objectId niet is opgegeven of in de context van de eigenschap lastRegisteredBy, anders optioneel.
objectId Guid Optioneel. Gebruikers- of beveiligingsgroep Microsoft Entra-identiteit. Optioneel. Moet worden opgegeven als er geen upn is opgegeven, anders optioneel.
firstName tekenreeks Voornaam van gebruiker (voor weergavedoeleinden). Optioneel. Alleen geldig in de context van de eigenschap lastRegisteredBy. Kan niet worden opgegeven bij het opgeven van beveiligingsprincipaal voor 'rollen', 'machtigingen' en 'experts'.
lastName tekenreeks Achternaam van gebruiker (voor weergavedoeleinden). Optioneel. Alleen geldig in de context van de eigenschap lastRegisteredBy. Kan niet worden opgegeven bij het opgeven van beveiligingsprincipaal voor 'rollen', 'machtigingen' en 'experts'.
Kolom naam tekenreeks Naam van de kolom of het kenmerk.
type tekenreeks Gegevenstype van de kolom of het kenmerk. De toegestane typen zijn afhankelijk van het gegevensbrontype van de asset. Alleen een subset van typen wordt ondersteund.
Maxlength int De maximale lengte die is toegestaan voor de kolom of het kenmerk. Afgeleid van gegevensbron. Alleen van toepassing op sommige brontypen.
precisie int De precisie voor de kolom of het kenmerk. Afgeleid van gegevensbron. Alleen van toepassing op sommige brontypen.
isNullable isNullable Of de kolom nu een null-waarde mag hebben of niet. Afgeleid van gegevensbron. Alleen van toepassing op sommige brontypen.
Expressie tekenreeks Als de waarde een berekende kolom is, bevat dit veld de expressie waarmee de waarde wordt weergegeven. Afgeleid van gegevensbron. Alleen van toepassing op sommige brontypen.
ColumnDataProfile Kolomnaam tekenreeks Naam van de kolom.
type tekenreeks Het type kolom.
min. tekenreeks De minimumwaarde in de gegevensset.
max tekenreeks De maximumwaarde in de gegevensset.
gemiddeld dubbel De gemiddelde waarde in de gegevensset.
Stdev dubbel De standaarddeviatie voor de gegevensset
nullCount int Het aantal null-waarden in de gegevensset.
distinctCount int Het aantal afzonderlijke waarden in de gegevensset.

Assetidentiteit

Azure Data Catalog maakt gebruik van protocol- en identiteitseigenschappen uit de eigenschap 'address' van de eigenschap DataSourceLocation 'dsl' om de identiteit van de asset te genereren, die wordt gebruikt om de asset in de catalogus aan te pakken. Het TDS-protocol (Tabular Data Stream) heeft bijvoorbeeld identiteitseigenschappen 'server', 'database', 'schema' en 'object'. De combinaties van het protocol en de identiteitseigenschappen worden gebruikt om de identiteit van de SQL Server-tabelasset te genereren. Azure Data Catalog biedt verschillende ingebouwde gegevensbronprotocollen, die worden vermeld in referentiespecificatie voor gegevensbronnen - DSL-structuur. De set ondersteunde protocollen kan programmatisch worden uitgebreid (raadpleeg de naslaginformatie over de REST API van Data Catalog). Beheer istrators van de catalogus kunnen aangepaste gegevensbronprotocollen registreren. In de volgende tabel worden de eigenschappen beschreven die nodig zijn om een aangepast protocol te registreren.

Specificatie van aangepaste gegevensbronprotocol

Er zijn drie verschillende typen specificaties voor het gegevensbronprotocol. Hieronder ziet u de typen, gevolgd door een tabel met de bijbehorende eigenschappen.

DataSourceProtocol

Eigenschappen Gegevenstype Opmerkingen
naamruimte tekenreeks De naamruimte van het protocol. Naamruimte moet tussen de 1 en 255 tekens lang zijn, een of meer niet-lege delen bevatten, gescheiden door punt (.). Elk deel moet tussen de 1 en 255 tekens lang zijn, beginnen met een letter en mogen alleen letters en cijfers bevatten.
naam tekenreeks De naam van het protocol. De naam moet tussen 1 en 255 tekens lang zijn, beginnen met een letter en mogen alleen letters, cijfers en het streepje (-) bevatten.
identityProperties DataSourceProtocolIdentityProperty[] Lijst met identiteitseigenschappen moet ten minste één, maar niet meer dan 20 eigenschappen bevatten. Bijvoorbeeld: 'server', 'database', 'schema', 'object' zijn identiteitseigenschappen van het 'tds'-protocol.
identitySets DataSourceProtocolIdentitySet[] Lijst met identiteitssets. Definieert sets met identiteitseigenschappen, die de identiteit van geldige activa vertegenwoordigen. Moet ten minste één set bevatten, maar niet meer dan 20 sets. Bijvoorbeeld: {"server", "database", "schema" en "object"} is een identiteit die is ingesteld voor het TDS-protocol, waarmee de identiteit van SQL Server Table-asset wordt gedefinieerd.

DataSourceProtocolIdentityProperty

Eigenschappen Gegevenstype Opmerkingen
naam tekenreeks De naam van de eigenschap. De naam moet tussen 1 en 100 tekens lang zijn, beginnen met een letter en mogen alleen letters en cijfers bevatten.
type tekenreeks Het type eigenschap. Ondersteunde waarden: 'bool', booleaans', 'byte', 'guid', 'int', 'integer', 'long', 'string', 'url'
ignoreCase bool Hiermee wordt aangegeven of case moet worden genegeerd bij het gebruik van de waarde van de eigenschap. Kan alleen worden opgegeven voor eigenschappen met het type 'tekenreeks'. De standaardwaarde is false.
urlPathSegmentsIgnoreCase bool[] Hiermee wordt aangegeven of case moet worden genegeerd voor elk segment van het pad van de URL. Kan alleen worden opgegeven voor eigenschappen met het type URL. De standaardwaarde is [onwaar].

DataSourceProtocolIdentitySet

Eigenschappen Gegevenstype Opmerkingen
naam tekenreeks De naam van de identiteitsset.
properties tekenreeks[] De lijst met identiteitseigenschappen die zijn opgenomen in deze identiteitsset. Het mag geen duplicaten bevatten. Elke eigenschap waarnaar wordt verwezen door een identiteitsset, moet worden gedefinieerd in de lijst met 'identityProperties' van het protocol.

Rollen en autorisatie

Microsoft Azure Data Catalog biedt autorisatiemogelijkheden voor CRUD-bewerkingen op assets en aantekeningen.

De Azure Data Catalog maakt gebruik van twee autorisatiemechanismen:

  • Autorisatie op basis van rollen
  • Autorisatie op basis van machtigingen

Rollen

Er zijn drie rollen: Beheer istrator, Eigenaar en Inzender. Elke rol heeft het bereik en de rechten, die worden samengevat in de volgende tabel.

Role Bereik Machtigingen
Beheerder Catalogus (alle assets/aantekeningen in de catalogus) Lezen, Verwijderen, ViewRoles, ChangeOwnership, ChangeVisibility, ViewPermissions
Eigenaar Elke asset (hoofditem) Lezen, Verwijderen, ViewRoles, ChangeOwnership, ChangeVisibility, ViewPermissions
Inzender Elke afzonderlijke asset en aantekening Lezen*, Bijwerken, Verwijderen, ViewRoles

Notitie

*Alle rechten worden ingetrokken als het leesrecht van het item wordt ingetrokken vanuit de inzender

Notitie

Lezen, Bijwerken, Verwijderen, ViewRoles-rechten zijn van toepassing op elk item (asset of aantekeningen) terwijl TakeOwnership, ChangeOwnership, ChangeVisibility, ViewPermissions alleen van toepassing zijn op de hoofdasset. Verwijderrecht is van toepassing op een item en subitems of één item eronder. Als u bijvoorbeeld een asset verwijdert, worden ook eventuele aantekeningen voor die asset verwijderd.

Machtigingen

Machtiging is als lijst met vermeldingen voor toegangsbeheer. Elke vermelding voor toegangsbeheer wijst een set rechten toe aan een beveiligingsprincipaal. Machtigingen kunnen alleen worden opgegeven voor een asset (dat wil gezegd, hoofditem) en van toepassing zijn op de asset en eventuele subitems.

Tijdens de preview-versie van Azure Data Catalog wordt alleen het leesrecht ondersteund in de lijst met machtigingen om scenario's in te schakelen om de zichtbaarheid van een asset te beperken.

Elke geverifieerde gebruiker heeft standaard het leesrecht voor elk item in de catalogus, tenzij zichtbaarheid is beperkt tot de set principals in de machtigingen.

REST-API

PUT - en POST-itemaanvragen kunnen worden gebruikt om rollen en machtigingen te beheren: naast de nettolading van items kunnen twee systeemeigenschappen worden opgegeven voor rollen en machtigingen.

Notitie

machtigingen die alleen van toepassing zijn op een hoofditem. De rol Eigenaar is alleen van toepassing op een hoofditem. Wanneer een item wordt gemaakt in de catalogus , wordt de inzender standaard ingesteld op de momenteel geverifieerde gebruiker. Als het item door iedereen moet worden bijgewerkt, moet Inzender worden ingesteld op <Iedereen> speciale beveiligingsprincipaal in de eigenschap Rollen wanneer het item voor het eerst wordt gepubliceerd (raadpleeg het volgende voorbeeld). Inzender kan niet worden gewijzigd en blijft hetzelfde tijdens de levensduur van een item (zelfs Beheer istrator of Eigenaar heeft niet het recht om de Inzender te wijzigen). De enige waarde die wordt ondersteund voor de expliciete instelling van de inzender is <Iedereen>: Inzender kan alleen een gebruiker zijn die een item of <Iedereen> heeft gemaakt.

Voorbeelden

Stel Inzender in op <Iedereen> bij het publiceren van een item.

Speciale beveiligingsprincipaal <Iedereen> heeft objectId '0000000-0000-0000-0000-000000000201'.

POSThttps://api.azuredatacatalog.com/catalogs/default/views/tables/?api-version=2016-03-30

Notitie

Sommige HTTP-client-implementaties kunnen aanvragen automatisch opnieuw verzenden als reactie op een 302 van de server, maar verwijderen doorgaans autorisatieheaders van de aanvraag. Omdat de autorisatieheader is vereist voor het indienen van aanvragen bij Azure Data Catalog, moet u ervoor zorgen dat de autorisatieheader nog steeds wordt opgegeven bij het opnieuw uitgeven van een aanvraag naar een omleidingslocatie die is opgegeven door Azure Data Catalog. De volgende voorbeeldcode demonstreert deze met behulp van het .NET HttpWebRequest-object.

Hoofdtekst

    {
        "roles": [
            {
                "role": "Contributor",
                "members": [
                    {
                        "objectId": "00000000-0000-0000-0000-000000000201"
                    }
                ]
            }
        ]
    }

Eigenaren toewijzen en zichtbaarheid voor een bestaand hoofditem beperken: PUThttps://api.azuredatacatalog.com/catalogs/default/views/tables/042297b0...1be45ecd462a?api-version=2016-03-30

    {
        "roles": [
            {
                "role": "Owner",
                "members": [
                    {
                        "objectId": "c4159539-846a-45af-bdfb-58efd3772b43",
                        "upn": "user1@contoso.com"
                    },
                    {
                        "objectId": "fdabd95b-7c56-47d6-a6ba-a7c5f264533f",
                        "upn": "user2@contoso.com"
                    }
                ]
            }
        ],
        "permissions": [
            {
                "principal": {
                    "objectId": "27b9a0eb-bb71-4297-9f1f-c462dab7192a",
                    "upn": "user3@contoso.com"
                },
                "rights": [
                    {
                        "right": "Read"
                    }
                ]
            },
            {
                "principal": {
                    "objectId": "4c8bc8ce-225c-4fcf-b09a-047030baab31",
                    "upn": "user4@contoso.com"
                },
                "rights": [
                    {
                        "right": "Read"
                    }
                ]
            }
        ]
    }

Notitie

In PUT is het niet vereist om een nettolading van het item op te geven in de hoofdtekst: PUT kan worden gebruikt om alleen rollen en/of machtigingen bij te werken.

Volgende stappen

Naslaginformatie over REST API voor Azure Data Catalog