Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Een externe tabel is een schema-entiteit die verwijst naar gegevens die buiten de Azure Data Explorer-database zijn opgeslagen. Externe tabellen kunnen worden gedefinieerd om te verwijzen naar gegevens in Azure Storage of SQL Server en ondersteunen verschillende verificatiemethoden.
In dit artikel leert u hoe u een externe tabel maakt die wordt geverifieerd met een beheerde identiteit.
Prerequisites
- Een Azure Data Explorer-cluster en -database. Een cluster en database maken.
- Databasebeheerdersmachtigingen voor de Azure Data Explorer-database.
1 - Een beheerde identiteit configureren voor gebruik met externe tabellen
Er zijn twee typen beheerde identiteiten:
Door het systeem toegewezen: een door het systeem toegewezen identiteit is verbonden met uw cluster en wordt verwijderd wanneer het cluster wordt verwijderd. Per cluster is slechts één door het systeem toegewezen identiteit toegestaan.
Door de gebruiker toegewezen: een door de gebruiker toegewezen beheerde identiteit is een zelfstandige Azure-resource. Meerdere door de gebruiker toegewezen identiteiten kunnen worden toegewezen aan uw cluster.
Selecteer een van de volgende tabbladen om het voorkeurstype beheerde identiteit in te stellen.
Volg de stappen om een door de gebruiker toegewezen identiteit toe te voegen aan uw cluster en sla de object-id (principal) op voor later gebruik.
Voer de opdracht .alter-merge policy managed_identity uit. Met deze opdracht stelt u een beleid voor beheerde identiteit in op het cluster waarmee de beheerde identiteit kan worden gebruikt met externe tabellen. Vervang
<objectId>door de Object-id (principal)..alter-merge cluster policy managed_identity ```[ { "ObjectId": "<objectId>", "AllowedUsages": "ExternalTable" } ]```Note
Als u het beleid voor een specifieke database wilt instellen, gebruikt
database <DatabaseName>u in plaats vancluster.
2 - Verleen de beheerde identiteit machtigingen voor externe resources
De beheerde identiteit moet machtigingen hebben voor de externe resource om te kunnen verifiëren.
Selecteer het tabblad voor het relevante type externe resource en wijs de vereiste machtigingen toe.
In de volgende tabel ziet u de vereiste machtigingen per externe resource. Als u gegevens uit de externe resource wilt importeren of er query's op wilt uitvoeren, moet u de leesmachtigingen voor de beheerde identiteit verlenen. Als u gegevens wilt exporteren naar de externe resource, verleent u schrijfmachtigingen voor de beheerde identiteit.
| Externe gegevensopslag | Leesrechten | Schrijfmachtigingen | De machtigingen verlenen |
|---|---|---|---|
| Azure Blob Storage (opslagdienst van Azure) | Lezer van Storage Blob-gegevens | Inzender voor Storage Blob-gegevens | Een Azure-rol toewijzen |
| Data Lake Storage Gen2 | Lezer van Storage Blob-gegevens | Inzender voor Storage Blob-gegevens | Een Azure-rol toewijzen |
3 - Een externe tabel maken
Er zijn twee typen externe tabellen die ondersteuning bieden voor verificatie met beheerde identiteiten: Azure Storage externe tabellen en SQL Server externe tabellen.
Selecteer een van de volgende tabbladen om een externe tabel van Azure Storage of SQL Server in te stellen.
Als u een Azure Storage externe tabel wilt maken, voert u de volgende stappen uit:
Maak een verbindingsreeks op basis van de -opslagverbindingsreekssjablonen. Deze tekenreeks geeft aan tot welke resource toegang wordt verkregen en bevat de authenticatiegegevens. Geef de verificatiemethode voor beheerde identiteit op.
Voer de externe tabel .create of .alter uit om de tabel te maken. Gebruik de verbindingsreeks uit de vorige stap als het argument storageConnectionString.
Voorbeeld
Met de volgende opdracht maakt u MyExternalTable dat verwijst naar CSV-geformatteerde gegevens in mycontainer van mystorageaccount in Azure Blob Storage. De tabel heeft twee kolommen, één voor een geheel getal x en één voor een tekenreeks s. De verbindingsreeks eindigt met ;managed_identity=system, wat aangeeft dat een door het systeem toegewezen beheerde identiteit moet worden gebruikt voor verificatie om toegang te krijgen tot het gegevensarchief.
.create external table MyExternalTable (x:int, s:string) kind=storage dataformat=csv
(
h@'https://mystorageaccount.blob.core.windows.net/mycontainer;managed_identity=system'
)
Note
Als u wilt verifiëren met een door de gebruiker toegewezen beheerde identiteit, vervangt u deze door system de object-id van de beheerde identiteit.